示例#1
0
    def get(self, *args):
        if self.request.host == "instagrampc.appspot.com" or self.request.host == "www.instagram.jp":
            return self.redirect("http://www.i4pc.jp/", permanent=True)

        session = get_current_session()
        instagram = Instagram()
        max_id = self.request.get("max_id")
        prev_max_id = max_id

        first_page = True
        if max_id:
            first_page = False

        if session.has_key("access_token"):
            instagram.set_access_token(access_token=session["access_token"])
            login = True
            user = session["user"]
        else:
            login = False
            user = None

        if self.request.path == "/popular" or login == False:
            path = base.set_template("popular")

            try:
                feed = instagram.media_popular(count=50, max_id=max_id)
            except InstagramAPIError, e:
                return base.error(self, 500, e.error_message.capitalize())
            except:
示例#2
0
 def get(self, owner_id):
     instagram = Instagram()
     session = get_current_session()
     instagram.set_access_token(
         access_token = session['access_token']
         )
     res = instagram.unfollow_user(owner_id=owner_id, my_id=session['user']['id'])
     self.response.out.write(simplejson.dumps(res[0]))
示例#3
0
    def get(self, user_id, feed=None):
        instagram = Instagram()
        session = get_current_session()
        instagram.set_access_token(
            access_token = session['access_token']
            )

        user = session['user']
        relationship = instagram.relationship(owner_id=user_id, my_id=user['id'])
        self.response.out.write(simplejson.dumps(relationship))
示例#4
0
    def get(self, tag):
        session     = get_current_session()
        instagram   = Instagram()
        max_id      = self.request.get('max_id')
        prev_max_id = max_id

        first_page = True
        if max_id:
            first_page = False
            
        if session.has_key('access_token'):
            instagram.set_access_token(
                    access_token = session['access_token']
                    )
            login = True
            user  = session['user']
        else:
            login = False
            user  = None

        path             = base.set_template('tag')
        feed, pagination = instagram.tag_recent_media(tag_name=tag, count=25, max_id=max_id)

        if user:
            for media in feed:
                if memcache.get('user_has_liked_%s_%s' % ( user['id'], media.id ) ):
                    media.user_has_liked = True
                    media.like_count = media.like_count + 1

        title   = tag
        body_id = 'popular'

        max_id = None
        if pagination.has_key('next_max_id'):
            max_id = pagination['next_max_id']
                
        self.response.out.write(template.render(path, {
            'feed'       : feed,
            'user'       : user,
            'login'      : login,
            'max_id'     : max_id,
            'title'      : title,
            'body_id'    : feed,
            'path'       : self.request.path,
            'prev_max_id': prev_max_id,
            'first_page' : first_page,
            }))
示例#5
0
    def get(self, user_id, feed=None):
        if self.request.host == "instagrampc.appspot.com" or self.request.host == "www.instagram.jp":
            return self.redirect("http://www.i4pc.jp" + self.request.path, permanent=True)

        instagram = Instagram()
        session = get_current_session()

        if not session.has_key("access_token"):
            session["redirect_to"] = self.request.path
            return self.redirect("/login")
        else:
            access_token = session["access_token"]
            user = session["user"]
            login = True

        instagram.set_access_token(access_token=access_token)

        try:
            user_searched = instagram.user_find_by_username(user_id)
        except InstagramAPIError, e:
            return base.error(self, 500, e.error_message.capitalize())
示例#6
0
    def get(self, media_id):
        if self.request.host == 'instagrampc.appspot.com' or self.request.host == 'www.instagram.jp':
            return self.redirect('http://www.i4pc.jp' + self.request.path, permanent=True )

        instagram = Instagram()
        session = get_current_session()

        if session.has_key('access_token'):
            instagram.set_access_token(
                    access_token = session['access_token']
                    )
            login = True
            user  = session['user']
        else:
            login = False
            user  = None

        try:
            media = instagram.media(media_id)
        except InstagramAPIError, e:
            return base.error(self, 500, e.error_message.capitalize())
示例#7
0
    def get(self):
        instagram = Instagram()
        access_token = instagram.api.exchange_code_for_access_token(
            self.request.get('code')
            )

        instagram.set_access_token(access_token)
        user = instagram.api.user()

        enabled_users = [
            'mizzy', 'nakajijapan', 'demiflare168', 'chcltn', 'usagi_mogmog',
            'glover', 'xx21013271xx', 'micoshiva', 'fujimuu', 'gionby',
            'daiskip', 'higuchama', 'umazura', 'mamarico', 'norizoo',
            'crosside', 'pplog', 'yano3', 'hamaman', 'daigo', 'okuzuran',
            'harunaharuko', 'tnmt', 'nicokuki', 'maruyanma', 'ashlaman',
            'kawashimajunko', 'pinko', 'isodine', 'diyafi', 'kulop', 'atani',
            'sorahoderi', 'chigie', 'milco', 'toykyojapan', 'nakedrocks',
            'uxul', 'miyafuyo', 'taketin', 'ayairo', 'papilio17',
            'mohariyoshi', 'sen', 'mountain_sgmt', 'sugar_sgmt', 'teroma2',
            'bajitette', 'glitter', '8823', 'sandalcc', 'sippo', 'rl_rl_rl',
            'altmk', 'mohemohemo', 'simple_life', 'ayap', 'meganejunkie',
            'koysd', 'ataka', 'tichise', 'kai_style02', 'tamizo', 'sarajevo',
            'tokyolandscape', 'waji', 'tdnht', 'iwayan22', 'bird79',
            'plusneko', 'kengochi', 'kentarow', 'extrahot', 'getsukikyu',
            'hatch081', 'etocom', 'hamadahideaki', 'kotoributa', 'puti_towa',
            'szknm', 'taaaaan', 'almireanu', 'ellery', 'dcpndsgn', 'yucaringo',
            'Yu_mateto', 'photographgt', 'hatomie',
            ]

        session = get_current_session()
        session['access_token'] = access_token
        session['user']         = user

        if session.has_key('redirect_to'):
            self.redirect(session['redirect_to'])
            del(session['redirect_to'])
            return
        else:
            return self.redirect('/')
示例#8
0
    def get(self):
        session   = get_current_session()
        instagram = Instagram()

        if session.has_key('access_token'):
            instagram.set_access_token(
                    access_token = session['access_token']
                    )
            feed, pagination = instagram.user_media_feed(
                count   = 200,
                user_id = session['user']['id'],
                max_id  = None,
                )
            title = 'Feed - I4PC'
        else:
            feed = instagram.media_popular(count=200, max_id=None)
            title = 'Popular - I4PC'
            
        path = base.set_template('feed')
        self.response.out.write(template.render(path, {
            'feed' : feed,
            'title': title,
            }))
示例#9
0
    def get(self, username):
        instagram = Instagram()
        session = get_current_session()

        if not session.has_key("access_token"):
            session["redirect_to"] = self.request.path
            return self.redirect("/login")
        else:
            access_token = session["access_token"]
            user = session["user"]

        instagram.set_access_token(access_token=session["access_token"])
        cursor = self.request.get("cursor")

        user = instagram.user_find_by_username(username)
        follows, pagination = instagram.user_followed_by(user_id=user["id"], count=20, cursor=cursor)

        next_cursor = None
        if pagination.has_key("next_cursor"):
            next_cursor = pagination["next_cursor"]

        path = base.set_template("follows")
        self.response.out.write(
            template.render(
                path,
                {
                    "follows": follows,
                    "next_cursor": next_cursor,
                    "user": session["user"],
                    "owner": user,
                    "login": True,
                    "path": self.request.path,
                    "following": False,
                },
            )
        )
示例#10
0
 def get(self):
     instagram = Instagram()
     uri = instagram.get_authorize_login_url(
         scope = ['likes', 'comments', 'relationships']
         )
     return self.redirect(uri)