def useradd(request): if request.method == 'POST': num = Usuario.objects.values("numero").order_by("-numero",)[:1] num = 1 if len(num)==0 else int(num[0]["numero"])+1 frmusuario = UsuarioForm(request.POST) # A form bound to the POST data print request.POST if frmusuario.is_valid(): if request.POST['organismo'] == "1": usernamee = Ministerio.objects.get(nummin=request.POST['dependencia']).iniciales+(serie-len(str(num)))*'0'+str(num) elif request.POST['organismo'] == "2": usernamee = Odp.objects.get(numodp=request.POST['dependencia']).iniciales+(serie-len(str(num)))*'0'+str(num) elif request.POST['organismo'] == "3": usernamee = Gobernacion.objects.get(numgob=request.POST['dependencia']).iniciales+(serie-len(str(num)))*'0'+str(num) user = User.objects.create_user(username=usernamee,email=request.POST['email'],password=request.POST['contrasena'],) if request.POST['nivel'] == "2": user.is_staff = True user.is_superuser = True if request.POST['estado'] == "2": user.is_active = False user.first_name = request.POST['nombres'] user.last_name = request.POST['apellidos'] user.save() usuario = Usuario(user=user,numero=num,usuario=usernamee) frmusuario = UsuarioForm(request.POST, instance=usuario) frmusuario.save() usuario.contrasena = user.password usuario.save() asunto="Bienvenido a la plataforma de Comunicacion Social" mensaje =u"""Desde este momento usted puede usar la Plataforma Intersectorial de Redes Sociales OGCS - PCM. Le adjuntamos su USUARIO Y CONTRASEÑA con el cual podrá acceder a la Plataforma. USUARIO: %s CONTRASEÑA: %s """ % (user.email, request.POST['contrasena']) try: #send_mail(asunto, mensaje, '*****@*****.**', mails) user.email_user(subject=asunto, message=mensaje) except: return redirect('/home/?m=userr',) return redirect('/home/?m=usadd',) else: frmusuario = UsuarioForm() return render_to_response('usuario/usuario.html', {'frmusuario': frmusuario,'opcion':'add','usuario':request.session['nombres'],'fecha':request.session['login_date'],'dependencia': request.POST['dependencia'] if 'dependencia' in request.POST else 0}, context_instance=RequestContext(request),)
def useradd(request,nivel): existe = -1 mensaje= "" tipo = -1 if request.method == 'POST': num = Usuario.objects.values("numero").order_by("-numero",)[:1] num = 1 if len(num)==0 else int(num[0]["numero"])+1 frmusuario = UsuarioForm(request.POST,error_class=DivErrorList) if frmusuario.is_valid(): if request.POST['nivel'] == "1": try: obj = Usuario.objects.get(organismo = Organismo.objects.get(codigo=request.POST['organismo']), dependencia=request.POST['dependencia']) existe = 0 except: existe = 1 elif request.POST['organismo'] == "1" and request.POST['dependencia'] == "1": existe = 2 else: existe = 3 if existe == 1 or existe == 2: if request.POST['organismo'] == "1": usernamee = Ministerio.objects.get(nummin=request.POST['dependencia']).iniciales+(serie-len(str(num)))*'0'+str(num) elif request.POST['organismo'] == "2": usernamee = Odp.objects.get(numodp=request.POST['dependencia']).iniciales+(serie-len(str(num)))*'0'+str(num) elif request.POST['organismo'] == "3": usernamee = Gobernacion.objects.get(numgob=request.POST['dependencia']).iniciales+(serie-len(str(num)))*'0'+str(num) user = User.objects.create_user(username=usernamee,email=request.POST['email'],password=request.POST['contrasena'],) if request.POST['nivel'] == "2": user.is_staff = True user.is_superuser = True if request.POST['estado'] == "2": user.is_active = False user.first_name = request.POST['nombres'] user.last_name = request.POST['apellidos'] #user.user_permissions = get_admin_permissions() if nivel == "2" else get_user_permissions() user.save() usuario = Usuario(user=user,numero=num,usuario=usernamee,nivel=Nivel.objects.get(codigo=request.POST['nivel'])) frmusuario = UsuarioForm(request.POST,request.FILES, instance=usuario) frmusuario.save() usuario.contrasena = user.password usuario.save() asunto="Bienvenido a la plataforma de Redes Sociales" from django.core.mail import EmailMessage t = loader.get_template('home/mail.html') current_site = get_current_site(request) site_name = current_site.name domain = current_site.domain c = { 'email': user.email, 'clave': request.POST['contrasena'], 'domain':domain, 'static':settings.STATIC_URL, 'protocol': request.is_secure() and 'https' or 'http', } try: msg = EmailMessage(asunto, t.render(Context(c)), settings.DEFAULT_FROM_EMAIL, [user.email]) msg.content_subtype = "html" msg.send() except: mensaje= "Usuario creado correctamente,pero no se ha podido enviar el email con los datos del registro." tipo=0 mensaje= "Usuario creado correctamente, se ha enviado un email con los datos del registro." tipo=1 frmusuario = UsuarioForm() else: frmusuario = UsuarioForm() return render_to_response('usuario/usuario.html', {'frmusuario': frmusuario,'opcion':'add','existe':existe,'nivel':nivel,'dependencia': request.POST['dependencia'] if 'dependencia' in request.POST else 0,'mensaje':mensaje,'tipo':tipo}, context_instance=RequestContext(request),)