diff options
Diffstat (limited to 'pysite')
| -rw-r--r-- | pysite/views/main/jams/index.py | 11 | ||||
| -rw-r--r-- | pysite/views/main/jams/team_edit_repo.py | 8 | 
2 files changed, 15 insertions, 4 deletions
| diff --git a/pysite/views/main/jams/index.py b/pysite/views/main/jams/index.py index 8d34fa50..abe2859f 100644 --- a/pysite/views/main/jams/index.py +++ b/pysite/views/main/jams/index.py @@ -9,10 +9,21 @@ class JamsIndexView(RouteView, DBMixin):      name = "jams.index"      table_name = "code_jams" +    teams_table = "code_jam_teams" +      def get(self):          query = (              self.db.query(self.table_name)              .filter(rethinkdb.row["state"] != "planning") +            .merge( +                lambda jam_obj: { +                    "teams": +                        self.db.query(self.teams_table) +                            .filter(lambda team_row: jam_obj["teams"].contains(team_row["id"])) +                            .pluck(["id"]) +                            .coerce_to("array") +                } +            )              .order_by(rethinkdb.desc("number"))              .limit(5)          ) diff --git a/pysite/views/main/jams/team_edit_repo.py b/pysite/views/main/jams/team_edit_repo.py index a69b9c9d..8830f799 100644 --- a/pysite/views/main/jams/team_edit_repo.py +++ b/pysite/views/main/jams/team_edit_repo.py @@ -86,6 +86,10 @@ class JamsTeamEditRepo(RouteView, DBMixin, OAuthMixin):          if query_response.status_code != 200:              raise BadRequest() +        if "repo" not in team["jam"]: +            return True +        jam_repo = team["jam"]["repo"] +          project_data = query_response.json()          if "forked_from_project" not in project_data:              raise BadRequest() @@ -93,10 +97,6 @@ class JamsTeamEditRepo(RouteView, DBMixin, OAuthMixin):          # check if it's a fork for the right repo          forked_from_project = project_data["forked_from_project"] -        jam_repo = team["jam"]["repo"] -        if not jam_repo or jam_repo == "": -            return True -          jam_repo_path = quote(parse_url(jam_repo).path.strip("/"), safe='')          jam_repo_response = self.request_project(jam_repo_path) | 
