コード例 #1
0
ファイル: page.py プロジェクト: pcardune/birdtoword
 def update(self):
     super(FrontPage, self).update()
     self.model['loginUrl'] = users.create_login_url('/')
     player = api.getPlayer(self.request)
     self.model['player'] = player
     games = reversed(list(db.GqlQuery("SELECT * FROM GameRecord WHERE player = :1", player)))
     self.model['games'] = games
コード例 #2
0
ファイル: page.py プロジェクト: pcardune/birdtoword
    def __updateNavigation(self):
        loggedIn = api.getPlayer(self.request)
        count = 0
        for nav in self.model['nav']['items']:
            nav['class'] = 'active' if self.request.path == nav['url'] else ''
            nav['available'] = available = (not nav.get('login') or (nav['login'] and loggedIn))
            if available:
                count += 1

        self.model['nav']['config']['spaces'] = 11-count
コード例 #3
0
ファイル: page.py プロジェクト: pcardune/birdtoword
    def update(self):
        super(HistoryPage, self).update()

        wordDict = {}
        games = db.GqlQuery("SELECT * FROM GameRecord WHERE player = :1", api.getPlayer(self.request))
        totalGames = 0
        for game in games:
            totalGames += 1
            for word in game.words:
                wordDict.setdefault(word, 0)
                wordDict[word] += 1
        minCount = min(wordDict.values())
        maxCount = max(wordDict.values())
        spread = maxCount-minCount
        self.model['words'] = [dict(word=word, count=count, size=(1+count-minCount)/spread*100.)
                               for word, count in sorted(wordDict.items())]
        self.model['totalWords'] = len(wordDict)
        self.model['totalGames'] = totalGames
コード例 #4
0
ファイル: fb.py プロジェクト: pcardune/birdtoword
    def update(self):
        super(FacebookPage, self).update()

        self.fb = Facebook(API_KEY, SECRET_KEY, auth_token=self.request.get("auth_token"))
        if self.fb.auth_token:
            self.fb.auth.getSession()
        else:
            if self.request.get('fb_sig_in_profile_tab') == '1':
                logging.info("this is a profile page")
                self.fb.session_key = self.request.get('fb_sig_profile_session_key')
                self.fb.uid = self.request.get('fb_sig_profile_user')
            else:
                logging.info("this is an application page")
                self.fb.session_key = self.request.get('fb_sig_session_key')
                self.fb.uid = self.request.get('fb_sig_user')
        self.model['fb'] = self.fb
        self.player = api.getPlayer(self.request, self.fb)
        self.model['player'] = self.player
コード例 #5
0
ファイル: page.py プロジェクト: pcardune/birdtoword
 def update(self):
     self.model = {
         'nav':{
             'items':copy.deepcopy(NAV_CONFIG),
             'config':{}
             },
         'request':self.request
         }
     if api.getPlayer(self.request):
         self.model['nav']['items'].append(
             {'url':users.create_logout_url('/'),
              'title':'Logout',
              'id':'logout'})
     else:
         self.model['nav']['items'].append(
             {'url':users.create_login_url('/'),
              'title':'Login',
              'id':'login'})
     self.__updateNavigation()