def delete_project(request, projectID): project = project_api.get_project(projectID) if project is None: # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') if request.method == 'POST': project_api.delete_project(project) # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') else: form = ProjectForm(instance=project) context = { 'projects': project_api.get_projects_for_user(request.user.id), 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), 'title': 'Delete Project', 'confirm_message': 'This is an unrevert procedure ! You will lose all information about this project !', 'form': form, 'action': '/req/deleteproject/' + projectID, 'button_desc': 'Delete Project' } return render(request, 'ProjectSummary.html', context)
def backlog(request, projectID, iterationID): if project_api.can_user_access_project(request.user.id, projectID): projects = project_api.get_projects_for_user(request.user.id) project = project_api.get_project(projectID) if project is None: return redirect('/req/projects') association = UserAssociation.objects.get( user=request.user, project=project) iterations = project_api.get_iterations_for_project(project) iteration = project_api.get_iteration(iterationID) priorities = Story.PRIORITY_CHOICES if iteration is not None: stories = project_api.get_stories_for_iteration(iteration) else: stories = project_api.get_stories_with_no_iteration(project) context = {'projects': projects, 'project': project, 'priorities': priorities, 'association': association, 'iterations': iterations, 'iteration': iteration, 'stories': stories, 'owns_project': project_api.user_owns_project(request.user, project) } return render(request, 'BacklogDetail.html', context) else: # return HttpResponse("You cannot access project " + proj) return redirect('/req/projects')
def iteration(request, projectID, iterationID): if project_api.can_user_access_project(request.user.id, projectID): projects = project_api.get_projects_for_user(request.user.id) project = project_api.get_project(projectID) if project == None: return redirect('/req/projects') association = UserAssociation.objects.get(user=request.user, project=project) iterations = project_api.get_iterations_for_project(project) iteration = project_api.get_iteration(iterationID) if iteration != None: stories = project_api.get_stories_for_iteration(iteration) else: stories = project_api.get_stories_with_no_iteration(project) context = { 'projects': projects, 'project': project, 'association': association, 'iterations': iterations, 'iteration': iteration, 'stories': stories, 'owns_project': project_api.user_owns_project(request.user, project) } if iteration == None: context['isIceBox'] = True return render(request, 'IterationDetail.html', context) else: # return HttpResponse("You cannot access project " + proj) return redirect('/req/projects')
def backlog(request, projectID, iterationID): if project_api.can_user_access_project(request.user.id, projectID): projects = project_api.get_projects_for_user(request.user.id) project = project_api.get_project(projectID) if project is None: return redirect('/req/projects') association = UserAssociation.objects.get(user=request.user, project=project) iterations = project_api.get_iterations_for_project(project) iteration = project_api.get_iteration(iterationID) priorities = Story.PRIORITY_CHOICES if iteration is not None: stories = project_api.get_stories_for_iteration(iteration) else: stories = project_api.get_stories_with_no_iteration(project) context = { 'projects': projects, 'project': project, 'priorities': priorities, 'association': association, 'iterations': iterations, 'iteration': iteration, 'stories': stories, 'owns_project': project_api.user_owns_project(request.user, project) } return render(request, 'BacklogDetail.html', context) else: # return HttpResponse("You cannot access project " + proj) return redirect('/req/projects')
def new_project(request): if request.method == 'POST': form = ProjectForm(request.POST) name = str(request.POST['title']) #list=(str(project_api.get_projects_for_user(request.user.id))).replace("<Project: ","").replace(', ','').replace('[','').replace("]",'').split('>') #list = project_api.get_projects_for_user(request.user.id).values_list('title',flat=True) #print list #if name in list: if project_api.duplicate_project(request.user, request.POST): form.if_dup(1) if form.is_valid(): project_api.create_project(request.user, request.POST) project = form.save(commit=False) # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') else: form = ProjectForm() context = { 'projects': project_api.get_projects_for_user(request.user.id), 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), 'title': 'New Project', 'form': form, 'action': '/req/newproject', 'button_desc': 'Create Project' } return render(request, 'ProjectSummary.html', context)
def iteration(request, projectID, iterationID): if project_api.can_user_access_project(request.user.id, projectID): projects = project_api.get_projects_for_user(request.user.id) project = project_api.get_project(projectID) if project == None: return redirect('/req/projects') association = UserAssociation.objects.get(user=request.user, project=project) iterations = project_api.get_iterations_for_project(project) iteration = project_api.get_iteration(iterationID) if iteration != None: stories = project_api.get_stories_for_iteration(iteration) else: stories = project_api.get_stories_with_no_iteration(project) context = {'projects' : projects, 'project' : project, 'association' : association, 'iterations' : iterations, 'iteration' : iteration, 'stories' : stories, 'owns_project' : project_api.user_owns_project(request.user,project) } if iteration == None: context['isIceBox'] = True return render(request, 'IterationDetail.html', context) else: # return HttpResponse("You cannot access project " + proj) return redirect('/req/projects')
def list_projects(request): # Loads the DashBoard template, which contains a list of the project the user is # associated with, and an option to create new projects if one has that # permission. context = { 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), 'projects': project_api.get_projects_for_user(request.user.id), 'theUser': request.user, 'associationsWithUser': project_api.get_associations_for_user(request.user.id) } list=(str(project_api.get_projects_for_user(request.user.id))).replace("<Project: ","").replace(', ','').replace('[','').replace("]",'').split('>') # if request.user.is_authenticated(): # logedInUser = request.user # logedInUser.set_unusable_password() # context['user'] = logedInUser return render(request, 'DashBoard.html', context)
def list_projects(request): # Loads the DashBoard template, which contains a list of the project the user is associated with, and an option to # create new projects if one has that permission. context = { 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), 'projects': project_api.get_projects_for_user(request.user.id), 'theUser': request.user, 'associationsWithUser': project_api.get_associations_for_user(request.user.id) } # list = (str(project_api.get_projects_for_user(request.user.id))).replace( # "<Project: ", # "" # ).replace( # ', ', # '' # ).replace( # '[', # '' # ).replace( # "]", # '' # ).split('>') # if request.user.is_authenticated(): # logedInUser = request.user # logedInUser.set_unusable_password() # context['user'] = logedInUser return render(request, 'DashBoard.html', context)
def new_project(request): if request.method == 'POST': form = ProjectForm(request.POST) name = str(request.POST['title']) #list=(str(project_api.get_projects_for_user(request.user.id))).replace("<Project: ","").replace(', ','').replace('[','').replace("]",'').split('>') #list = project_api.get_projects_for_user(request.user.id).values_list('title',flat=True) #print list #if name in list: if project_api.duplicate_project(request.user,request.POST): form.if_dup(1) if form.is_valid() : project_api.create_project(request.user, request.POST) project = form.save(commit=False) # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') else: form = ProjectForm() context = {'projects': project_api.get_projects_for_user(request.user.id), 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), 'title': 'New Project', 'form': form, 'action': '/req/newproject', 'button_desc': 'Create Project'} return render(request, 'ProjectSummary.html', context)
def userProjects(self, request, userName, projectID=None): serializer_context = { 'request': request, } if userName is not None: if projectID is None: userID = project_api.get_user_id(userName) queryset = project_api.get_projects_for_user(userID) else: queryset = Project.objects.filter(id = projectID) #queryset = project_api.get_all_projects() serializer = projectSerializer(queryset,context=serializer_context, many=True) return Response(serializer.data)
def edit_project(request, projectID): project = project_api.get_project(projectID) if request.method == 'POST': form = ProjectForm(request.POST, instance=project) if form.is_valid(): project = form.save(commit=True) return redirect('/req/projects') else: form = ProjectForm(instance=project) context = {'projects' : project_api.get_projects_for_user(request.user.id), 'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT), 'title' : 'Edit Project', 'form' : form, 'action' : '/req/editproject/' + projectID, 'desc' : 'Save Changes'} return render(request, 'ProjectSummary.html', context )
def new_project(request): if request.method == 'POST': form = ProjectForm(request.POST) if form.is_valid(): project_api.create_project(request.user, request.POST) project = form.save(commit=False) return redirect('/req/projects') else: form = ProjectForm() context = {'projects' : project_api.get_projects_for_user(request.user.id), 'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT), 'title' : 'New Project', 'form' : form, 'action' : '/req/newproject' , 'desc' : 'Create Project' } return render(request, 'ProjectSummary.html', context )
def project(request, projectID): project = project_api.get_project(projectID) if project == None: return redirect('/req/projects') iterations = mdl_iteration.get_iterations_for_project(project) association = UserAssociation.objects.get(user=request.user, project=project) context = {'projects' : project_api.get_projects_for_user(request.user.id), 'project' : project, 'stories' : mdl_story.get_stories_for_project(project), 'iterations' : iterations, 'association' : association, 'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT), } return render(request, 'ProjectDetail.html', context)
def edit_project(request, projectID): project = project_api.get_project(projectID) if request.method == 'POST': form = ProjectForm(request.POST, instance=project) if form.is_valid(): project = form.save(commit=True) # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') else: form = ProjectForm(instance=project) context = {'projects' : project_api.get_projects_for_user(request.user.id), 'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT), 'title' : 'Edit Project', 'form' : form, 'action' : '/req/editproject/' + projectID, 'button_desc' : 'Save Changes'} return render(request, 'ProjectSummary.html', context )
def delete_project(request, projectID): project = project_api.get_project(projectID) if request.method == 'POST': # form = NewProjectForm(request.POST, instance=project) # if form.is_valid(): # project = form.save(commit=False) models.project_api.delete_project(project.id) return redirect('/projects') else: form = ProjectForm(instance=project) context = {'projects' : project_api.get_projects_for_user(request.user.id), 'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT), 'title' : 'Delete Project', 'confirm_message' : 'This is an unrevert procedure ! You will lose all information about this project !', 'form' : form, 'action' : '/req/deleteproject/' + projectID , 'desc' : 'Delete Project' } return render(request, 'ProjectSummary.html', context )
def new_project(request): if request.method == 'POST': form = ProjectForm(request.POST) if form.is_valid(): project_api.create_project(request.user, request.POST) project = form.save(commit=False) # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') else: form = ProjectForm() context = {'projects' : project_api.get_projects_for_user(request.user.id), 'canOwnProject' : request.user.has_perm(PERMISSION_OWN_PROJECT), 'title' : 'New Project', 'form' : form, 'action' : '/req/newproject' , 'button_desc' : 'Create Project' } return render(request, 'ProjectSummary.html', context )
def delete_project(request, projectID): project = project_api.get_project(projectID) if project is None: # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') if request.method == 'POST': project_api.delete_project(project) # return redirect('/req/projects') # return empty string and do the redirect stuff in front-end return HttpResponse('') else: form = ProjectForm(instance=project) context = {'projects': project_api.get_projects_for_user(request.user.id), 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), 'title': 'Delete Project', 'confirm_message': 'This is an unrevert procedure ! You will lose all information about this project !', 'form': form, 'action': '/req/deleteproject/' + projectID, 'button_desc': 'Delete Project'} return render(request, 'ProjectSummary.html', context)
def issues(request, projectID): # Loads the IssueList template, which contains a list of the issues the user is associated with, within a project p = project_api.get_project(projectID) if p is None: return redirect('/requirements/projects') iterations = mdl_iteration.get_iterations_for_project(p) association = UserAssociation.objects.get(user=request.user, project=p) context = { 'projects': project_api.get_projects_for_user(request.user.id), 'project': p, 'stories': mdl_story.get_stories_for_project(p), 'tasks': mdl_task.get_all_tasks(), 'comments': mdl_story_comment.get_all_comments(), 'attachments': mdl_story_attachment.get_all_attachments(), 'issues': mdl_issue.get_all_issues(), 'iterations': iterations, 'association': association, 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), } return render(request, 'IssueList.html', context)
def delete_project(request, projectID): project = project_api.get_project(projectID) if request.method == 'POST': # form = NewProjectForm(request.POST, instance=project) # if form.is_valid(): # project = form.save(commit=False) models.project_api.delete_project(project.id) return redirect('/projects') else: form = ProjectForm(instance=project) context = { 'projects': project_api.get_projects_for_user(request.user.id), 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), 'title': 'Delete Project', 'confirm_message': 'This is an unrevert procedure ! You will lose all information about this project !', 'form': form, 'action': '/req/deleteproject/' + projectID, 'desc': 'Delete Project' } return render(request, 'ProjectSummary.html', context)
def project(request, projectID): p = project_api.get_project(projectID) if p is None: return redirect('/requirements/projects') iterations = mdl_iteration.get_iterations_for_project(p) association = UserAssociation.objects.get(user=request.user, project=p) priorities = Story.PRIORITY_CHOICES context = { 'projects': project_api.get_projects_for_user(request.user.id), 'project': p, 'stories': mdl_story.get_stories_for_project(p), 'tasks': mdl_task.get_all_tasks(), 'comments': mdl_story_comment.get_all_comments(), 'priorities': priorities, 'attachments': mdl_story_attachment.get_all_attachments(), 'issues': mdl_issue.get_all_issues(), 'iterations': iterations, 'association': association, 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), } return render(request, 'ProjectDetail.html', context)
def project(request, projectID): project = project_api.get_project(projectID) if project is None: return redirect('/req/projects') iterations = mdl_iteration.get_iterations_for_project(project) association = UserAssociation.objects.get( user=request.user, project=project) priorities = Story.PRIORITY_CHOICES context = {'projects': project_api.get_projects_for_user(request.user.id), 'project': project, 'stories': mdl_story.get_stories_for_project(project), 'tasks': mdl_task.get_all_tasks(), 'comments': mdl_story_comment.get_all_comments(), 'priorities': priorities, 'attachments': mdl_story_attachment.get_all_attachments(), 'issues': mdl_issue.get_all_issues(), 'iterations': iterations, 'association': association, 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), } return render(request, 'ProjectDetail.html', context)
def issues(request, projectID): # Loads the IssueList template, which contains a list of the issues the user is # associated with, within a project project = project_api.get_project(projectID) if project is None: return redirect('/req/projects') iterations = mdl_iteration.get_iterations_for_project(project) association = UserAssociation.objects.get( user=request.user, project=project) context = {'projects': project_api.get_projects_for_user(request.user.id), 'project': project, 'stories': mdl_story.get_stories_for_project(project), 'tasks': mdl_task.get_all_tasks(), 'comments': mdl_story_comment.get_all_comments(), 'attachments': mdl_story_attachment.get_all_attachments(), 'issues': mdl_issue.get_all_issues(), 'iterations': iterations, 'association': association, 'canOwnProject': request.user.has_perm(PERMISSION_OWN_PROJECT), } return render(request, 'IssueList.html', context)