Пример #1
0
 def get(self):
   check_admin(self)
   games=Game.all().run()
   for g in games:
     g.delete()
   days=[26,27,28,28,29,30]
   for i in range(1,6):
     g=Game(round=i,date=date(2012,12,days[i]))
     g.put()
   us=Utilities.all().run()
   for u in us:
     u.delete()
   u=Utilities()
   u.current_round=1
   u.next_game=Game.all().filter('round =',1).get()
   u.put()
   teams=Team.all().run()
   for t in teams:
     t.delete()
   games=PlayerGame.all().run()
   for g in games:
     g.delete()
   self.response.out.write('done')
   player=Player(first_name="any",surname="player",active=False)
   player.put()
Пример #2
0
def get_team(user_meta=None,game=None):
  if not user_meta:
    user_meta=get_meta()
  if not game:
    game=next_game()
  if not game:
    game=Game.all().filter('round =',current_round()-1)
  return Team.all().filter('user ='******'game =',game).get()
Пример #3
0
 def get(self):
   user=get_meta()
   if not user:
     self.redirect("/")
   team=Team.all().filter("user ="******"/team/edit")
   players=Player.all().filter("active =",True).fetch(100)
   template_values={'user_meta':user,'players':players,'budget':user.budget}
   template=jinja_environment.get_template('templates/select_team.html')
   self.response.out.write(template.render(template_values))
Пример #4
0
  def post(self):
    if self.request.get('code')!='RESET':
      return self.response.out.write("Reset failed. No harm done")
    check_admin(self)
    players=Player.all().run()
    for p in players:
      p.batting_price=p.initial_batting_price
      p.bowling_price=p.initial_bowling_price
      p.fielding_price=p.initial_fielding_price
      p.put()
		
    usermetas=UserMeta.all().run()
    for u in usermetas:
      u.total_trades=10
      u.round_trades=2
      u.total_points=0
      u.put()
    
    teams=Team.all().run()
    for t in teams:
      if t.game.round > 1:
        t.delete()
      else:
        t.batting_score=0
        t.bowling_score=0
        t.fielding_score=0
        t.total_score=0
        t.put()
        
    playergames=PlayerGame.all().run()
    for p in playergames:
      p.delete()
      
    games=Game.all().run()
    for g in games:
      g.played=False
      g.result='tie'
      g.score="0/0"
      g.opposition_score="0/0"
      g.batExtras=0
      g.bowlExtras=0
      g.put()
      
    u=Utilities.all().get()
    u.current_round=1
    u.next_game=Game.all().filter('round =',1).get()
    u.lockout=False
    u.put()
    
    memcache.flush_all()
    self.response.out.write('System reset. I hope you meant to do that!');
Пример #5
0
 def get(self):
   check_admin(self)
   us=UserMeta.all().run()
   for u in us:
     budget=209000
     team=Team.all().filter('user =',u).get()
     if team:
       for k in team.batsmen:
         p=db.get(k)
         budget -= p.batting_price
       for k in team.bowlers:
         p=db.get(k)
         budget -= p.bowling_price
       for k in team.fielders:
         p=db.get(k)
         budget -= p.fielding_price
       u.budget = budget
       save_user(u)
Пример #6
0
 def post(self):
   user_meta=get_meta()
   if not user_meta:
     self.redirect("/")
   team=Team.all().filter('user ='******'batting')
   selected_bowlers=self.request.get_all('bowling')
   selected_fieldsmen=self.request.get_all('fielding')
   
   if len(selected_batsmen) > 5 or len(selected_bowlers) > 3 or len(selected_fieldsmen) > 3:
     self.response.out.write("Error: too many selected")
     return
   
   if not self.request.get('captain'):
     self.response.out.write("Error: no captain selected")
     return
     
   captain=self.request.get('captain').split(':',1)
   if captain[0] not in ['bat','bowl','field']:
     self.response.out.write("Error: invalid captain selection")
     return
   if captain[0] == 'bat' and captain[1] not in selected_batsmen:
     self.response.out.write("Error: captain must be a member of team")
     return
   if captain[0] == 'bowl' and captain[1] not in selected_bowlers:
     self.response.out.write("Error: captain must be a member of team")
     return
   if captain[0] == 'field' and captain[1] not in selected_fieldsmen:
     self.response.out.write("Error: captain must be a member of team")
     return
   team.captain_type=db.Category(captain[0])
   team.captain=db.get(captain[1])
   
   for key in selected_batsmen:
     player=db.get(key)
     budget-=player.batting_price
     team.batsmen.append(player.key())
   
   for key in selected_bowlers:
     player=db.get(key)
     budget-=player.bowling_price
     team.bowlers.append(player.key())
     
   for key in selected_fieldsmen:
     player=db.get(key)
     budget-=player.fielding_price
     team.fielders.append(player.key())
     
   if budget < 0:
     self.response.out.write("You went over budget")
     return
     
   #if team.game.round > 1:
   #  team1=Team(user=team.user,game=Game.all().filter('round =',1).get(),batsmen=team.batsmen,bowlers=team.bowlers,fielders=team.fielders,captain=team.captain,captain_type=team.captain_type)
   #  team1.put()
     
   team.put()
   user_meta.budget = budget
   save_user(user_meta)
   
   self.redirect('/team')