def get_git_path_info(path): path_split = path.split("/") git_name = path_split[1] # raw path: project_id.git if git_name.endswith('.git'): project = Project.get_by_name(git_name[:-4]) if project: path_split[1] = "%s.git" % project.id return '/'.join(path_split) else: owner_name, git_name = path_split[1:3] # user project: user/project.git user = User.get_by_name(owner_name) if user: project = Project.get_by_name_and_owner(git_name[:-4], user.id) if project: path_split[1] = "" path_split[2] = "%s.git" % project.id return '/'.join(path_split[1:]) return # org project: org/project.git org = Organization.get_by_name(owner_name) if org: project = Project.get_by_name_and_owner(git_name[:-4], user.id) if project: path_split[1] = "" path_split[2] = "%s.git" % project.id return '/'.join(path_split[1:])
def _q_index(request): tdt = dict() session = request.session current_user = User.get_by(session.user) if session else None if current_user and request.method == "POST": name = request.get_form_var('name') description = request.get_form_var('description') p = Project.add(name=name, description=description, owner_id=current_user.id, creator_id=current_user.id) if p: return request.redirect('projects/%s' % p.name) tdt['project'] = p return st('projects/index.html', **tdt) projects = Project.gets_by() tdt['projects'] = projects tdt['current_user'] = User.get_by(id=session.user) if session else None return st('projects/index.html', **tdt)
def _q_lookup(request, part): p = Project.get_by_name(part) if p: return ProjectUI(p) raise TraversalError
def _q_lookup(self, request, part): project = Project.get_by_name(part) if project: return ProjectUI(project) raise TraversalError
def _q_lookup(self, request, name): project = Project.get_by_name(name) if project: return ProjectUI(project) raise errors.NotFoundError('project %s', name)
def get(self, request): projects = Project.gets_by() projects = [p.as_dict() for p in projects] for p in projects: p["links"] = dict(commits="commits") return dict(projects=projects)
def get(self, request): projects = Project.gets_by() projects = [p.as_dict() for p in projects] for p in projects: p['links'] = dict(commits='commits') return dict(projects=projects)
def projects(self): from code.models.project import Project return Project.gets_by(owner_id=self.id)