Exemple #1
0
 def get(self):
     week = weeks.current()
     current_games = games.games_for_week(week)
     view.render(self, 'games', {
         'week': week,
         'games': sorted(current_games, key=lambda x: x.date),
     }, css=True, js=True)
Exemple #2
0
 def get(self):
     sections = dict((c, []) for c in string.uppercase)
     new_users = []
     entries_by_player = defaultdict(list)
     for e in entries.get_all_entries():
         entries_by_player[e.user_id].append(e)
     for user in users.users_by_id().itervalues():
         token = users.make_login_token(user)
         if not user.name:
             new_users.append((user, entries_by_player.get(user.key().id(), []), 0, token))
         else:
             new_entries = 0 
             user_entries = []
             for e in entries_by_player.get(user.key().id(), []):
                 if e.activated:
                     user_entries.append(e)
                 else:
                     new_entries += 1
             sections[user.name[0].upper()].append((user, sorted(user_entries, key=lambda e: e.name), new_entries, token))
     for section in sections.values():
         section.sort(key=lambda x: x[0].name)
     new_users.sort(key=lambda x: x[0].created)
     view.render(self, 'users', {
         'users': sorted(sections.items()),
         'new_users': sorted(new_users, key=lambda x: x[0].email),
     }, css=True, js=True)
    def get(self):
        if self.user.name:
            logging.warning("User %s already activated, redirecting to picks", self.user.name)
            self.redirect("/picks")
            return

        logging.info("Activation requested for email %s", self.user.email)
        user_entries = entries.entries_for_user(self.user).values()
        user_entries.sort(key=lambda e: e.name)
        args = {"entries": user_entries}
        logging.info("setup args: %s", args)
        view.render(self, "setup", args, css=True, js=True)
 def get(self):
     new_entries = []
     old_entries = 0
     for e in entries.entries_for_user(self.user).values():
         if not e.activated:
             new_entries.append(e)
         else:
             old_entries += 1
     if not new_entries:
         self.redirect("/picks")
         return
     args = {"new_entries": sorted(new_entries, key=lambda e: e.name), "old_entries": old_entries}
     view.render(self, "setup", args, css=True, js=True)
Exemple #5
0
 def get(self):
     week = weeks.current()
     user_entries = entries.entries_for_user(self.user)
     user_picks = entries.picks_for_user(self.user, week)
     picks = []
     for pick in user_picks.itervalues():
         entry = user_entries[pick.entry_id]
         if entry.activated:
             picks.append((entry.name, entry.key().id(), pick))
          
     args = {
         'week': week,
         'picks': sorted(picks),
         'current_time': time.mktime(weeks.current_time().timetuple()),
         'deadline': weeks.deadline(week),
         'deadline_passed': not weeks.check_deadline(week),
     }
     logging.debug(args)
     
     view.render(self, 'picks', args, css=True, js=True)
Exemple #6
0
 def get(self):
     week = weeks.current() - 1
     if not weeks.check_deadline(weeks.current()):
         # after the deadline users can see the stats breakdown
         week += 1
     view.render(self, 'breakdown', {'week': week}, js=True, css=True)
Exemple #7
0
 def get(self):
     view.render(self, 'home', {}, css=True)
Exemple #8
0
 def get(self):
     view.render(self, 'rules', {})
Exemple #9
0
 def get(self):
     view.render(self, 'admin', {})
 def get(self):
     edit = "change" if self.user.password else True
     view.render(self, "setup", {"edit_password": edit}, css=True, js=True)
 def get(self):
     view.render(self, "setup", {"edit_email": True}, css=True, js=True)
 def get(self):
     view.render(self, "results", {}, js=True, css=True)
 def get(self):
     view.render(self, "results", {"static_results": "/js/2011-results.js"}, js=True, css=True)