class ShowReportListView(LoginRequiredMixin, AdministratorLoginRequiredMixin, ListView): """ Generate the report using ListView """ template_name = "administrator/report.html" organization_list = get_organizations_ordered_by_name() event_list = get_events_ordered_by_name() job_list = get_jobs_ordered_by_title() def post(self, request, *args, **kwargs): report_list = get_administrator_report( self.request.POST['first_name'], self.request.POST['last_name'], self.request.POST['organization'], self.request.POST['event_name'], self.request.POST['job_name'], self.request.POST['start_date'], self.request.POST['end_date'], ) organization = self.request.POST['organization'] event_name = self.request.POST['event_name'] total_hours = calculate_total_report_hours(report_list) return render( request, 'administrator/report.html', { 'report_list': report_list, 'total_hours': total_hours, 'notification': True, 'organization_list': self.organization_list, 'selected_organization': organization, 'event_list': self.event_list, 'selected_event': event_name, 'job_list': self.job_list })
def test_get_jobs_ordered_by_title(self): e1 = Event( name="Software Conference", start_date="2012-10-22", end_date="2012-10-25" ) e1.save() j1 = Job( name="Software Developer", start_date="2012-10-22", end_date="2012-10-23", description="A software job", event=e1 ) j2 = Job( name="Systems Administrator", start_date="2012-9-1", end_date="2012-10-26", description="A systems administrator job", event=e1 ) j3 = Job( name="Project Manager", start_date="2012-1-2", end_date="2012-2-2", description="A management job", event=e1 ) j1.save() j2.save() j3.save() # test typical case job_list = get_jobs_ordered_by_title() self.assertIsNotNone(job_list) self.assertNotEqual(job_list, False) self.assertEqual(len(job_list), 3) self.assertIn(j1, job_list) self.assertIn(j2, job_list) self.assertIn(j3, job_list) # test order self.assertEqual(job_list[0].name, j3.name) self.assertEqual(job_list[1].name, j1.name) self.assertEqual(job_list[2].name, j2.name)
def test_get_jobs_ordered_by_title(self): """ Uses jobs j1,j2,j3 """ # test typical case job_list = get_jobs_ordered_by_title() self.assertIsNotNone(job_list) self.assertNotEqual(job_list, False) self.assertEqual(len(job_list), 3) self.assertIn(self.j1, job_list) self.assertIn(self.j2, job_list) self.assertIn(self.j3, job_list) # test order self.assertEqual(job_list[0].name, self.j3.name) self.assertEqual(job_list[1].name, self.j1.name) self.assertEqual(job_list[2].name, self.j2.name)
def post(self, request, *args, **kwargs): search_result_list = get_jobs_ordered_by_title() form = SearchJobForm(self.request.POST) if form.is_valid(): name = form.cleaned_data['name'] start_date = form.cleaned_data['start_date'] end_date = form.cleaned_data['end_date'] city = form.cleaned_data['city'] state = form.cleaned_data['state'] country = form.cleaned_data['country'] event = form.cleaned_data['event'] search_result_list = search_jobs(name, start_date, end_date, city, state, country, event) return render(request, 'job/list.html', { 'form': form, 'search_result_list': search_result_list, })
def post(self, request, *args, **kwargs): search_result_list = get_jobs_ordered_by_title() form = SearchJobForm(self.request.POST) if form.is_valid(): name = form.cleaned_data['name'] start_date = form.cleaned_data['start_date'] end_date = form.cleaned_data['end_date'] city = form.cleaned_data['city'] state = form.cleaned_data['state'] country = form.cleaned_data['country'] event = form.cleaned_data['event'] search_result_list = search_jobs(name, start_date, end_date, city, state, country, event) return render(request, 'job/list.html', { 'form': form, 'search_result_list': search_result_list })
class ShowFormView(AdministratorLoginRequiredMixin, FormView): """ Displays the form """ model = Administrator form_class = ReportForm template_name = "administrator/report.html" event_list = get_events_ordered_by_name() job_list = get_jobs_ordered_by_title() organization_list = get_organizations_ordered_by_name() def get(self, request, *args, **kwargs): return render( request, 'administrator/report.html', { 'event_list': self.event_list, 'organization_list': self.organization_list, 'job_list': self.job_list })
def get(self, request, *args, **kwargs): search_result_list = get_jobs_ordered_by_title() return render(request, 'job/list.html', {'search_result_list': search_result_list})
def get(self, request, *args, **kwargs): search_result_list = get_jobs_ordered_by_title() return render( request, 'job/list.html', { 'search_result_list': search_result_list, })