def _q_lookup(self, request, part): from vilya.models.team_group import TeamGroup team = self.team group = TeamGroup.get(team_id=team.id, name=part) if not group: raise TraversalError return TeamGroupUI(group)
def _q_index(self, request): from vilya.models.team_group import TeamGroup context = {} team = self.team context["request"] = request context["team"] = team context["user"] = request.user if request.method == "POST": user = request.user name = request.get_form_var('group[name]') desc = request.get_form_var('group[description]', '') perm = request.get_form_var('group[permission]', 'pull') g = team.create_group(name=name, creator_id=user.name, description=desc, permission=TeamGroup.translate_perm(perm)) return request.redirect(self.team.url + 'groups/%s' % g.name) groups = TeamGroup.gets_by(team_id=team.id) context["groups"] = groups return st('/teams/groups.html', **context)
def destroy(self, request): project = self.project group_name = request.get_form_var('group', '') if not group_name: return request.redirect("%ssettings/" % project.url) team, _, group = group_name.rpartition('/') t = Team.get_by_uid(team) if not t: return request.redirect("%ssettings/" % project.url) g = TeamGroup.get(team_id=t.id, name=group) if not g: return request.redirect("%ssettings/" % project.url) g.remove_project(project_id=project.id) return request.redirect("%ssettings/" % project.url)
def groups(self): from vilya.models.team_group import TeamGroup return TeamGroup.gets(team_id=self.id)
def create_group(self, **kw): from vilya.models.team_group import TeamGroup kw['team_id'] = self.id t = TeamGroup.create(**kw) return t
def _q_lookup(self, request, part): team = self.team group = TeamGroup.get(team_id=team.id, name=part) if not group: raise api_errors.NotFoundError return GroupUI(group)