def post(self, request):

        retorno = []
        modelos = [Section, Linkmod, Textmodule, '', Seccolmenu, Videomodule]
        data = request.POST.copy()
        modelo = modelos[int(data['step'])]
        imagens = request.POST.get('imagen', None)
        pkid = request.POST.get('pkid', None)
        sec_name = request.POST.get('sec_name', None)
        col_name = request.POST.get('col_name', None)
        texto = request.POST.get('texto', None)

        current_site = get_current_site(request)
        data['sitio'] = current_site.pk

        #if texto:
        #    data['texto'] = texto.replace("'","\'")
        #    data['texto'] = data['texto'].replace(''','\'')

        # se esta  recibiendo una seccion, vamos a generar su slug
        if sec_name and int(data['step']) == 0:
            data['sec_slug'] = slugify(sec_name)

        if col_name and int(data['step']) == 4:
            data['slug_col_name'] = slugify(col_name)

        rowpk = request.POST.get('rowpk', None)

        if rowpk and int(data['step']) != 4:
            rowupdate = Rowsection.objects.get(pk=rowpk)
            rowupdate.configur = data['columns']
            rowupdate.save()

        if pkid:
            instanced = modelo.objects.get(pk=pkid)
        else:
            instanced = None

        if imagens:
            imagen = data['imagen'].decode('base64')
            original = Image.open(BytesIO(imagen))
            name_imagen = 'brouch.%s' % original.format.lower()
            data['imagen'] = ContentFile(imagen, name_imagen)
        else:
            data['imagen'] = None

        f = FormCreator()
        forma = f.form_to_model(modelo=modelo, excludes={})
        forma = forma(data, instance=instanced)
        if forma.is_valid():
            saved = forma.save()
            if data['imagen']:
                saved.imagen = data['imagen']
                saved.save()
            retorno = {'saved': 'ok', 'pk': saved.pk}
        else:
            retorno = forma.errors

        response = HttpResponse(simplejson.dumps(retorno))
        return response
    def get(self, request, pk):
        checkuser(request)

        bancoimagen = request.GET.get('type', None)

        section = Section.objects.get(pk=pk)

        if bancoimagen:
            section.page_type = bancoimagen
            section.save()

        f = FormCreator()
        forma = f.form_to_model(modelo=Section,
                                excludes=[
                                    'sec_slug', 'orden', 'parent', 'webimage',
                                    'mobileimage', 'sitio'
                                ])
        for x, y in forma.base_fields.iteritems():
            y.widget.attrs.update({'class': 'lightinput'})
        forma = forma(instance=section)
        forma['sec_name'].field.widget.attrs.update({'ng-model': 'sec_name'})
        forma['page_type'].field.widget.attrs.update({'ng-model': 'page_type'})

        template = 'doctor/main_templates/configuring.html'
        context = {}
        links = []
        context['section'] = section
        context['forma'] = forma
        context['ligas'] = links
        context['cats'] = Cat.objects.filter(parentcat__isnull=True)
        response = render(request, template, context)
        return response
    def post(self, request):
        data = request.POST.copy()

        if data['sending'] == 'false':
            data['sending'] = False

        f = FormCreator()
        forma = f.form_to_model(modelo=Downloade, excludes=[])
        try:
            instanced = Downloade.objects.get(pk=data['pk'])
        except:
            instanced = None

        forma = forma(data, instance=instanced)

        if forma.is_valid():
            saved = forma.save()
            responsed = {
                'saved': 'ok',
                'pk': '%s' % (saved.pk),
                'dfile': instanced.dfile.name
            }
        else:
            errs = '%s' % (forma.errors)
            responsed = {'errors': errs}

        response = HttpResponse(simplejson.dumps(responsed))
        return response
Exemple #4
0
    def post(self, request):
        data = request.POST.copy()
        f = FormCreator()

        pk = data.get('pk', None)

        if pk:
            instanced = Downloade.objects.get(pk=pk)
        else:
            instanced = None

        forma = f.form_to_model(modelo=Downloade, excludes=['dfile'])
        forma = forma(data, instance=instanced)
        formats, imgstr = data['dfile'].split(';base64,')
        ext = formats.split('/')[-1]
        dfile = ContentFile(b64decode(imgstr), name=data['filename'])
        if forma.is_valid():
            saved = forma.save()
            saved.dfile = dfile
            saved.save()
            responde = {'saved': 'ok', 'pk': '%s' % (saved.pk)}
        else:
            responde = {'wrong': forma.errors}

        return HttpResponse(simplejson.dumps(responde))
    def post(self,request):
        data = request.POST.copy()
        passs = request.POST.get('password',None)
        pk = request.POST.get('pk',None)
        group = request.POST.get('groups',None)
        
        if group:
            data['groups'] = group


        try:
            instanced = User.objects.get(pk=pk)
        except:
            instanced = None




        data['date_joined'] = datetime.datetime.now()
        response = {}
        forma = FormCreator()
        forma = forma.form_to_model(modelo=User,excludes = [])
        if  instanced:
            forma.base_fields['password'].required=False
        else:
            forma.base_fields['password'].required=True
        forma.base_fields['email'].required=True
        forma.base_fields['groups'].required=True
        
        data['is_active']=True
        data['is_staff']=True
        
        
        if passs:
            data['password']=make_password(data['password'])
        
        forma = forma(data,instance=instanced)

        if forma.is_valid():
            saved = forma.save()

            response['saved'] = 'ok'
            response['datos'] = {'msg':u'guardao con éxito','liga':'/admin/users/'}
            response['callback'] = 'reg_success_user'

        else:
            response['msg'] = 'Verifique su información'
            response['errors'] = forma.errors


        returns = HttpResponse(simplejson.dumps(response))
        
        return returns
    def post(self,request):

        pax = checkuser(request)
        if pax:
            return redirect('/home/')


        context = {}
        forma = FormCreator()
        pk = request.POST.get('pk',None)


        if pk:
            instanced = User.objects.get(pk=pk)
            permisos = instanced.groups.all()[0].permission_set.all()
            if permisos:
                permisos = permisos[0].permslist()
        else:
            instanced = None
            permisos = []




        widgets = {
            'password':forms.PasswordInput(),
            'groups':forms.Select()
        }


        forma = forma.form_to_model(modelo=User,
                                             fields=['username','password','first_name','last_name','email','groups'],
                                             widgets = widgets
                                             )
        for x,y in forma.base_fields.iteritems():
            (y.widget.attrs.update({'class':'form-control'}))


        forma = forma(instance=instanced)

        sections = Section.objects.filter(parent__isnull=True,ishome=False).order_by('orden')        


        context['forma'] = forma
        context['users'] = User.objects.all()
        context['pk'] = pk
        context['sections'] = sections
        context['permisos'] = permisos
        context['grupos'] = Group.objects.all().order_by('name')

        response = render(request, self.template, context)
        return response
    def post(self, request):
        data = request.POST.copy()
        f = FormCreator()
        forma = f.form_to_model(modelo=Downloadmod, excludes=[])
        forma = forma(data, request.FILES)

        if forma.is_valid():
            saved = forma.save()
            response = HttpResponse(
                simplejson.dumps({'path': '/%s' % saved.dwfile.url}))
            return response
        else:
            response = HttpResponse(
                simplejson.dumps({
                    'msg': 'something is wrong :(',
                    'err': forma.errors
                }))
            return response
    def post(self, request):
        data = request.POST.copy()
        data['date_joined'] = datetime.datetime.now()
        instanced = None
        response = {}
        forma = FormCreator()
        forma = forma.advanced_form_to_model(modelo=User, excludes=[])

        forma.base_fields['email'].required = True
        forma.base_fields['groups'].required = True
        grupo = data['groups']
        ges = Group.objects.get(name='%s' % data['groups'])
        data['groups'] = (ges.pk)
        data['is_active'] = True
        data['is_staff'] = True
        pax = data['password']
        data['password'] = make_password(data['password'])
        forma = forma(data, instance=instanced)

        if forma.is_valid():
            saved = forma.save()
            if data['groups'] == 'patient':
                full_name = '%s %s' % (data['first_name'], data['last_name'])
                Patient(full_name='')
            if saved:
                usery = authenticate(username=data['username'], password=pax)
                login(request, usery)

            response['saved'] = 'ok'
            response['datos'] = {
                'msg': u'guardao con éxito',
                'liga': '/%s/home/' % (grupo)
            }
            response['callback'] = 'reg_success'

        else:
            response['msg'] = 'Verifique su información'
            response['errors'] = forma.errors

        returns = HttpResponse(simplejson.dumps(response))

        return returns
Exemple #9
0
    def get(self, request):

        pax = checkuser(request)
        if pax:
            return redirect('/home/')

        context = {}
        forma = FormCreator()
        pk = request.POST.get('pk', None)

        if pk:
            instanced = User.objects.get(pk=pk)
            permisos = instanced.permission_set.all()[0]
            permisos = permisos.permslist()
        else:
            instanced = None
            permisos = []

        widgets = {
            'password': forms.PasswordInput(),
        }

        forma = forma.form_to_model(modelo=User,
                                    fields=[
                                        'username', 'password', 'first_name',
                                        'last_name', 'email', 'groups'
                                    ],
                                    widgets=widgets)
        for x, y in forma.base_fields.iteritems():
            (y.widget.attrs.update({'class': 'form-control'}))

        forma = forma(instance=instanced)

        sections = None

        context['forma'] = forma
        context['pk'] = pk
        context['sections'] = sections
        context['permisos'] = permisos

        response = render(request, self.template, context)
        return response
    def post(self, request):
        data = request.POST.copy()
        f = FormCreator()
        forma = f.form_to_model(modelo=LinkDwn, excludes=[])
        try:
            instanced = LinkDwn.objects.get(pk=data['pk'])
        except:
            instanced = None

        forma = forma(data, instance=instanced)

        if forma.is_valid():
            saved = forma.save()
            responsed = {'saved': 'ok', 'pk': saved.pk}
        else:
            errs = '%s' % (forma.errors)
            responsed = {'errors': errs}

        response = HttpResponse(simplejson.dumps(responsed))
        return response
    def get(self, request):

        logout_pass = request.GET.get('logout', None)

        if logout_pass:
            logout(request)

        if request.user.is_active:
            if 'admon' in request.user.groups.all():

                if u'campañas' in request.user.groups.all():
                    response = redirect("/campains/")
                else:
                    response = redirect("/admin/")

                return response
            else:
                response = redirect("/home/")
                return response

        context = {}
        forma = FormCreator()
        widgets = {
            'password': forms.PasswordInput(),
        }

        forma = forma.form_to_model(modelo=User,
                                    fields=[
                                        'username', 'password', 'first_name',
                                        'last_name', 'email'
                                    ],
                                    widgets=widgets)
        for x, y in forma.base_fields.iteritems():
            (y.widget.attrs.update({'class': 'form-control'}))

        context['forma'] = forma

        response = render(request, self.template, context)
        return response
    def post(self, request):
        assert False, 'done'
        response = {}
        data = request.POST.copy()
        imagens = request.POST.get('webimage', None)
        pkid = request.POST.get('pkid', None)
        rowpk = request.POST.get('rowpk', None)

        if rowpk:
            rowupdate = Rowsection.objects.get(pk=rowpk)
            rowupdate.configur = data['columns']
            rowupdate.save()

        if pkid:
            instanced = Mediasection.objects.get(pk=pkid)

        else:
            instanced = None

        data['orden'] = 1
        if imagens:
            imagen = imagens.decode('base64')
            original = Image.open(BytesIO(imagen))
            name_imagen = 'brouch.%s' % original.format.lower()
            data['webimage'] = ContentFile(imagen, name_imagen)
        f = FormCreator()
        forma = f.form_to_model(modelo=Mediasection, excludes=[])
        forma = forma(data, instance=instanced)
        if forma.is_valid():
            saved = forma.save()
            if imagens:
                saved.webimage = data['webimage']
                saved.save()

            response = {'pk': saved.pk}
        else:
            response = forma.errors

        return HttpResponse(simplejson.dumps(response))
    def post(self, request):
        context = {}
        current_site = get_current_site(request)

        data = request.POST.copy()

        data['page_type'] = request.POST.get('page_type', 'homepage')
        pk = request.POST.get('pk', None)
        if pk:
            instanced = Section.objects.get(pk=pk)
            excludes = [
                'sec_slug', 'orden', 'parent', 'webimage', 'mobileimage'
            ]
        else:
            instanced = None
            excludes = []

        data['sec_slug'] = slugify(data['sec_name'])
        data['sitio'] = current_site.pk

        f = FormCreator()
        forma = f.form_to_model(modelo=Section, excludes=excludes)
        forma = forma(data, instance=instanced)

        if forma.is_valid():
            save_reg = forma.save()
            responde = {
                'saved': 'ok',
                'datos': {
                    'pk': save_reg.pk,
                    'mesagge': u'Sección Guardada con éxito',
                },
                'callback': 'reg_success'
            }

            return HttpResponse(simplejson.dumps(responde))
        else:
            returner = {'errors': forma.errors}
            return HttpResponse(simplejson.dumps(returner))
    def post(self, request):
        response = {}
        data = request.POST.copy()
        imagens = request.POST.get('webimage', None)
        smallimg = request.POST.get('smallimg', None)
        pkid = request.POST.get('pkid', None)
        rowpk = request.POST.get('rowpk', None)
        banco = request.POST.get('banco', 0)
        cats = request.POST.getlist('cats[]')

        data['cats'] = simplejson.dumps(cats)

        modelos = [Mediasection, Bancoimg]
        modelo = modelos[int(banco)]

        flotando = request.POST.get('flotando', None)
        invflotando = request.POST.get('invflotando', None)
        imagesize = request.POST.get('imagesize', 6)
        textsize = request.POST.get('textsize', 6)

        if flotando and invflotando:
            configures = {
                'flotando': flotando,
                'invflotando': invflotando,
                'imagesize': imagesize,
                'textsize': textsize
            }
            configures = simplejson.dumps([configures])
            data['configs'] = configures

        if rowpk:
            rowupdate = Rowsection.objects.get(pk=rowpk)
            rowupdate.configur = data['columns']
            rowupdate.save()

        if pkid:

            instanced = modelo.objects.get(pk=pkid)

        else:
            instanced = None

        #data['orden']=1

        if imagens:
            imagen = imagens.decode('base64')
            original = Image.open(BytesIO(imagen))
            name_imagen = 'brouch.%s' % original.format.lower()
            data['webimage'] = ContentFile(imagen, name_imagen)

        if smallimg:
            imagen = smallimg.decode('base64')
            original = Image.open(BytesIO(imagen))
            name_imagen = '%s' % original.format.lower()
            data['smallimage'] = ContentFile(imagen, name_imagen)

        f = FormCreator()

        forma = f.form_to_model(modelo=modelo, excludes=[])
        forma = forma(data, instance=instanced)
        if forma.is_valid():
            saved = forma.save()
            if imagens:
                saved.webimage = data['webimage']
                saved.save()
            if smallimg:
                saved.smallimage = data['smallimage']
                saved.save()

            response = {'pk': saved.pk}
        else:
            response = forma.errors

        return HttpResponse(simplejson.dumps(response))
    def post(self, request):
        response = {}
        data = request.POST.copy()
        imagens = request.POST.get('webimage', None)
        smallimg = request.POST.get('smallimg', None)
        pkid = request.POST.get('pkid', None)
        rowpk = request.POST.get('rowpk', None)
        banco = request.POST.get('banco', 0)
        cats = request.POST.getlist('cats[]')
        descargar = request.POST.get('descargar', None)

        data['cats'] = simplejson.dumps(cats)

        modelos = [Mediasection, Bancoimg]
        modelo = modelos[int(banco)]

        flotando = request.POST.get('flotando', None)
        invflotando = request.POST.get('invflotando', None)
        imagesize = request.POST.get('imagesize', 6)
        textsize = request.POST.get('textsize', 6)

        if flotando and invflotando:
            configures = {
                'flotando': flotando,
                'invflotando': invflotando,
                'imagesize': imagesize,
                'textsize': textsize
            }
            configures = simplejson.dumps([configures])
            data['configs'] = configures

        if pkid:

            instanced = modelo.objects.get(pk=pkid)

        else:
            instanced = None

        if instanced:
            rowupdate = instanced.rowpk
            rowupdate.configur = data['columns']
            rowupdate.save()

        #data['orden']=1

        if imagens:
            imagen = imagens.decode('base64')
            original = Image.open(BytesIO(imagen))
            name_imagen = 'brouch.%s' % original.format.lower()
            data['webimage'] = ContentFile(imagen, name_imagen)

            if banco == '1':
                imagen = imagens.decode('base64')
                imagen = Image.open(BytesIO(imagen))

                wi = original.width
                hi = original.height
                th = hi * 0.6  #200.0
                tw = (th / hi) * wi
                newsize = (int(tw), int(th))
                thimg = imagen.resize(newsize, Image.ANTIALIAS)
                img_str = thimg.tobytes()
                #img_str = img_str.decode('base64')
                name_imagen = 'websize.%s' % imagen.format.lower()
                data['originalfile'] = ContentFile(img_str, name_imagen)

        if smallimg:

            recortale = data.get('recortar', None)
            if recortale:
                imagen = smallimg.decode('base64')
                original = Image.open(BytesIO(imagen))
                name_imagen = 'smallimage.%s' % original.format.lower()
                data['smallimage'] = ContentFile(imagen, name_imagen)
            else:

                wi = original.width
                hi = original.height
                th = 200.0
                tw = (th / hi) * wi
                newsize = (int(tw), int(th))
                thimg = imagen.resize(newsize, Image.ANTIALIAS)
                img_str = thimg.tobytes()
                #img_str = img_str.decode('base64')
                name_imagen = 'smallimage.%s' % imagen.format.lower()
                data['smallimage'] = ContentFile(img_str, name_imagen)

        if descargar:
            extt = request.POST.get('extt', None)
            formats, imgstr = descargar.split(';base64,')
            descargarextext = formats.split('/')
            namefile = 'bancoimg.%s' % (extt)
            data['descargar'] = ContentFile(b64decode(imgstr), name=namefile)

        f = FormCreator()

        forma = f.form_to_model(modelo=modelo, excludes=[])
        forma = forma(data, instance=instanced)
        if forma.is_valid():
            saved = forma.save()
            if imagens:
                saved.webimage = data['webimage']
                saved.save()

            if banco == '1':
                if descargar:
                    b = Bancodwfile(bancopk=saved,
                                    descargar=data['descargar'],
                                    extencion=extt,
                                    tipo=descargarextext[0])
                    b.save()

                    #saved.descargar = data['descargar']
                    #saved.save()

                try:
                    saved.recorte = data['originalfile']
                    saved.save()
                    thimg.save(saved.recorte.path)
                except:
                    pass

            if smallimg:
                saved.smallimage = data['smallimage']
                saved.save()

            response = {'pk': saved.pk}
        else:
            response = forma.errors

        return HttpResponse(simplejson.dumps(response))