Ejemplo n.º 1
0
def book_slot(request, slot_id):
    if request.is_ajax():
        s = Slot.objects.get(id=slot_id)
        if request.POST["patient"] is None or int(
                request.POST["patient"]) == 0:
            # new Patient
            s.informations = request.POST["informations"]
            p = Patient(email=unicode(request.POST["email"]),
                        first_name=unicode(request.POST["first_name"]),
                        last_name=unicode(request.POST["last_name"]),
                        telephone=unicode(request.POST["telephone"]))
            p.confirm = string_random(32)
            p.save()
            mail_patient_welcome(request, p)
            s.patient = p
            s.informations = unicode(request.POST["informations"])
        else:
            p = Patient.objects.get(id=int(request.POST["patient"]))
            s.patient = p
        s.booked = True
        s.save()
        s.icalendar()
        mail_patient_new_appointment(request, s)
        d = {'return': True, 'slot': s.as_json()}
        return HttpResponse(json.dumps(d))
Ejemplo n.º 2
0
 def save(self, *args, **kwargs):
     if not self.random:
         self.random = string_random(16)
     super(Slot, self).save(*args, **kwargs)
     if self.refer_doctor:
         self.path = os.path.join(settings.MEDIA_ROOT, 'ics', 'slot',
                                  '%s_%s_%s.ics' % (self.random, self.refer_doctor.slug, self.id))
     super(Slot, self).save(*args, **kwargs)
Ejemplo n.º 3
0
 def save(self, *args, **kwargs):
     if not self.random:
         self.random = string_random(16)
     super(Slot, self).save(*args, **kwargs)
     if self.refer_doctor:
         self.path = os.path.join(
             settings.MEDIA_ROOT, 'ics', 'slot', '%s_%s_%s.ics' %
             (self.random, self.refer_doctor.slug, self.id))
     super(Slot, self).save(*args, **kwargs)
Ejemplo n.º 4
0
 def save(self, *args, **kwargs):
     if not self.date_start:
         self.date_start = datetime.now()
     self.date_end = self.date_start + relativedelta(months=+self.type_price.num_months)
     super(Invoice, self).save(*args, **kwargs)
     if self.price_incVAT != ((self.VAT / 100) * self.price_exVAT) + self.price_exVAT:
         self.price_VAT = (self.VAT / 100) * self.price_exVAT
         self.price_incVAT = self.price_VAT + self.price_exVAT
         # super(Invoice, self).save(*args, **kwargs)
     self.invoice_number = get_number(self.date_creation.year)
     self.path = os.path.join('invoice',
                              '%s_%s_%s.pdf' % (string_random(16), self.date_creation.year, self.invoice_number))
     super(Invoice, self).save(*args, **kwargs)
Ejemplo n.º 5
0
 def save(self, *args, **kwargs):
     if not self.date_start:
         self.date_start = datetime.now()
     self.date_end = self.date_start + relativedelta(
         months=+self.type_price.num_months)
     super(Invoice, self).save(*args, **kwargs)
     if self.price_incVAT != (
         (self.VAT / 100) * self.price_exVAT) + self.price_exVAT:
         self.price_VAT = (self.VAT / 100) * self.price_exVAT
         self.price_incVAT = self.price_VAT + self.price_exVAT
         # super(Invoice, self).save(*args, **kwargs)
     self.invoice_number = get_number(self.date_creation.year)
     self.path = os.path.join(
         'invoice', '%s_%s_%s.pdf' %
         (string_random(16), self.date_creation.year, self.invoice_number))
     super(Invoice, self).save(*args, **kwargs)
Ejemplo n.º 6
0
def create_user(request):
    c = {}
    if request.method == 'POST':
        ucform = UserCreateForm(request.POST)
        upform = UserProfileForm(request.POST)
        docform = DoctorForm(request.POST)
        invoiceform = MiniInvoiceForm(request.POST)
        if ucform.is_valid() and upform.is_valid() and docform.is_valid(
        ) and invoiceform.is_valid():
            i = invoiceform.save()
            u = ucform.save()
            up = upform.save()
            u.is_active = False
            u.save()
            i.active = True
            i.save()
            up.confirm = string_random(32)
            doc = docform.save()
            doc.refer_userprofile = up
            for st in settings.SLOT_TYPE:
                doc.get_colorslot(st[0])
            doc.invoices.add(i)
            doc.save()
            up.user = u
            up.doctors.add(doc)
            # TODO regarder dans collaborator pour voir si il faut en rajouter
            up.current_doctor = doc
            up.save()
            doc.set_slug()
            doc.save()
            mail_user_welcome(request, up, True)
            c['mail'] = True
            return render(request, 'valid.tpl', c)
        else:
            c['form'] = [ucform, upform, docform, invoiceform]
            messages.error(request, "Error")
    else:
        c['form'] = [
            UserCreateForm(),
            UserProfileForm(),
            DoctorForm(),
            MiniInvoiceForm()
        ]
    c['url'] = "/user/create_user/"
    c['title'] = _("New doctor")
    return render(request, 'form.tpl', c)
Ejemplo n.º 7
0
def create_user(request):
    c = {}
    if request.method == 'POST':
        ucform = UserCreateForm(request.POST)
        upform = UserProfileForm(request.POST)
        docform = DoctorForm(request.POST)
        invoiceform = MiniInvoiceForm(request.POST)
        if ucform.is_valid() and upform.is_valid() and docform.is_valid() and invoiceform.is_valid():
            i = invoiceform.save()
            u = ucform.save()
            up = upform.save()
            u.is_active = False
            u.save()
            i.active = True
            i.save()
            up.confirm = string_random(32)
            doc = docform.save()
            doc.refer_userprofile = up
            for st in settings.SLOT_TYPE:
                doc.get_colorslot(st[0])
            doc.invoices.add(i)
            doc.save()
            up.user = u
            up.doctors.add(doc)
            # TODO regarder dans collaborator pour voir si il faut en rajouter
            up.current_doctor = doc
            up.save()
            doc.set_slug()
            doc.save()
            mail_user_welcome(request, up, True)
            c['mail'] = True
            return render(request, 'valid.tpl', c)
        else:
            c['form'] = [ucform, upform, docform, invoiceform]
            messages.error(request, "Error")
    else:
        c['form'] = [UserCreateForm(), UserProfileForm(), DoctorForm(), MiniInvoiceForm()]
    c['url'] = "/user/create_user/"
    c['title'] = _("New doctor")
    return render(request, 'form.tpl', c)
Ejemplo n.º 8
0
def book_slot(request, slot_id):
    if request.is_ajax():
        s = Slot.objects.get(id=slot_id)
        if request.POST["patient"] is None or int(request.POST["patient"]) == 0:
            # new Patient
            s.informations = request.POST["informations"]
            p = Patient(email=unicode(request.POST["email"]), first_name=unicode(request.POST["first_name"]),
                        last_name=unicode(request.POST["last_name"]), telephone=unicode(request.POST["telephone"]))
            p.confirm = string_random(32)
            p.save()
            mail_patient_welcome(request, p)
            s.patient = p
            s.informations = unicode(request.POST["informations"])
        else:
            p = Patient.objects.get(id=int(request.POST["patient"]))
            s.patient = p
        s.booked = True
        s.save()
        s.icalendar()
        mail_patient_new_appointment(request, s)
        d = {'return': True, 'slot': s.as_json()}
        return HttpResponse(json.dumps(d))
Ejemplo n.º 9
0
 def update(self):
     self.confirm = string_random(32)