def register(request): form = CreateUserForm() if (request.method == "POST"): form = CreateUserForm(request.POST) if form.is_valid(): try: user = form.save() sendConfirm(user) # gp = Group.objects.get(name='customer') # user.groups.add(gp) uname = user.username messages.success( request, "Please check you mail for account verification, " + uname + " ! After that, you can successfully log-in !") return redirect('login_module:login') except: messages.info( request, "There is already an account with this email id! ") return redirect('login_module:register') else: messages.info( request, "Please follow the guidelines for registering properly. ") form = CreateUserForm() context = {'form': form} return render(request, 'login_module/createAcc.html', context)
def post(self, request): try: user_model = get_user_model() user = user_model.objects.get(email=request.data['email']) return Response('User Already Exist', status=status.HTTP_400_BAD_REQUEST) except: print('ok' + str(request.data)) user = user_model.objects.create_user( email=request.data['email'], password=request.data['password'], first_name=request.data['first_name'], last_name=request.data['last_name']) user.is_active = False user.save() sendConfirm(user) # print(type(user)) client = ClientSerializer(user) # print(type(client)) mobile = request.data['mobile'] address = request.data['address'] UInfo = UserInfo(Mobile_No=mobile, address=address, user=user) UInfo.save() print(type(UInfo)) clientIn = ClientInfo(UInfo) print(type(ClientInfo)) # print(UInfo) # print(client) # print(clientIn) return Response(client.data, status=status.HTTP_200_OK)
def sign_up(request): if request.method == "GET": return render(request, "userPanel/registration.html") else: name = request.POST.get("name") email = request.POST.get("email") varsity_id = request.POST.get("id") username = varsity_id url = request.POST.get("url") password = request.POST.get("password") user = User.objects.create(username=username, password=password, email=email, is_active=False) user.set_password(password) user.save() Profile.objects.create(user=user, name=name, email=email, varsity_id=varsity_id, uri_link=url) sendConfirm(user) return redirect("login")
def save(self, commit=True): user = super().save(commit=False) user.set_password(self.cleaned_data["password1"]) if commit and settings.REQUIRE_EMAIL_CONFIRMATION: sendConfirm(user) elif commit: user.is_active = True user.save() return user
def sign_up(request): if request.method == "GET": return render(request, "accounts/register.html") else: name = request.POST.get("name") email = request.POST.get("email") department = request.POST.get("department") varsity_id = request.POST.get("id") image = request.FILES.get("image") username = varsity_id url = request.POST.get("url") contact = request.POST.get("contact") password = request.POST.get("password") conPassword = request.POST.get("conPassword") print(image) if password != conPassword: msg = "Passwords didn't match!" return render(request, "accounts/register.html", {"msg": msg}) try: user = User.objects.create(username=username, password=password, email=email, is_active=False) user.set_password(password) user.save() if image: uploaded = uploader.upload(image) link = uploaded["url"] Profile.objects.create(user=user, name=name, image=link, department=department, contact=contact, varsity_id=varsity_id, uri_link=url) else: Profile.objects.create(user=user, name=name, department=department, varsity_id=varsity_id, uri_link=url) sendConfirm(user) except Exception as e: print(e) return render(request, "accounts/register.html", {"msg": "A user with the email or id"}) return redirect("accounts:login")
def form_valid(self, form): user = form.save(commit=False) user.username = user.email user.save() sendConfirm(user) messages.success( self.request, f"Для завершения регистрации, перейдите по ссылке, указанной в письме, отправленное на {user.email}", ) return super().form_valid(form)
def register(request): if request.method == 'POST': username = request.POST['username'] email = request.POST['email'] password1 = request.POST['password1'] password2 = request.POST['password2'] # by writing this condition we are checking that if password1 and password2 are equal or not if password1 == password2: # by writing this condition we are checking that if this email is already registered or not if User.objects.filter(email=email).exists(): messages.info(request, 'email taken already') context = { 'showRegister': True, 'showLogin': False, } return render(request, 'index.html', context) elif User.objects.filter(username=username).exists(): messages.info(request, 'username taken already') context = { 'showRegister': True, 'showLogin': False, } return render(request, 'index.html', context) else: user = User.objects.create_user( username=username, email=email, password=password1) # by writing this only we are hitting the database to store the information user.save() subscription = Subscription.objects.create(user=user) theme = Theme.objects.create(user=user) theme.save() subscription.save() sendConfirm(user) messages.info(request, 'Please check your e-mail') context = { 'showRegister': True, 'showLogin': False, } return render(request, 'index.html', context) else: messages.info(request, 'password not matching') context = { 'showRegister': True, 'showLogin': False, } return render(request, 'index.html', context) return('/') else: return render(request, 'reg.html')
def signup(request): if request.method == "POST": try: username = request.POST['username'] password = request.POST['password'] password2 = request.POST['password2'] email = request.POST['email'] except: msg = "Some of the fields are missing." return render(request, 'accounts/register.html', {'msg': msg}) if len(password) >= 6: if password != password2: msg = "Entered Passwords do not match" return render(request, 'accounts/register.html', { 'msg': msg, 'email': email }) else: try: user = get_user_model().objects.create_user( username, email, password) sendConfirm(user) user.last_send_verification_link = timezone.now() user.save() TokenInstance = RandomToken(user=user, expiry_minutes=20) TokenInstance.save() response = redirect("signupsuccess", token=TokenInstance.token) print(str(response)) response['Location'] += "?" + urllib.parse.urlencode( {'email': email}) return response except IntegrityError as e: msg = "Unable to signup, see now this is a problem" if "UNIQUE" in str(e): if 'email' in str(e): msg = "Account with email already exists" elif 'username' in str(e): msg = "Account with Username already exists" return render(request, 'accounts/register.html', { 'msg': msg, 'email': email }) else: msg = "Password length should be at least 6 digits" return render(request, 'accounts/register.html', { 'msg': msg, 'email': email }) else: return render(request, 'accounts/register.html')
def resend_confirmation_email(request, user_id): try: user = TeacherUser.objects.get(id=user_id) except TeacherUser.DoesNotExist: return render( request, 'common/general_error_page.html', { 'error_message': 'לא ניתן לשלוח מייל אישור הרשמה - המשתמש המבוקש אינו נמצא במערכת' }) sendConfirm(user) return render(request, 'accounts/sent_verification_email.html', context={'new_user': user})
def save(self): account = Account( email=self.validated_data["email"], username=self.validated_data["username"], ) password = self.validated_data["password"] account.set_password(password) if settings.REQUIRE_EMAIL_CONFIRMATION: sendConfirm(account) else: account.save() return account
def signup(request): if request.method == 'POST': form = SignupForm(request.POST) if form.is_valid(): authy_user = authy_api.users.create( email=form.cleaned_data.get('email'), phone=form.cleaned_data.get('contact'), country_code=91) if authy_user.ok(): print(authy_user.id) sms = authy_api.users.request_sms(authy_user.id, {'force': True}) if sms.ok(): print('SMS request successful') user = User.objects.create( username=form.cleaned_data.get('username'), name=form.cleaned_data.get('name'), email=form.cleaned_data.get('email'), contact=form.cleaned_data.get('contact'), password=form.cleaned_data.get('password1'), authy_id=authy_user.id) try: sendConfirm(user) except: return HttpResponse( 'You may have entered a wrong email address. Please check it again!' ) return redirect('verify_otp', authy_user.id) # # else: # login(request, user) # return render(request, 'index.html', {'user': user}) else: return HttpResponse( 'You may have entered a wrong contact number. Please check it!' ) else: print(authy_user.errors()) return render(request, '500.html') else: form = SignupForm() return render(request, 'signup.html', {'form': form})
def registration_submit(request): class ErrorMessages: PASSWORDS_MISMATCH = 'Passwords do not match.' db = DBController() keys = db.UserKeys() try: if request.POST[keys.PASSWORD] != request.POST[keys.CONF_PASSWORD]: error_message = ErrorMessages.PASSWORDS_MISMATCH raise Exception(error_message) except Exception as message: return render(request, 'storeApp/registration.html', { 'error_message': message, }) else: user = db.CreateUser(request.POST) sendConfirm(user) return HttpResponseRedirect(reverse('login'))
def signup_process(request): try: User.objects.get(username=request.POST['username']) return HttpResponseRedirect( reverse('board:signup_fail', args=('username', ))) except: username = request.POST['username'] if request.POST['password'] != request.POST['confirm']: return HttpResponseRedirect( reverse('board:signup_fail', args=('password', ))) password = request.POST['password'] email = request.POST['email'] # Add session!! user = User.objects.create_user(username=username, password=password, email=email) sendConfirm(user) return HttpResponseRedirect(reverse('board:signup_success'))
def signup(request): if request.user.is_authenticated: redirect("Hydroxychloroquine-home") if request.method == "POST": form = forms.UserRegistrationForm(request.POST) if form.is_valid(): user = form.save(commit=False) user.is_active = False user.save() sendConfirm(user) return redirect("Hydroxychloroquine-loginFirst") else: for k in form.errors.get_json_data(): v = form.errors.get_json_data()[k][0]["message"] messages.error(request, v) # print(v) else: form = forms.UserRegistrationForm() return render(request, "Hydroxychloroquine/signup.html", {"form": form})
def register(request): if request.method == 'POST': first_name = request.POST['first_name'] last_name = request.POST['last_name'] email = request.POST['email'] username = request.POST['username'] password = request.POST['password'] password_confirmation = request.POST['password_confirmation'] if password == password_confirmation: if User.objects.filter(username=username).exists(): messages.info(request, 'username already taken') return redirect('/') elif User.objects.filter(email=email).exists(): messages.info(request, 'email is already taken') return redirect('/') else: #user = get_user_model().objects.create(username=username, password=password, email=email, first_name=first_name, last_name=last_name) user = User.objects.create_user(username=username, password=password, email=email, first_name=first_name, last_name=last_name) sendConfirm(user) #user = User.objects.create_user(username=username,password=password,email=email,first_name=first_name,last_name=last_name) #user.save(); redirect('/') else: messages.info(request, 'Password do not match') return redirect('/') messages.info( request, 'You have successfully registered your account. Please check your email for confirmation.' ) return redirect('/') else: return render(request, 'register.html')
def emailnotverified(request): if request.user.is_verified: return redirect('dashboard') time = timezone.now() diff = time - request.user.last_send_verification_link print(diff.seconds) if diff.seconds < 300: return render(request, 'accounts/email_not_verified.html', { 'wait': True, 'time': 300 - diff.seconds }) if request.method == "POST": user = request.user sendConfirm(user) user.last_send_verification_link = timezone.now() user.save() TokenInstance = RandomToken() TokenInstance.save() msg = "Confirmation Email successfully sent, check your email." return redirect('success', token=TokenInstance.token, msg=msg) return render(request, 'accounts/email_not_verified.html', {'wait': False})
def can_assist(request): if request.method == 'POST': email = request.POST['email'] name = request.POST['name'] ngo_name = request.POST['ngo_name'] addr = request.POST['address'] city = request.POST['city'] state = request.POST['state'] pin = request.POST['pin'] phone_number = request.POST['phone_number'] assistance_offer = request.POST['assistance_offer'] message = request.POST['message'] # Saving entries entry = CanAssist.objects.create(email=email,name=name,ngo_name=ngo_name,addr=address,city=city, state=state,pin=pin,phone_number=phone_number,assistance_offer=assistance_offer,message=message) entry.save() sendConfirm(entry) return redirect('success') return render(request, 'interface/can_assist.html')
def assistance(request): if request.method == 'POST': email = request.POST['email'] name = request.POST['name'] addr1 = request.POST['address1'] addr2 = request.POST['address2'] city = request.POST['city'] state = request.POST['state'] pin = request.POST['pin'] phone_number = request.POST['phone_number'] assistance_needed = request.POST['assistance_needed'] message = request.POST['message'] # Saving entries entry = Assistance.objects.create(email=email,name=name,addr1=address,addr2=address2,city=city, state=state,pin=pin,phone_number=phone_number,assistance_needed=assistance_needed,message=message) entry.save() sendConfirm(entry) return redirect('success') return render(request, 'interface/assistance.html')
def signup(request): username = request.POST['username'] password = request.POST['pwd'] r_password = request.POST['re_pwd'] phone = request.POST['phone'] email = request.POST['email'] print(email, username, password) if username == '' or email == '': messages.add_message(request, messages.ERROR, 'Blank fields not accepted') return redirect('costumer_register') if password != r_password: messages.add_message(request, messages.ERROR, 'Password and Re-Enter password not matching') return redirect('costumer_register') if User.objects.filter(email=email).exists(): messages.add_message(request, messages.ERROR, 'Email already exists') return redirect('costumer_register') if User.objects.filter(username=username).exists(): messages.add_message(request, messages.ERROR, 'Username already Exists') return redirect('costumer_register') #user = get_user_model().objects.create(username=username, password=password, email=email) User.objects.create_user(username=username, password=password, email=email, is_active=False).save() user = get_user_model().objects.get(email=email) uid = User.objects.get(email=email).id print(uid) CostumerModel(userid=uid, phoneno=phone).save() sendConfirm(user) messages.add_message(request, messages.ERROR, 'Registration Succesful') return redirect('costumer_login')
def register(request): if request.user.is_authenticated: logout(request) if request.method == "GET": return render(request, "registration/register.html", { "user_form": CustomUserCreationForm, 'student_form': StudentRegForm }) elif request.method == "POST": user_form = CustomUserCreationForm(request.POST) student_form = StudentRegForm(request.POST) if user_form.is_valid() and student_form.is_valid(): user = user_form.save() user.student.credit_points = student_form.cleaned_data[ "credit_points"] user.student.semester = student_form.cleaned_data["semester"] user.student.degree_path = student_form.cleaned_data["degree_path"] user.student.faculty = student_form.data.get("faculty") # not using cleaned_data because clean data returns faculty model and student.faculty is saved as charfield user.student.want_emails = student_form.cleaned_data["want_emails"] user.student.save() sendConfirm( user ) # sets EMAIL_ACTIVE_FIELD to false and sends confirmation email # login(request, user) return redirect(reverse("verification_email_sent")) else: # one of the forms is not valid: error_list = str(user_form.errors) + str(student_form.errors) return render( request, "registration/register.html", { "user_form": user_form, 'student_form': student_form, 'error_list': error_list })
def register_view(request): #currently disabled in favor of social authentication raise Http404 title = "Register" next = request.GET.get('next') form = UserRegisterForm(request.POST or None) if form.is_valid(): user = form.save(commit=False) password = form.cleaned_data.get('password') user.set_password(password) user.save() new_user = authenticate(username=user.username, password=password) # login(request, new_user) sendConfirm(user) messages.success( request, "Your account is successfully registered. Welcome, %s. Please check your email account for a verification request." % (user.username)) if next: return redirect(next) return redirect("/") context = {"form": form, "title": title} return render(request, "account_form.html", context)
def register(request): if request.method == "POST": form = RegisterForm(request.POST) if form.is_valid(): first_name = form.cleaned_data['first_name'] last_name = form.cleaned_data['last_name'] try: teacher_object = Teacher.objects.get(first_name=first_name, last_name=last_name) except Teacher.DoesNotExist: messages.error( request, f"המורה {first_name} {last_name} לא רשומ/ה במאגר בית הספר") return render(request, "accounts/register.html", {'form': form}) try: password_validation.validate_password( form.cleaned_data['password']) except ValidationError: messages.error( request, "הסיסמא צריכה להכיל אותיות באנגלית ומספרים ביחד, ולהיות באורך של 8 תווים לפחות" ) return render(request, "accounts/register.html", {'form': form}) if form.cleaned_data['password'] != form.cleaned_data[ 'confirm_password']: messages.error(request, "הסיסמאות אינן תואמות זו לזו") return render(request, "accounts/register.html", {'form': form}) username = get_username(first_name, last_name) # If a user isn't verified yet (didn't click the email link), we give them a chance to register # again, with a different email for instance. try: non_verified_user = TeacherUser.objects.get(username=username, is_active=False) except TeacherUser.DoesNotExist: class EmptyUser: @property def email(self): return '' def __bool__(self): return False non_verified_user = EmptyUser() if TeacherUser.objects.filter( email=form.cleaned_data['email']).exclude( email=non_verified_user.email).exists(): messages.error(request, "קיים כבר משתמש עם כתובת המייל הזו") return render(request, "accounts/register.html", {'form': form}) if non_verified_user: non_verified_user.delete() try: user = TeacherUser.objects.create_user( username=username, email=form.cleaned_data['email'], password=form.cleaned_data['password'], pronoun_choice=form.cleaned_data['pronoun_choice'], first_name=first_name, last_name=last_name, house=form.cleaned_data['house'], is_homeroom_teacher=form. cleaned_data['is_homeroom_teacher'], teacher_object=teacher_object) sendConfirm(user) return render(request, 'accounts/sent_verification_email.html', context={'new_user': user}) except (IntegrityError, ValidationError): messages.error(request, f"המשתמש/ת {teacher_object} כבר קיימ/ת במערכת") else: form = RegisterForm() context = {'form': form} return render(request, "accounts/register.html", context)
def resend(request, username): user = CustomUser.objects.get(username=username) sendConfirm(user) return render(request, 'link_sent.html', {'username': user.username})
def send_verification_email(user): sendConfirm(user) return
def register(request): if request.user.is_authenticated: return redirect('home') else: if request.method == 'POST': first_name = request.POST.get('fname') last_name = request.POST.get('lname') email = request.POST.get('email') password = request.POST.get('password') confirm_password = request.POST.get('confirm_password') if email == '': messages.error(request, "Can't leave email empty", extra_tags="email") return HttpResponseRedirect(request.path) else: try: validate_email(email) except ValidationError: messages.error(request, "Please enter a valid email", extra_tags="email") return HttpResponseRedirect(request.path) if User.objects.filter(email=email).exists(): messages.error(request, "This email is already registered", extra_tags="email") return HttpResponseRedirect(request.path) if not first_name.isalpha(): messages.error(request, "Invalid first name.", extra_tags="fname") messages.info(request, email, extra_tags="email") return HttpResponseRedirect(request.path) if not last_name.isalpha(): messages.error(request, "Invalid last name.", extra_tags="lname") messages.info(request, email, extra_tags="email") messages.info(request, first_name, extra_tags="fname") return HttpResponseRedirect(request.path) if password == "": messages.error(request, "Can't give empty password", extra_tags="password") messages.info(request, email, extra_tags="email") messages.info(request, first_name, extra_tags="fname") messages.info(request, last_name, extra_tags="lname") return HttpResponseRedirect(request.path) elif not password == confirm_password: messages.error(request, "Password doesn't match.", extra_tags="password match") messages.info(request, email, extra_tags="email") messages.info(request, first_name, extra_tags="fname") messages.info(request, last_name, extra_tags="lname") return HttpResponseRedirect(request.path) elif len(password) < 8: messages.error(request, "Password must be at least 8 characters", extra_tags="password") return HttpResponseRedirect(request.path) user = User.objects.create_user(email=email, first_name=first_name, last_name=last_name, password=password) user = auth.authenticate(email=email, password=password) if user is not None: auth.login(request, user) request.session['user_id'] = user.id sendConfirm(user) return redirect('home') else: return redirect('profile') else: return render(request, 'user/register.html')
def form_valid(self, form): user = form.save() login(self.request, user) sendConfirm(user) return redirect("accounts:complete_faculty_profile")
def myCreateView(request): user = get_user_model().objects.create(username=username, password=password, email=email) sendConfirm(user) return render('user/index.html')