@login_required def ticket_view(request, object_id=None):
- if not request.user.has_perm(“procedure.can_add_tickets”) and
- not request.user.has_perm(“procedure.change_tickets”):
- return HttpResponseForbidden(render_to_string(‘forbidden.html’))
- if object_id == None:
- ticket = Ticket() title_form = _(‘Add Ticket’)
- else:
- ticket = Ticket.objects.get(pk = object_id) title_form = _(‘Change Ticket’)
- TicketAssistanceFormset = inlineformset_factory(Ticket, TicketAssistance, form=TicketAssistanceForm, fk_name=’ticket’,
- extra=2, can_delete=True)
- if request.method == ‘POST’:
form = TicketForm(request.POST, instance=ticket) formset = TicketAssistanceFormset(request.POST, request.FILES, instance=ticket) if form.is_valid():
form.save() formset.save()
# Redirect to somewhere if ‘_save’ in request.POST:
return HttpResponseRedirect(‘/ticket/ticket/’)
- if ‘_addanother’ in request.POST:
- return HttpResponseRedirect(‘/ticket/ticket/add/’)
- else:
- form = TicketForm(instance=ticket) formset = TicketAssistanceFormset(instance=ticket)
return render_to_response(‘ticket/ticket_form.html’, form=form, formset=formset, title_form=title_form)
{# INLINE FIELDSET #} <div class=”inline-group”>
- <div class=”tabular inline-related last-related”>
<fieldset class=”module”> <h2>{% trans ‘Assistance rows’ %}</h2> <table>
<tr> {% for field in formset.forms.0 %}
- {% if not field.is_hidden %}
- <th>{% label field %}</th>
- {% else %}
- <th class=”hidden”>{% label field %}</th>
{% endif %}
{% endfor %} </tr> {% for f in formset.management_form %}
{{ f }}{% endfor %} {% for f in formset.forms %}
<tr class=”{% cycle row1,row2 %}”> {% for field in f %}
- {% if not field.is_hidden %}
- <td class=”{{ field.name }}”> {{ field.errors }} {{ field }} <p class=”help”>{{ field.help_text }}</p> </td>
- {% else %}
- <td class=”hidden”>{{ field }}</td>
{% endif %}
{% endfor %} </tr>
{% endfor %}
</table> </fieldset>
</div>
</div>