def crear_user(request): if request.method == "POST": print "si esta entrando al post " reg = Registro_paciente(request.POST) print reg if reg.is_valid(): print "entro" u_name = reg.cleaned_data['username'] u_first_name = reg.cleaned_data['nombre'] u_last_name = reg.cleaned_data['apellido'] u_dni = reg.cleaned_data['dni'] u_email = reg.cleaned_data['email'] u_password = reg.cleaned_data['password'] u_gender = reg.cleaned_data['gender'] u_estado = reg.cleaned_data['estado'] u_ciudad = reg.cleaned_data['ciudad'] u_edo_civil = reg.cleaned_data['edoCivil'] u_tlf_cel = reg.cleaned_data['tlf_cel'] u_tlf_casa = reg.cleaned_data['tlf_casa'] u = User.objects.create_user(u_name, u_email, u_password) u.is_active = False # Como default no activamos # Generamos una llave de activacion para enviarle a su correo. u.save() # Guardamos al usuario signer = Signer() salt = signer.sign(u.username) activation_key = salt key_expires = datetime.datetime.today() + datetime.timedelta(2) # Creamos una fecha de expiracion por 3 dias p = userProfile() p.user = u # ligamos al usuario p.activationKey = activation_key p.keyExpires = key_expires p.gender = u_gender p.fechaNacimiento = reg.cleaned_data['fechaNacimiento'] p.save() # Guardamos el perfil del Usuario. #Enviamos email de confirmacion. emailUser = u.email subject = 'Bienvenido a InfoSalud' from_email = '*****@*****.**' to = emailUser text_content = '' html_content = '<p>We are happy to get you <strong> Here !!!</strong>:)</p><br>Your username is: %s <br><br> To activate your Acount Please <a href="http://%s/accounts/confirm/%s/%s/">click HERE</a> to confirm your email <br><br><h3>Sincerily: <strong>Eyventu Team</strong></h3>'%(u.username,settings.URL_SERVER,u.username,p.activationKey) msg = EmailMultiAlternatives(subject, text_content, from_email, [to]) msg.attach_alternative(html_content, "text/html") msg.send() return render_to_response('security/sendEmailConfirm.html',context_instance=RequestContext(request)) else: pass else: # is get form = Registro_paciente() reg = Registro_paciente() form = LoginForm() ctx = {'form':form,'register_form':reg,'mensaje':mens} return render_to_response('perfiles/medico/crear_paciente.html',ctx,context_instance=RequestContext(request))
def register_view(request): emailUser = None if request.method == "POST": reg = RegistrationStandardForm(request.POST) if reg.is_valid(): u_name = reg.cleaned_data['username'] u_email = reg.cleaned_data['email'] u_password = reg.cleaned_data['password'] u_gender = reg.cleaned_data['gender'] u_newsletter = reg.cleaned_data['newsletter'] u = User.objects.create_user(u_name, u_email, u_password) u.is_active = False # Como default no activamos # Generamos una llave de activacion para enviarle a su correo. u.save() # Guardamos al usuario signer = Signer() salt = signer.sign(u.username) activation_key = salt now = datetime.datetime.utcnow().replace(tzinfo=utc) #Obtenemos la fecha actual según la zona horariaa key_expires = now + datetime.timedelta(2) # Creamos una fecha de expiracion por 3 dias p = userProfile() p.user = u # ligamos al usuario p.gender = u_gender p.activationKey = activation_key p.keyExpires = key_expires p.save() # Guardamos el perfil del Usuario. #Enviamos email de confirmacion. if u_newsletter: n = newsletter() n.usuario = u n.save() emailUser = u.email subject = 'Bienvenido a InfoSalud' from_email = '*****@*****.**' to = emailUser text_content = '' html_content = '<p>Estamos muy contentos de que te encuentres con <strong> Nosotros !!!</strong></p><br>Tu Nombre de usuario es: %s <br><br> Para activar tu cuenta por favor haz clic <a href="%s/cuenta/confirmar/%s/%s/">en este link</a> <br><br><h3> Esta cuenta debera ser confirmada en un lapso no mayor de 48 horas.</h3><h3>Atentamente: <strong>El equipo de InfoSalud.</strong></h3>'%(u.username,settings.URL_SERVER,u.username,p.activationKey) msg = EmailMultiAlternatives(subject, text_content, from_email, [to]) msg.attach_alternative(html_content, "text/html") msg.send() mensaje = '<h2>Estimado: %s </h2><br/><h3>Hemos enviado un correo a: %s </h3>para que nos confirmes tu cuenta.<br><p> Esta cuenta deberá ser activada en las próximas 48 horas</p><br/><p> de lo contrario la solicitud será cancelada.</p><br/>InfoSalud Team.' ctx = {'mensaje':mensaje,'tipo':'exito'} return render_to_response('security/sendEmailConfirm.html',context_instance=RequestContext(request)) else: form = LoginForm() ctx = {'form':form,'register_form':reg,'errores':'hubo errores en la validacion de los campos, revisa el correo eelectronico y usuario.'} return render_to_response('security/loginStandard.html',ctx,context_instance=RequestContext(request)) else: # is get form = RegistrationStandardForm(initial={'newsletter':True}) reg = RegistrationStandardForm() form = LoginForm() ctx = {'form':form,'register_form':reg,'email':emailUser} return render_to_response('security/loginStandard.html',ctx,context_instance=RequestContext(request))