Exemplo n.º 1
0
def _q_index(request):
    context = {}
    current_user = request.user
    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('%s' % p.repo_name)
        has_proj = Project.get_by_name_and_owner(name, current_user.id)
        default_error = 'Create Failure. Please contact the administrator!'
        if has_proj is not None:
            context['error'] = 'Project has exists, Please confirm!'
        else:
            context['error'] = default_error
        context['current_user'] = current_user
        return st('/errors/common.html', **context)

    projects = Project.gets_by()
    context['projects'] = projects
    context['current_user'] = current_user
    return st('projects/index.html', **context)
Exemplo n.º 2
0
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:])
Exemplo n.º 3
0
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:])
Exemplo n.º 4
0
def _q_index(request):
    context = {}
    current_user = request.user
    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)
        context['project'] = p
        return st('projects/index.html', **context)
    projects = Project.gets_by()
    context['projects'] = projects
    context['current_user'] = current_user
    return st('projects/index.html', **context)
Exemplo n.º 5
0
def _q_index(request):
    context = {}
    current_user = request.user
    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('%s' % p.repo_name)
        context['project'] = p
        return st('projects/index.html', **context)
    projects = Project.gets_by()
    context['projects'] = projects
    context['current_user'] = current_user
    return st('projects/index.html', **context)
Exemplo n.º 6
0
 def test_add(self):
     proj_name = "test_project"
     proj = Project.add(name=proj_name, owner_id=1, creator_id=1)
     assert proj.name == proj_name
Exemplo n.º 7
0
def _q_lookup(request, part):
    p = Project.get_by_name(part)
    if p:
        return ProjectUI(p)
    raise TraversalError
Exemplo n.º 8
0
 def _q_lookup(self, request, part):
     project = Project.get_by_name(part)
     if project:
         return ProjectUI(project)
     raise TraversalError
Exemplo n.º 9
0
    def projects(self):
        from vilya.models.project import Project

        return Project.gets_by(owner_id=self.id)
Exemplo n.º 10
0
 def _q_lookup(self, request, name):
     project = Project.get_by_name(name)
     if project:
         return ProjectUI(project)
     raise errors.NotFoundError("project %s", name)
Exemplo n.º 11
0
 def test_add(self):
 	proj_name = "test_project"
 	proj = Project.add(name=proj_name, owner_id=1, creator_id=1)
 	assert proj.name == proj_name
Exemplo n.º 12
0
 def _q_lookup(self, request, name):
     project = Project.get_by_name(name)
     if project:
         return ProjectUI(project)
     raise errors.NotFoundError('project %s', name)
Exemplo n.º 13
0
 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)
Exemplo n.º 14
0
 def projects(self):
     from vilya.models.project import Project
     return Project.gets_by(owner_id=self.id)