def print_obituary(request, obituary_id=None): ''' Coding Horror: Pretty much copied line-for-line from manage_obituary(request, obituary_id=None), ~ Line 241, above. ''' if obituary_id: obit = Obituary.objects.get(pk=obituary_id) tm = loader.get_template('obituary_list_unix_include.txt') ct = RequestContext(request, {'object_list': [obit]}) dt = tm.render(ct) dt = output_cleanup_hack(dt) dt = adobe_to_web(dt) response_dict = { 'obit_string': dt, 'obit': obit, } return render_to_response('print_obituary.html', response_dict, context_instance=RequestContext(request))
def manage_obituary(request, obituary_id=None): if obituary_id: # Editing existing record ... obituary = get_object_or_404(Obituary, pk=obituary_id) else: # Creating new record ... obituary = Obituary() if request.method == 'POST': if request.POST.has_key('delete') and obituary_id: current_obit = Obituary.objects.filter(death_notice__funeral_home__username=request.user.username).get(pk=obituary_id) current_obit.delete() msg = ugettext('The %(verbose_name)s for %(first)s %(last)s was deleted.') % \ { 'verbose_name': Obituary._meta.verbose_name, 'first': current_obit.death_notice, 'last': current_obit.death_notice.last_name, } messages.success(request, msg, fail_silently=False) return HttpResponseRedirect(reverse('death_notice_index')) if obituary_id: current_obit = Obituary.objects.filter(death_notice__funeral_home__username=request.user.username).get(pk=obituary_id) form = ObituaryForm(request, request.POST, request.FILES, instance=obituary) formset = VisitationFormSet(request.POST, instance=obituary) bei_formset = BEI_FormSet(request.POST, instance=obituary) os_formset = Other_servicesFormSet(request.POST, instance=obituary) child_formset = ChildrenFormSet(request.POST, instance=obituary) sib_formset = SiblingsFormSet(request.POST, instance=obituary) wed_formset = MarriageFormSet(request.POST, instance=obituary) if form.is_valid() and formset.is_valid() and bei_formset.is_valid() and \ os_formset.is_valid() and child_formset.is_valid() and \ sib_formset.is_valid() and wed_formset.is_valid(): msg = ugettext('The %(verbose_name)s for %(first)s %(last)s was updated.') % \ { 'verbose_name': Obituary._meta.verbose_name, 'first': obituary.death_notice.first_name, 'last': obituary.death_notice.last_name, } messages.success(request, msg, fail_silently=False) obituary = form.save() formset.save() bei_formset.save() os_formset.save() child_formset.save() sib_formset.save() wed_formset.save() if request.POST.has_key('submit'): return HttpResponseRedirect(reverse('death_notice_index')) elif request.POST.has_key('submit_add'): return HttpResponseRedirect(reverse('add_obituary')) else: return HttpResponseRedirect(reverse('obituary.views.manage_obituary', args=(obituary.pk,))) else: if obituary_id: current_obit = Obituary.objects.get(pk=obituary_id) form = ObituaryForm(request, instance=obituary) formset = VisitationFormSet(instance=obituary) bei_formset = BEI_FormSet(instance=obituary) os_formset = Other_servicesFormSet(instance=obituary) child_formset = ChildrenFormSet(instance=obituary) sib_formset = SiblingsFormSet(instance=obituary) wed_formset = MarriageFormSet(instance=obituary) else: form = ObituaryForm(request) formset = VisitationFormSet(instance=Obituary()) bei_formset = BEI_FormSet(instance=Obituary()) os_formset = Other_servicesFormSet(instance=Obituary()) child_formset = ChildrenFormSet(instance=Obituary()) sib_formset = SiblingsFormSet(instance=Obituary()) wed_formset = MarriageFormSet(instance=Obituary()) ob_response_dict = { 'form': form, 'formset_name': formset.model._meta.verbose_name, 'formset': formset, 'bei_formset_name': bei_formset.model._meta.verbose_name, 'bei_formset': bei_formset, 'os_formset_name': os_formset.model._meta.verbose_name, 'os_formset': os_formset, 'child_formset_name': child_formset.model._meta.verbose_name, 'child_formset': child_formset, 'sib_formset_name': sib_formset.model._meta.verbose_name, 'sib_formset': sib_formset, 'wed_formset': wed_formset, 'obituary_id': obituary_id, } # To be used for Preview if obituary_id: tm = loader.get_template('obituary_list_unix_include.txt') ct = RequestContext(request, {'object_list': [current_obit]}) # ct = RequestContext(request) # ct['object_list'] = [current_obit] dt = tm.render(ct) dt = output_cleanup_hack(dt) dt = adobe_to_web(dt) ob_response_dict['obit_preview'] = dt ob_response_dict['current_obit'] = current_obit return render_to_response('manage_obituary.html', ob_response_dict, context_instance=RequestContext(request))