def issue_tables(request, project_number, categories=[], active_tab=None, vars={}): project = get_project(project_number) filters = { 'code': 'contracts__code', 'status': 'status__name', 'user': '******', } for field, q_field in filters.iteritems(): if request.GET.has_key(field): for category in categories: category['issues'] = category['issues'].filter(Q(**{q_field: request.GET[field]})) # Load tabs tools = project_tools(project) tabs = project_tabs(project) if active_tab: tabs[active_tab]["active"] = True # Load all IssueStatuses all_statuses = IssueStatus.objects.all() if vars.has_key("breadcrumb"): print "WTF!?!?!?" vars.update(locals()) return render_project_response(request, 'project/issue_tables.html', project_number, vars)
def issue_view(request, project_number, issue_id): issue = get_object_or_404(Issue, id=issue_id) tools = [ tab('edit issue', 'Rediger sak', issue.get_edit_url()), ] subscription = False if request.user in issue.subscribers.all(): tools.append(tab('unsubscribe issue', 'Avslutt abonnement', reverse(issue_unsubscribe, args=(project_number, issue_id,)))) subscription = IssueSubscription.objects.get(issue=issue, user=request.user) if subscription.notify: tools.append(tab('unnotify', 'Slå av varsling', reverse(issue_denotify, args=(project_number, issue_id,)))) else: tools.append(tab('notify', 'Slå på varsling', reverse(issue_notify, args=(project_number, issue_id,)))) else: tools.append(tab('subscribe issue', 'Abonnér på sak', reverse(issue_subscribe, args=(project_number, issue_id,)))) if subscription: issue.subscription = subscription # Load issue notificants cache excluding current user issue.notificants(exclude_user=request.user) breadcrumb = issue return render_project_response(request, 'issue/view.html', project_number, locals())
def issue_form(request, project_number, issue, action, postaction): ImageFormset = modelformset_factory(ImageResource, form=ImageResourceForm, extra=1, can_delete=True) image_qs = ImageResource.objects.none() if issue.pk: image_qs = issue.all_images() else: issue.project = get_project(project_number) if request.POST: form = IssueForm(request.POST, instance=issue) formset = ImageFormset(request.POST, request.FILES) if form.is_valid() and formset.is_valid(): issue = form.save() images = formset.save(commit=False) for image in images: image.parent = issue image.save() return HttpResponseRedirect(issue.get_absolute_url()) else: form = IssueForm(instance=issue) formset = ImageFormset(queryset=image_qs) breadcrumb = issue return render_project_response(request, 'issue/form.html', project_number, locals())
def contract_list(request, project_number): project = get_project(project_number) pagetitle = u"Kontrakter" contracts = project.contract_set.all() for contract in contracts: contract.my_issues = contract.get_all_issues(request.user) contract.my_issues_url = contract.get_my_issues_url(request.user) tools = project_tools(project) tabs = project_tabs(project) tabs[1]["active"] = True return render_project_response(request, 'contract/list.html', project_number, locals())
def list(request, project_number, key, list_by, issues): breadcrumb = key key.project = get_project(project_number) return render_project_response(request, 'project/list_by.html', project_number, locals())