Example #1
0
class EmployeeIncidentNew(GenerateMixin, TemplateView):
    template_name = 'administrator/employee/employee_incident_new.html'

    def get(self, request, *args, **kwargs):
        self.form_incident = IncidentForm(auto_id='incident_%s')
        self.form_incidentDetail = IncidentDetailFormSet(
            prefix='incident_detal')
        return self.render_to_response(self.get_context_data())

    def post(self, request, *args, **kwargs):
        self.form_incident = IncidentForm(request.POST, auto_id='incident_%s')
        self.form_incidentDetail = IncidentDetailFormSet(
            request.POST, prefix='incident_detal')
        if (self.form_incident.is_valid() and
                self.form_incidentDetail.is_valid()):
            with transaction.atomic():
                incident = self.form_incident.save()
                self.get_formset_employee(self.form_incidentDetail, incident)
        return self.render_to_response(self.get_context_data())

    @staticmethod
    def get_formset_employee(formset, incident):
        for form in formset.forms:
            form.save(incident=incident, commit=False)

    def get_context_data(self, **kwargs):
        context = super(EmployeeIncidentNew, self).get_context_data(**kwargs)
        context['nav'] = (
            ('Panel Mando', '/'),
            ('Incidentes', reverse_lazy('adm_app:employee_app:incident')),
            ('Registro', '')
        )
        context['form'] = self.form_incident
        context['incidentDetailForm'] = self.form_incidentDetail
        return context
Example #2
0
 def post(self, request, *args, **kwargs):
     self.form_incident = IncidentForm(request.POST, auto_id='incident_%s')
     self.form_incidentDetail = IncidentDetailFormSet(
         request.POST, prefix='incident_detal')
     if (self.form_incident.is_valid() and
             self.form_incidentDetail.is_valid()):
         with transaction.atomic():
             incident = self.form_incident.save()
             self.get_formset_employee(self.form_incidentDetail, incident)
     return self.render_to_response(self.get_context_data())
Example #3
0
 def get(self, request, *args, **kwargs):
     self.form_incident = IncidentForm(auto_id='incident_%s')
     self.form_incidentDetail = IncidentDetailFormSet(
         prefix='incident_detal')
     return self.render_to_response(self.get_context_data())