def post(self, request): print("post method called") form = SignUpForm(request.POST) searchform = SearchForm(request.POST) if form.is_valid(): user = form.save(commit=False) user.is_active = False user.save() current_site = get_current_site(request) subject = 'Activate Your MySite Account' message = render_to_string('account_activation_email.html', { 'user': user, 'domain': current_site.domain, 'uid': urlsafe_base64_encode(force_bytes(user.pk)), 'token': account_activation_token.make_token(user), }) to_email = form.cleaned_data.get('email') email = EmailMessage( subject, message, to=[to_email] ) email.send() return render(request, 'gmail_confirm.html') print('form invalid !!') return render(request, 'index.html')
def password_reset(request,email: str = Form(...)): user = models.User.objects.filter(email=email).first() try: mail_subject = 'Reset your password.' message = render_to_string('password_reset_form.html', { 'user':user, 'domain': request.get_host(), 'uid':urlsafe_base64_encode(force_bytes(user.pk)), 'token':account_activation_token.make_token(user), }) print(message) # email = EmailMessage( # mail_subject, message, to=[user.email] # ) # email.send() send_mail( mail_subject, message, settings.EMAIL_HOST_USER, [user.email], fail_silently=False, ) except: raise HttpError(422, "Введены неправильные данные(email)") return "Sent"
def post(self, request, format=None): """ 회원가입 --- parameters: - username: string (필수) - email: email (필수) - password: string (필수) - department: string - enterYear: integer - github: string """ serializer = UserSerializer(data=request.data) if serializer.is_valid(): user = serializer.save() subject = 'UniDev 인증 메일입니다.' message = render_to_string( 'user_activate.html', { 'user': user, 'domain': get_current_site(request).domain, 'uid': urlsafe_base64_encode(force_bytes( user.pk)).decode('utf-8'), 'token': account_activation_token.make_token(user), }) email = EmailMessage(subject, message, to=[user.email]) email.send() return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def form_valid(self, form): # return CreateView.form_valid(self, form) if form.is_valid(): user = form.save(commit=False) user.username = user.email user.is_active = False user.save() # create profile # may be not use this model for now # Profile(user=user).save() # send validate email # collect site name site_name = get_current_site(self.request) # todo: change hard code subject subject = 'Activate account' # generate message # print(urlsafe_base64_encode(force_bytes(user.pk))) message = render_to_string('app/account_activation_email.html', { 'user': user, 'domain': site_name.domain, 'uid': urlsafe_base64_encode(force_bytes(user.pk)).decode("utf-8"), 'token': account_activation_token.make_token(user), }) # send activation link to the user user.email_user(subject, message) return super(RegisterView, self).form_valid(form) else: return super(RegisterView, self).form_invalid(form)
def signup_view(request): # Check if user is already logged-in if not request.user.is_anonymous: return redirect('/explore/') # Check form submission validity and create new user. if request.method == 'POST': form = SignUpForm(request.POST) if form.is_valid(): user = form.save(commit=False) user.is_active = False user.save() current_site = get_current_site(request) subject = 'Activate Your Arcadia Account' message = render_to_string('email/account_activation_email.html', { 'user': user, 'domain': current_site.domain, 'uid': urlsafe_base64_encode(force_bytes(user.pk)).decode(), 'token': account_activation_token.make_token(user), }) user.email_user(subject, message) return redirect('account_activation_sent') else: form = SignUpForm() return render(request, 'registration/signup.html', {'form': form})
def RegisterView(request): msg = '' email = '' password = '' plan = '' if request.POST: email = request.POST.get('email') password = request.POST.get('password') plan = request.POST.get('plan', settings.PINAX_STRIPE_DEFAULT_PLAN) user = User.objects.filter(email=email).first() if user is not None: msg="email_exists" else: user = User() user.username = email user.is_active = False user.email = email user.password = password user.set_password(password) user.save() site_name = get_current_site(request) # todo: change hard code subject subject = 'Activate account' # generate message # print(urlsafe_base64_encode(force_bytes(user.pk))) message = render_to_string('app/account_activation_email.html', { 'user': user, 'domain': site_name.domain, 'uid': urlsafe_base64_encode(force_bytes(user.pk)).decode("utf-8"), 'token': account_activation_token.make_token(user), }) msg = "register_success" # send activation link to the user user.email_user(subject, message) from pinax.stripe.actions import customers customers.create(user=user, plan=plan) return render(request, 'v2/registration/register_done.html', { 'msg': msg, 'email': email, 'password': password}) plans = get_main_plan() return render(request, 'v2/registration/register.html', { 'msg': msg, 'email': email, 'password': password, 'plan': plan, 'plans': plans})
def RegisterView_NEW(request): msg = '' if request.POST: email = request.POST.get('email') password = request.POST.get('password') print(email) user = User.objects.filter(email=email).first() if user is not None: msg = "email_exists" else: user = User() user.username = email user.is_active = False user.email = email user.password = password user.set_password(password) user.save() site_name = get_current_site(request) # todo: change hard code subject subject = 'Activate account' # generate message # print(urlsafe_base64_encode(force_bytes(user.pk))) message = render_to_string( 'app/account_activation_email.html', { 'user': user, 'domain': site_name.domain, 'uid': urlsafe_base64_encode(force_bytes( user.pk)).decode("utf-8"), 'token': account_activation_token.make_token(user), }) msg = "register_success" # send activation link to the user user.email_user(subject, message) print("msg = ") print(msg) return render(request, 'v2/registration/register.html', {'msg': msg})
def signup(request): if request.method == 'POST': form = SignUpForm(request.POST) if form.is_valid(): user = form.save(commit=False) user.is_active = False user.save() current_site = get_current_site(request) subject = 'Activate Your Account' message = render_to_string( 'app/account_activation_email.html', { 'user': user, 'domain': current_site.domain, 'uid': urlsafe_base64_encode(force_bytes(user.pk)), 'token': account_activation_token.make_token(user), }) user.email_user(subject, message) return redirect('account_activation_sent') else: form = SignUpForm(request.POST) return render(request, 'app/signup.html', {'form': form})
def post(self, request, *args, **kwargs): userobj = User() form = ForgotPasswordForm(request.POST) subject = 'Activate Your MySite Account' if form.is_valid(): username_from_form = form.cleaned_data['username'] to_email = form.cleaned_data['email'] user = User.objects.get(username=username_from_form) primarykey = user.id current_site = get_current_site(request) subject = 'Passwor Reset !!' message = render_to_string('newpasswordlink.html', { 'domain': current_site.domain, 'uid': urlsafe_base64_encode(force_bytes(primarykey)), 'token': account_activation_token.make_token(user), }) email = EmailMessage( subject, message, to=[to_email] ) email.send() return render(request, 'sendmail.html')