def setup(env): request = env['request'] db = request.db env['db'] = db settings = env['registry'].settings url = settings['vignewton.nfl.schedule.url'] env['url'] = url odds_url = settings['vignewton.nfl.odds.url'] from vignewton.managers.nflgames import NFLTeamManager tm = NFLTeamManager(db) env['tm'] = tm from vignewton.managers.odds import NFLOddsManager om = NFLOddsManager(db) env['om'] = om om.oddscache.set_url(odds_url) if not om.get_current_odds(): filename = 'testdata/o.pickle' if not os.path.isfile(filename): om.update_current_odds() else: om.populate_from_pickle(filename) from vignewton.managers.nflgames import NFLGameManager gm = NFLGameManager(db) env['gm'] = gm gm.set_schedule_url(url) update_game_schedule = False if update_game_schedule: update_games(gm) env['ug'] = update_games from vignewton.managers.accounting import AccountingManager am = AccountingManager(db) am.initialize_bets_manager() env['am'] = am #env['games'] = om.oddscache.get_latest()[0].content #env['bg'] = env['games'][-3] from vignewton.managers.util import determine_max_bet env['dmb'] = determine_max_bet env['game'] = gm.query().get(125) backup_cache(gm, om) from vignewton.managers.bets import BetsManager bm = BetsManager(db) env['bm'] = bm from vignewton.managers.util import chop_ical_nflgame_desc env['cind'] = chop_ical_nflgame_desc env['g'] = gm.get(131)
class NFLGameViewer(BaseViewer): def __init__(self, request): super(NFLGameViewer, self).__init__(request) self.layout.main_menu = make_main_menu(self.request).render() self.layout.ctx_menu = make_ctx_menu(self.request).output() self.teams = NFLTeamManager(self.request.db) self.games = NFLGameManager(self.request.db) self.context = self.request.matchdict['context'] # make dispatch table self._cntxt_meth = dict( main=self.main_view, viewgame=self.view_game, ) if self.context in self._cntxt_meth: self._cntxt_meth[self.context]() else: msg = 'Undefined Context: %s' % self.context self.layout.content = '<b>%s</b>' % msg def main_view(self): self.layout.subheader = 'NFL Teams' teams = self.teams.all() template = 'vignewton:templates/main-nfl-teams-view.mako' env = dict(teams=teams) content = self.render(template, env) self.layout.content = content def view_game(self): id = self.request.matchdict['id'] game = self.games.get(id) self.layout.content = '<pre>%s</pre>' % game.description #now = datetime.now() #template = 'vignewton:templates/view-nfl-team.mako' #env = dict(team=team, games=games, now=now) #content = self.render(template, env) #self.layout.content = content x = id