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': '/admins/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 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(), '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 = None context['forma'] = forma 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() 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): retorno = [] modelos = [ Section, Linkmod, Textmodule, Secrowmenu, 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 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))