def form_valid(self, context, submitted_form_data): form = submitted_form_data['form'] if submitted_form_data['name'] == 'existing_project_form': project = Project.objects.get(id=form['project'].value) else: project = form.save() audit = Audit(project=project) audit.save() # Create default report report = ReportConfig( project=project, audit=audit, audit_report=True, password = get_random_string(), ) report.save() if 'next' in self.request.POST and self.request.POST['next']: return HttpResponseRedirect( u'{0}?filters=project:{1},audit:{2}'.format( self.request.POST['next'], project.id, audit.id)) else: return HttpResponseRedirect(reverse(self.list_view_name))
def create_report(self, request, queryset): """Create report and add it to the last audit""" project = queryset[0].project try: audit = Audit.objects.all().filter(project__id=project.id).latest("start_date") except ObjectDoesNotExist: report = ReportConfig(project=project, password=get_random_string()) else: report = ReportConfig(project=project, audit=audit, audit_report=False, password=get_random_string()) report.save() report.issues = queryset report.save() return HttpResponseRedirect(reverse("issuesdb-reportconfig-update", args=(report.id,)))
def get_initial(self): initial = { } if self.request.GET.get('filters'): current_filter = parse_filters_param(self.request.GET.get('filters')) else: current_filter = self.request.session.get('current_filter', {}).get('reportconfig', {}) if 'project' in current_filter: initial['project'] = current_filter['project'] if 'audit' in current_filter: initial['audit'] = current_filter['audit'] initial['password'] = get_random_string() return initial