def signup(request): if request.method == 'POST': username = request.POST['username'] passwd = request.POST['passwd'] passwd_confirmation = request.POST['passwd_confirmation'] if passwd != passwd_confirmation: return render(request, 'users/signup.html', {'error': "Passsword confirmation does not match"}) try: user = User.objects.create_user( username=username, password=passwd, ) except IntegrityError: return render(request, 'users/signup.html', {'error': "Username is already in use"}) user.first_name = request.POST['first_name'] user.last_name = request.POST['last_name'] user.email = request.POST['email'] user.save() profile = Profile(user=user) profile.biography = "Prueba BIO" profile.save() return render(request, 'users/signup.html')
def register(request): response = JSONResponse("success") if request.method != 'POST': response.add_error('Bad request.') else: print request.POST['birthday'] valid = True match = User.objects.filter(username = request.POST['username']) if len(match) > 0: response.add_error('Username is already in use.', 'register_error') valid = False match = User.objects.filter(email = request.POST['email']) if len(match) > 0: response.add_error('Email address is already registered.', 'register_error') valid = False if len(request.POST['password']) < 6: response.add_error('The entered password is less than 6 characters.', 'register_error') valid = False if len(request.POST['username']) < 3: response.add_error('The requested username is too short.', 'register_error') valid = False if len(request.POST['firstname']) == 0 or len(request.POST['lastname']) == 0: response.add_error('You must provide both first and last name.', 'register_error') global mail_re if mail_re == None: mail_re = re.compile('^[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+.[a-zA-Z]{2,6}$') if mail_re.match(request.POST['email']) is None: response.add_error('Invalid email address', 'register_error') valid = False if valid == True: user = User.objects.create_user(request.POST['username'], request.POST['email'], request.POST['password']) user.save() profile = Profile() profile.userLink = user profile.birthday = datetime.datetime.strptime(request.POST['birthday'], '%Y-%m-%d').date() profile.firstname = request.POST['firstname'] profile.lastname = request.POST['lastname'] profile.country = request.POST['country'] profile.biography = request.POST['bio'] profile.rights = 0 profile.save() user = authenticate(username=request.POST['username'], password=request.POST['password']) login(request, user) return response.respond()