示例#1
0
 def recompute(self):
     self.reset()
     coach = Coach.get_by_key_name(self.key().name())
     predictions = OFL_Prediction.all().ancestor(coach).filter(
         "points >", 0)
     for prediction in predictions:
         self.update(prediction.season, prediction.week, prediction.points)
示例#2
0
  def post(self):
    tournament_name  = self.request.get("tournament_name")
    if Tournament.get_by_key_name(tournament_name):
      # TODO error: already exists
      return

    max_enrollment   = int(self.request.get("max_enrollment"))
    assert not (max_enrollment < 4 or max_enrollment > 64)

    background       = self.request.get("background")
    seed_by          = self.request.get("seed_by")
    coach            = Coach.get_by_key_name(self.request.get("coach_key_name"))
    min_tv           = self.request.get("min_tv")
    max_tv           = self.request.get("max_tv")
    min_ma           = self.request.get("min_ma")
    max_ma           = self.request.get("max_ma")

    # compute race restrictions
    race_restriction = self.request.get("race_restriction")
    if race_restriction:
      races_allowed = self.request.get_all("races_allowed")
      races_allowed = [
          db.Key.from_path("Race", race_name) for race_name in races_allowed]
    else:
      races_allowed = []

    tournament = Tournament(
        key_name       = tournament_name,
        owner          = coach,
        background     = background,
        max_enrollment = max_enrollment,
        seed_by        = seed_by,
        races_allowed  = races_allowed)

    def format_tv(tv):
      tv = (tv / 10) * 10
      return max(0, min(3500, tv))

    if min_tv:
      tournament.min_tv = int(min_tv)
    if max_tv:
      tournament.max_tv = int(max_tv)

    if min_ma:
      tournament.min_ma = int(min_ma)
    if max_ma:
      tournament.max_ma = int(max_ma)

    trophy_pic = self.request.get("trophy_pic")
    if trophy_pic:
      pic = TournamentPicture.create_from_img(tournament_name, trophy_pic)
      pic.put()
      tournament.pic = pic

    tournament.put()
    views.Tournaments.clear()

    # I need to give a response or I get an error. Nobody on the internet seems
    # to know why.  See https://github.com/malsup/form/issues#issue/22.
    self.response.out.write("OK") 
示例#3
0
 def logo_getter(standing):
     coach = Coach.get_by_key_name(standing.get_coach_name())
     img = "<img src='%s' />" % coach.get_logo_url(
     )  # FIXME: thumb is broken
     return "<div style='background-color: %(color)s'>%(img)s</div>" % {
         'color': coach.color,
         'img': img
     }
示例#4
0
 def name_getter(standing):
   coach = Coach.get_by_key_name(standing.get_coach_name())
   return "<a class='leader_link' rel='leader_coach' href='%s'>%s</a>" % (
     coach.get_box_href(),coach.key().name())
示例#5
0
 def logo_getter(standing):
   coach = Coach.get_by_key_name(standing.get_coach_name())
   img = "<img src='%s' />" % coach.get_logo_url() # FIXME: thumb is broken
   return "<div style='background-color: %(color)s'>%(img)s</div>" % {
     'color': coach.color, 'img': img}
示例#6
0
 def name_getter(standing):
     coach = Coach.get_by_key_name(standing.get_coach_name())
     return "<a class='leader_link' rel='leader_coach' href='%s'>%s</a>" % (
         coach.get_box_href(), coach.key().name())
示例#7
0
    def post(self):
        tournament_name = self.request.get("tournament_name")
        if Tournament.get_by_key_name(tournament_name):
            # TODO error: already exists
            return

        max_enrollment = int(self.request.get("max_enrollment"))
        assert not (max_enrollment < 4 or max_enrollment > 64)

        background = self.request.get("background")
        seed_by = self.request.get("seed_by")
        coach = Coach.get_by_key_name(self.request.get("coach_key_name"))
        min_tv = self.request.get("min_tv")
        max_tv = self.request.get("max_tv")
        min_ma = self.request.get("min_ma")
        max_ma = self.request.get("max_ma")

        # compute race restrictions
        race_restriction = self.request.get("race_restriction")
        if race_restriction:
            races_allowed = self.request.get_all("races_allowed")
            races_allowed = [
                db.Key.from_path("Race", race_name)
                for race_name in races_allowed
            ]
        else:
            races_allowed = []

        tournament = Tournament(key_name=tournament_name,
                                owner=coach,
                                background=background,
                                max_enrollment=max_enrollment,
                                seed_by=seed_by,
                                races_allowed=races_allowed)

        def format_tv(tv):
            tv = (tv / 10) * 10
            return max(0, min(3500, tv))

        if min_tv:
            tournament.min_tv = int(min_tv)
        if max_tv:
            tournament.max_tv = int(max_tv)

        if min_ma:
            tournament.min_ma = int(min_ma)
        if max_ma:
            tournament.max_ma = int(max_ma)

        trophy_pic = self.request.get("trophy_pic")
        if trophy_pic:
            pic = TournamentPicture.create_from_img(tournament_name,
                                                    trophy_pic)
            pic.put()
            tournament.pic = pic

        tournament.put()
        views.Tournaments.clear()

        # I need to give a response or I get an error. Nobody on the internet seems
        # to know why.  See https://github.com/malsup/form/issues#issue/22.
        self.response.out.write("OK")