def edit_details(request): user = User.objects.get(username=request.user) if request.method == "POST": email = request.POST['email'] try: existent_email = User.objects.get(email=email) except: existent_email = None if existent_email: return render(request, 'ArtVillage/edit_details.html', {"existent": True}) form = EmailForm(data=request.POST, instance=request.user) try: up = UserProfile.objects.get(user=request.user) except: up = None if form.is_valid(): if email: user = form.save(commit=False) user.save() return HttpResponseRedirect('/profile/' + user.username) else: return render(request, 'ArtVillage/edit_details.html', {}) else: return render(request, 'ArtVillage/edit_details.html', {})
def forgot_password(): kwargs = { 'page_title': 'Reset Password', 'form_title': 'Reset Your Password', 'action': url_for('forgot_password'), 'primary_button': 'Submit', 'links': [("Don't have an account?", url_for('signup')), ('Need help?', '#')] } form = EmailForm(request.form) if form.validate_on_submit(): user = User.query.filter_by(email=form.email.data).first() if not user: flash('Cannot find that email, sorry.', 'danger') else: user.reset = True db.session.commit() send_reset_password(user.email) flash('Check your email for a link to reset your password.', 'success') return redirect(url_for('homepage')) return render_template('formbuilder.html', form=form, **kwargs)
def resend_confirmation(): kwargs = { 'page_title': 'Resend Confirmation', 'form_title': 'Resend Confirmation Token', 'action': url_for('resend_confirmation'), 'primary_button': 'Submit', 'links': [("Don't have an account?", url_for('signup')), ('Need help?', '#')] } form = EmailForm(request.form) if form.validate_on_submit(): user = User.query.filter_by(email=form.email.data).first() if not user: flash('Cannot find that email, sorry.', 'danger') elif user.confirmed: flash( 'Your account has already been verified. You can log in using your credentials', 'info') else: send_confirm_email(user.email) flash('Check your email for a link to verify your account.', 'success') return redirect(url_for('homepage')) return render_template('formbuilder.html', form=form, **kwargs)
def reset_email(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): ul = serv.login(g.user['email'],form.password.data) if ul: #TODO:发送确认邮件 try: uri = serv.send_lock_request("user.confirm_email", ul.id) up = g.db.query(UserProfile).filter(UserProfile.user_id==ul.id).one() up.email = form.email.data g.db.flush() g.db.commit() success = u"确认邮箱的邮件已经发出,请登录邮箱点击确认链接,然后才能使用新邮箱登陆" msg = Message(u"登陆邮箱变更确认邮件", sender="*****@*****.**", recipients=["*****@*****.**"]) msg.html = "点击下面链接确认登陆邮件变更,点击后用新邮箱登陆爱普云平台<br/><a href=\"http://%s%s\">%s</a>"%(settings.SERVER, uri, uri) g.mail.send(msg) except Exception, e: g.db.rollback() log.error(print_debug(e)) errors = [u"未知异常"] else: errors = [u"登陆密码输入不正确"] else: errors = [v[0] for k, v in form.errors.iteritems()]
def TmcData5(request): """ if CheckAccess(request,'2') != 'OK': return render_to_response("tmc/notaccess/tmc.html") """ ## --- Номер заявки --- try: tmc_id = request.GET['tmc_id'] request.session['tmc_id'] = tmc_id except: pass try: tmc_id = request.session['tmc_id'] except: return HttpResponseRedirect("/tmc") if request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): email = form.cleaned_data['email'] Email2Ruk(email, tmc_id) d = GetTmcData(tmc_id) form = EmailForm(None) s = GetLastStatus(tmc_id) c = RequestContext(request, {'d': d, 'form': form, 's': s}) c.update(csrf(request)) return render_to_response("tmc/tmcdata5.html", c)
def password_reset_via_email(): form = EmailForm() if form.validate_on_submit(): user = User.query.filter_by(email=form.email.data).first() if user is None: flash('Error! Invalid email address!', 'danger') return render_template('users/password_reset_via_email.html', form=form) if user.email_confirmed: @copy_current_request_context def send_email(email_message): with current_app.app_context(): mail.send(email_message) # Send an email confirming the new registration message = generate_password_reset_email(form.email.data) email_thread = Thread(target=send_email, args=[message]) email_thread.start() flash('Please check your email for a password reset link.', 'success') else: flash( 'Your email address must be confirmed before attempting a password reset.', 'danger') return redirect(url_for('users.login')) return render_template('users/password_reset_via_email.html', form=form)
def forgot_password(request): if request.method == 'POST': form = EmailForm(request.POST) login_form = LoginForm(request.POST) if form.is_valid(): email = form.cleaned_data['email'] user = get_object_or_404(CustomUser, email=email) salt = hashlib.sha1(str(random.random())).hexdigest()[:5] user.activation_key = hashlib.sha1(salt+user.email).hexdigest() #user.key_expires = timezone.now() + timezone.timedelta(100) user.save() plaintext = get_template('email/password_reset.txt') htmly = get_template('email/password_reset.html') d = Context({'user': user, 'site_url': site_url}) subject, from_email, to = 'Восстановление пароля', '*****@*****.**', user.email text_content = plaintext.render(d) html_content = htmly.render(d) msg = EmailMultiAlternatives(subject, text_content, from_email, [to]) msg.attach_alternative(html_content, "text/html") msg.send() return HttpResponseRedirect(reverse('success_reset')) else: form = EmailForm() login_form = LoginForm() context = {'form': form, 'login_form': login_form} return render(request, "forgot_password.html", context)
def editprofile(request): user = User.objects.get(username=request.user) if request.method == "POST": email = request.POST['email'] try: existent_email = User.objects.get(email=email) except: existent_email = None if existent_email: return render(request, 'fhs/editprofile.html', {"existent": True}) form = EmailForm(data=request.POST, instance=request.user) picform = UserProfileForm(data=request.POST, instance=request.user) try: up = UserProfile.objects.get(user=request.user) except: up = None if form.is_valid() and picform.is_valid(): if email: user = form.save(commit=False) user.save() if 'picture' in request.FILES: up.picture = request.FILES['picture'] up.save() return HttpResponseRedirect('/fhs/profile/' + user.username) else: return render(request, 'fhs/editprofile.html', {})
def inputemail(): """Through Email to get a link for reseting password.""" form = EmailForm() if form.validate_on_submit(): user = Users.query.filter(Users.email == form.email.data) if user.count() != 1: flash("Wrong email, please try again.") else: username = user[0].username email = user[0].email msg = Message(f'for {username}', sender='*****@*****.**', recipients=[f'{email}']) msg.body = URL_HOME + 'resetpw' mail.send(msg) session['username'] = username return 'Mail Sent. Please check your E-mail.' return render_template('users/inputemail.html', form=form)
def send_email(request): if request.method != 'POST': form = EmailForm() return render(request, 'submit_event.html', {'email_form': form}) form = EmailForm(request.POST, request.FILES) if form.is_valid(): subject = form.cleaned_data['subject'] message = form.cleaned_data['message'] email = form.cleaned_data['email'] attach = request.FILES['attach'] try: mail = EmailMessage(subject, message, settings.EMAIL_HOST_USER, [email]) mail.attach(attach.name, attach.read(), attach.content_type) response = mail.send() return render(request, 'submit_event.html', {'message': 'Sent email to %s' % (email)}) except Exception as e: return render(request, 'submit_event.html', {'message': e.message}) else: try: return render(request, 'submit_event.html', {'message': form.message}) except AttributeError: return render(request, 'submit_event.html', {'message': "Please fill out all fields on the form.", "email_form":form})
def reset(): form = EmailForm() if request.method == 'POST': if form.validate() == False: return render_template('reset.html', form=form) else: user = User.query.filter_by( email=form.email.data.lower()).first_or_404() if user: subject = "Password reset requested" token = security.ts.dumps(user.email, salt='recover-key') recover_url = url_for('reset_with_token', token=token, _external=True) html = "Click <a href={}> here </a> to change your password".format( recover_url) security.send_email(subject, user.firstname, user.email, html) signup_form = SignupForm() signin_form = SigninForm() message = "Reset email sent to {}".format(user.email) return render_template('home.html', signup_form=signup_form, signin_form=signin_form, message=message) else: return "That user does not exist" elif request.method == 'GET': return render_template('reset.html', form=form)
def reset_email(): if request.method == "POST": form = EmailForm(request.form) if form.validate(): ul = serv.login(g.user['email'], form.password.data) if ul: #TODO:发送确认邮件 try: uri = serv.send_lock_request("user.confirm_email", ul.id) up = g.db.query(UserProfile).filter( UserProfile.user_id == ul.id).one() up.email = form.email.data g.db.flush() g.db.commit() success = u"确认邮箱的邮件已经发出,请登录邮箱点击确认链接,然后才能使用新邮箱登陆" msg = Message(u"登陆邮箱变更确认邮件", sender="*****@*****.**", recipients=["*****@*****.**"]) msg.html = "点击下面链接确认登陆邮件变更,点击后用新邮箱登陆爱普云平台<br/><a href=\"http://%s%s\">%s</a>" % ( settings.SERVER, uri, uri) g.mail.send(msg) except Exception, e: g.db.rollback() log.error(print_debug(e)) errors = [u"未知异常"] else: errors = [u"登陆密码输入不正确"] else: errors = [v[0] for k, v in form.errors.iteritems()]
def forgot_password(request): if request.method == 'POST': form = EmailForm(request.POST) login_form = LoginForm(request.POST) if form.is_valid(): email = form.cleaned_data['email'] user = get_object_or_404(CustomUser, email=email) salt = hashlib.sha1(str(random.random())).hexdigest()[:5] user.activation_key = hashlib.sha1(salt + user.email).hexdigest() #user.key_expires = timezone.now() + timezone.timedelta(100) user.save() plaintext = get_template('email/password_reset.txt') htmly = get_template('email/password_reset.html') d = Context({'user': user, 'site_url': site_url}) subject, from_email, to = 'Восстановление пароля', '*****@*****.**', user.email text_content = plaintext.render(d) html_content = htmly.render(d) msg = EmailMultiAlternatives(subject, text_content, from_email, [to]) msg.attach_alternative(html_content, "text/html") msg.send() return HttpResponseRedirect(reverse('success_reset')) else: form = EmailForm() login_form = LoginForm() context = {'form': form, 'login_form': login_form} return render(request, "forgot_password.html", context)
def send_message(): form = EmailForm(request.form) if form.validate(): app.config.from_object('email_conf.Config') mail = Mail(app) msg = Message(sender=current_app.config['MAIL_USERNAME'], recipients=[current_app.config['MAIL_USERNAME']], subject=f'message from {form.name.data} through website') mail.body = form.message.data msg.html = f'{form.email_field.data}<br>{mail.body}' mail.send(msg) flash('Message sent', 'success') return render_template('home.html', form=form, mail=current_app.config['MAIL_USERNAME'], nnet_library=nnet_library, library_link=library_links[nnet_library], name=model_name, link=model_links[model_name]) flash('There was an error sending the message', 'error') return render_template('home.html', form=form, mail=current_app.config['MAIL_USERNAME'], nnet_library=nnet_library, library_link=library_links[nnet_library], name=model_name, link=model_links[model_name])
def editprofile(request): user = User.objects.get(username=request.user) if request.method == "POST": email = request.POST['email'] try: existent_email = User.objects.get(email=email) except: existent_email = None if existent_email: return render(request, 'fhs/editprofile.html',{"existent": True}) form = EmailForm(data=request.POST, instance=request.user) picform = UserProfileForm(data=request.POST, instance=request.user) try: up = UserProfile.objects.get(user=request.user) except: up = None if form.is_valid() and picform.is_valid(): if email: user = form.save(commit=False) user.save() if 'picture' in request.FILES: up.picture = request.FILES['picture'] up.save() return HttpResponseRedirect('/fhs/profile/'+user.username) else: return render(request, 'fhs/editprofile.html',{})
def test_email(request): if request.method == 'GET': form = EmailForm() else: form = EmailForm(data=request.POST) if form.is_valid(): form.save() return render_to_response('mail.html', {'form': form})
def add_email_activation(request): form = EmailForm(request.POST) if not form.is_valid(): raise _Error.invalid_email(request.POST['email']) email = form.cleaned_data['email'] token = create_token(email) mailing.verify_email(email, token) return {'email': email}
def re_verify(): form = EmailForm(request.form) if form.validate_on_submit(): send_verification_email(form.get_user()) flash('Check your email for verification!') return redirect(url_for('home')) return render_template('no_email_verification.html', form=form)
def mass_mail(): form = EmailForm() if request.method == 'GET': if 'workshop' in request.args: uid = request.args.get('workshop') workshop = db_session.query(Workshop).filter_by(id=uid).first() return render_template('email.html', form=form, workshop=workshop, title='cutrenet') else: return render_template('email.html', form=form, title='cutrenet') if request.method == 'POST': if form.validate_on_submit(): if form.attachment.data: f = form.attachment.data filename = secure_filename(f.filename) file_path = os.path.join(app.config['UPLOAD_FOLDER'], filename) f.save(file_path) if 'workshop' in request.args: uid = request.args.get('workshop') users = User.query.filter(User.workshops.any(id=uid)).all() flash( u'Correo enviado a todos los participantes del taller', 'success') else: users = User.query.filter(User.roles.any(Role.id.in_([ 2 ]))).all( ) # We pick the users that have role member (ID 2 in table roles) flash(u'Correo enviado a todos los miembros', 'success') email(app, mail, request.form, filename, users) os.remove(file_path) else: if 'workshop' in request.args: uid = request.args.get('workshop') users = User.query.filter(User.workshops.any(id=uid)).all() flash( u'Correo enviado a todos los participantes del taller', 'success') else: users = User.query.filter(User.roles.any(Role.id.in_([ 2 ]))).all( ) # We pick the users that have role member (ID 2 in table roles) flash(u'Correo enviado a todos los miembros', 'success') email(app, mail, request.form, '', users) if 'workshop' in request.args: uid = request.args.get('workshop') workshop = db_session.query(Workshop).filter_by(id=uid).first() return render_template('email.html', form=form, workshop=workshop, title='cutrenet') else: return render_template('email.html', form=form, title='cutrenet')
def email(request, conn=None, **kwargs): """ View to gather recipients, subject and message for sending email announcements """ # Check that the appropriate web settings are available if (not request.session.get('server_settings', False) .get('email', False)): return {'template': 'webadmin/noemail.html'} context = {'template': 'webadmin/email.html'} # Get experimenters and groups. experimenter_list = list(conn.getObjects("Experimenter")) group_list = list(conn.getObjects("ExperimenterGroup")) # Sort experimenters and groups experimenter_list.sort(key=lambda x: x.getFirstName().lower()) group_list.sort(key=lambda x: x.getName().lower()) if request.method == 'POST': # If the form has been submitted... # ContactForm was defined in the the previous section form = EmailForm(experimenter_list, group_list, conn, request, data=request.POST.copy()) if form.is_valid(): # All validation rules pass subject = form.cleaned_data['subject'] message = form.cleaned_data['message'] experimenters = form.cleaned_data['experimenters'] groups = form.cleaned_data['groups'] everyone = form.cleaned_data['everyone'] inactive = form.cleaned_data['inactive'] req = omero.cmd.SendEmailRequest(subject=subject, body=message, groupIds=groups, userIds=experimenters, everyone=everyone, inactive=inactive) handle = conn.c.sf.submit(req) if handle is not None: request.session.modified = True request.session['callback'][str(handle)] = { 'job_type': 'send_email', 'status': 'in progress', 'error': 0, 'start_time': datetime.datetime.now()} form = EmailForm(experimenter_list, group_list, conn, request) context['non_field_errors'] = ("Email sent." "Check status in activities.") else: context['non_field_errors'] = "Email wasn't sent." else: form = EmailForm(experimenter_list, group_list, conn, request) context['form'] = form return context
def patch(self, request, **kwargs): doctor = get_object_or_404(User, pk=kwargs['pk']).doctor data = QueryDict(request.body) form = EmailForm(data, instance=doctor) if form.is_valid(): form.save() doctorJSON = serializers.serialize("json", [doctor]) return HttpResponse(doctorJSON, content_type='application/json') return HttpResponse(status=500)
def send_email(request, sent=None): """ Send an email to all club members. """ form = EmailForm() template='send_email.html' users = [] send_errors = [] if request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): form = form.cleaned_data subject = form['subject'] message = form['message'] try: users = User.objects.filter( is_active=True, userprofile__want_email=True, ) except ObjectDoesNotExist: error = "Can't pull up the user list!" return error_404(request, error) for user in users: try: user_email = user.email send_mail(subject, message, SERVER_EMAIL, [user_email], fail_silently=False, ) except SMTPException: # Need to grab Exception and pass it to template error = "There was an error sending mail!" return error_404(request, error) except: error = "There was an error sending mail!" return error_404(request, error) return HttpResponseRedirect(reverse(sent_email)) else: form = EmailForm(request.POST) ctxt = { 'request' : request, 'form' : form, 'users' : users, 'page_name' : 'Email All Members', 'media_url' : MEDIA_URL, } return render_to_response(template, ctxt)
def post(self, request, *args, **kwargs): """Handles the POST request to the 'account_forgot_password' named route. Args: request. Returns: A HttpResponse with a forgot_password_recovery_status template otherwise, return forgot_password template. """ email_form = EmailForm(request.POST, auto_id=True) if email_form.is_valid(): try: # get the account for that email if it exists: input_email = email_form.cleaned_data.get('email') registered_user = User.objects.get(email__exact=input_email) # generate a recovery hash url for that account: recovery_hash = Hasher.gen_hash(registered_user) url_str = str( reverse_lazy('account_reset_password', kwargs={'recovery_hash': recovery_hash})) recovery_hash_url = request.build_absolute_uri(url_str) # compose the email: recovery_email_context = RequestContext( request, {'recovery_hash_url': recovery_hash_url}) subject, from_email, to = 'TheEventDiary: Password Recovery', 'Theeventdiary <*****@*****.**>', registered_user.email html = loader.get_template( 'forgot_password_recovery_email.html').render( recovery_email_context) text = loader.get_template('forgot_password_recovery_email.txt' ).render(recovery_email_context) msg = EmailMultiAlternatives(subject, text, from_email, [to]) msg.attach_alternative(html, "text/html") email_status = msg.send() # inform the user of the status of the recovery mail: context = { 'page_title': 'Forgot Password', 'registered_user': registered_user, 'recovery_mail_status': email_status, } return render(request, 'forgot_password_recovery_status.html', context) except ObjectDoesNotExist: # set an error message: messages.add_message( request, messages.ERROR, 'The email you entered does not \ belong to a registered user!') context = { 'page_title': 'Forgot Password', 'email_form': email_form, } return render(request, 'forgot_password.html', context)
def save_email(): form = EmailForm(request.form) if form.validate(): db = get_db() db.execute('''INSERT INTO emails (email, registered) VALUES (?, ?)''', (request.form.get('email'), datetime.utcnow().isoformat())) db.commit() return render_template('email.html', email=Markup.escape(form.email.data)) else: return redirect("/")
def commit(request): if request.method == "POST": ef = EmailForm(request.POST) if ef.is_valid(): s = Signup(email=ef.cleaned_data["email"]) s.save() cats = ["volunteer", "outdoors", "food", "drink", "entertain", "winter", "rents"] resp_dict = models.get_acts_from_cats(cats) return render_to_response("home.html", resp_dict, RequestContext(request)) else: ef = EmailForm() return render_to_response("commit.html", {"form": ef}, RequestContext(request))
def email(request): if request.method == 'POST': form = EmailForm(request.POST, error_class=AlertErrorList) if form.is_valid(): result = EmailSender().send(form.cleaned_data["email"], form.cleaned_data['message']) return HttpResponseRedirect('/') else: form = EmailForm(error_class=AlertErrorList) return render_to_response('email/email.html', {'form': form }, context_instance=RequestContext(request))
def profile(): form = EmailForm() if form.validate_on_submit(): g.user.email = form.email.data db.session.add(g.user) db.session.commit() flash("Email was changed", "success") return redirect(url_for("index")) else: flash_errors(form) form.email.data = g.user.email return render_template("profile.html", form=form)
def index(request): if request.method == 'GET': form = EmailForm() return render(request, 'index.html', {'form': form}) elif request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): email = form.cleaned_data['email'] r = requests.post('https://slack.com/api/users.admin.invite', data={ 'token': settings.SLACK_TOKEN, 'email': email, }) if not r.status_code == 200: print r.content errors = [] invites_list = [] data = json.loads(r.content) if 'ok' in data and not data['ok']: errors.append('Slack: {}'.format(data['error'])) else: invites_list.append('Slack') mailchimp_api = mailchimp.Mailchimp(settings.MAILCHIMP_API_KEY) try: mailchimp_api.lists.subscribe('29b5ace6f2', {'email': email}) invites_list.append('Newsletter') except mailchimp.ListAlreadySubscribedError: errors.append('Already subscribed to newsletter') r = requests.get( 'https://civictools.appspot-preview.com/api/v1/invite', params={ 'teamId': '-Kd27R2-vkjuWxHEQ23A', 'secret': settings.AMPLIFY_SECRET, 'email': email }) if not r.status_code == 200: errors.append('Failed to send Amplify invite') else: invites_list.append('Amplify') msg = '' if errors: msg += '{}</br>'.format(', '.join(errors)) if invites_list: msg += 'Invite(s) sent for: {}'.format(', '.join(invites_list)) form = EmailForm return render(request, 'index.html', {'form': form, 'msg': msg}) else: raise Http404('method not allowed')
def adminemail(request): if request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): user = User.objects.get(id=request.user.id) user.email = form.cleaned_data['email'] user.save() return redirect('/account/profile/' + str(request.user.id)) else: user = User.objects.get(id=request.user.id) form = EmailForm(instance=user) return render(request, 'form.html', {'form': form})
def publish_poster(id_admin): p = Poster.query.filter_by(id_admin=id_admin).first_or_404() form = EmailForm() if form.validate_on_submit(): p.email = form.email.data db.session.add(p) db.session.commit() send_admin_info(p, sender=app.config['MAIL_FROM']) flash( 'Information successfully updated! You should receive an email soon.' ) return redirect(url_for('publish_poster', id_admin=p.id_admin)) return render_template('publish_poster.html', form=form, poster=p)
def email(request): if request.method == "POST": form = EmailForm(request.POST) if form.is_valid(): send_a_letter.delay(form.cleaned_data["sender"],form.cleaned_data["recipient"], form.cleaned_data["subject"],form.cleaned_data["message"]) return HttpResponse("all sent. thanks.") else: form = EmailForm() return render(request, 'examples/email.html', { 'form' : form })
def frontend_change(request): uform = EmailForm(request.POST or None) if uform.is_valid(): # form.save() messages.info(request, 'An email has been sent, Please check') return redirect('.') return render_to_response('notification.html', locals(), RequestContext(request))
def sign_in(): form = EmailForm() if form.validate_on_submit(): email = form.email.data try: user = User.get(email=email) except User.DoesNotExist: #print ('errorrrrrrr!') return render_template('sign_in.html', form=form, login_error=True, reg_url=url_for('reg')) else: log_user(user) return redirect(url_for('index')) return render_template('sign_in.html', form=form, login_error=False, reg_url=url_for('reg'))
def EmailIt(): form = EmailForm() global file_name text2 = open(file_name, 'r+') contents = text2.read() text2.close() if (form.validate_on_submit()): emailsender(form.email.data) flash('Email sent', 'info ') return render_template('contents.html', title="read", contents=contents) return render_template('emailit.html', title="emailit", form=form)
def send_message(): form = EmailForm(request.form) if form.validate(): app.config.from_object('email_conf.Config') mail = Mail(app) msg = Message(sender=current_app.config['MAIL_USERNAME'], recipients=[current_app.config['MAIL_USERNAME']], subject=f'message from {form.name.data} through website') mail.body = form.message.data msg.html = f'{form.email.data}<br>{mail.body}' mail.send(msg) return jsonify({'status': 'success'}) print('error while sending email') return jsonify({'status': 'error'})
def send_email(request): """ Send a new email. """ email_form = EmailForm(user=request.user) if request.method == "POST": email_form = EmailForm(request.POST,user=request.user) if email_form.is_valid(): print email_form.cleaned_data['required_fields'] from_account = email_form.cleaned_data['from_account'] send_templated_email(request.user, email_form.contacts, from_account, email_form.cleaned_data['subject'], email_form.cleaned_data['html'], email_form.cleaned_data['text']) messages.success(request, "%s sent" % email_form.cleaned_data['subject']) # return redirect("index") return render(request, "emails/send.html", {"form": email_form})
def post(self, request): form = EmailForm(request.POST) if form.is_valid(): worksheet_guid = form.cleaned_data["id"] worksheet = Worksheet.objects.get(guid=worksheet_guid) recipient = form.cleaned_data["email"] subject = "Your Personalized College Financial Aid Information" body_template = get_template("email_body.txt") body = body_template.render(RequestContext(request, dict(guid=worksheet.guid))) send_mail(subject, body, "*****@*****.**", [recipient], fail_silently=False) document = {"status": "ok"} return HttpResponse(json.dumps(document), content_type="application/json")
def index(request): if request.method == "POST": form = EmailForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.signup_date = timezone.now() post.email_confirmed = True post.save() return redirect('/emailupdate/thanks/') else: form_class = EmailForm return render(request, 'emailupdate/emailupdate.html', { 'form': form_class, })
def save_email(): form = EmailForm(request.form) if form.validate(): db = get_db() db.execute( '''INSERT INTO emails (email, registered) VALUES (?, ?)''', (request.form.get('email'), datetime.utcnow().isoformat())) db.commit() return render_template('email.html', email=Markup.escape(form.email.data)) else: return redirect("/")
def forgot_password(): statsd.increment('api_calls.forgot_password') if request.method == 'POST': logger.info(request.form) form = EmailForm(request.form) if not form.validate(): msg = { 'success': False, 'msg': form.errors, } return jsonify(msg) if secret_key != base64.b64decode(form.sig.data): msg = { 'success': False, 'msg': 'invalid signature'} return jsonify(msg) u = session.query(Person).\ filter(Person.email == form.email.data).\ first() if not u: msg = { 'success': False, 'msg': 'Email not registered!'} return jsonify(msg) m = Message( "Reset Password", recipients=[form.email.data]) content = ( 'Click <a href="http://' + request.headers['Host'] + '/forgot_password?' + 'key=' + urllib.quote(u.pw_hash) + '&email=' + urllib.quote(form.email.data) + '">HERE</a>' + ' to reset your password') m.html = content mail.send(m) msg = { 'success': True, 'msg': 'Mail Sent!'} return jsonify(msg) logger.info(request.args) key = urllib.unquote(request.args['key']) email = urllib.unquote(request.args['email']) u = session.query(Person).\ filter(Person.email == email).first() if u and key == u.pw_hash: response = redirect(url_for('reset_page')) response.set_cookie('email', value=email) response.set_cookie('key', value=urllib.quote(key)) return response return 'Invalid key!'
def reset_password(): form = EmailForm() if form.validate_on_submit(): user = mongo_db.users.User.find_one({'email' : form.email.data}) subject = "Succor password reset requested" token = ts.dumps(user.email, salt='recover-key') recover_url = url_for('reset_with_token', token=token, _external=True) body = render_template('email/recover.txt', url=recover_url) html = render_template('email/recover.html', url=recover_url) send_email(subject, app.config['FROM_EMAIL_ADDRESS'], [user.email], body, html) flash('Check your email for password reset link') return redirect(url_for('home')) return render_template('reset.html', form=form)
def if_email_add(request): email = request.COOKIES.get('email', 'noemailset') if email != 'noemailset': # print email email = urllib.unquote(email) # print email form = EmailForm({'email': email, }) cd = '' if form.is_valid(): cd = form.cleaned_data # print "cleaned data" # print cd["email"] if not EmailCollect.objects.filter(email=cd["email"]): e = EmailCollect(email=cd["email"]) e.save()
def form(): info_form = EmailForm() if info_form.validate_on_submit(): # flash(f"Email sent for {info_form.job_position.data} at {info_form.company_name.data} ", 'success') job_position = info_form.job_position.data company_name = info_form.company_name.data heard_about = info_form.heard_about.data recipient_email = info_form.recipient_email.data send_email(job_position, company_name, recipient_email, heard_about) return redirect(url_for('form', form=info_form)) # return redirect(url_for('email_render', job_position = job_position, company_name = company_name, heard_about = heard_about, recipient_email = recipient_email)) # else: # flash("failure!") # return redirect(url_for('form')) return render_template(r"form.html", form = info_form)
def email(request): if request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): email1 = form.cleaned_data['email'] content1 = form.cleaned_data['content'] send_mail('Subject here', 'Here is the message.', '*****@*****.**', ['*****@*****.**'], fail_silently=False) HttpResponse('<script>alert("Send Succeed");history.back();</script>') return HttpResponseRedirect('/home/') else: form = EmailForm() return render(request, 'useradd.html', {'form': form})
def post(self, request, *args, **kwargs): """Handles the POST request to the 'account_forgot_password' named route. Args: request. Returns: A HttpResponse with a forgot_password_recovery_status template otherwise, return forgot_password template. """ email_form = EmailForm(request.POST, auto_id=True) if email_form.is_valid(): try: # get the account for that email if it exists: input_email = email_form.cleaned_data.get('email') registered_user = User.objects.get(email__exact=input_email) # generate a recovery hash url for that account: recovery_hash = Hasher.gen_hash(registered_user) url_str = str(reverse_lazy('account_reset_password',kwargs={'recovery_hash': recovery_hash})) recovery_hash_url = request.build_absolute_uri(url_str) # compose the email: recovery_email_context = RequestContext(request, {'recovery_hash_url': recovery_hash_url}) subject, from_email, to = 'TheEventDiary: Password Recovery', 'Theeventdiary <*****@*****.**>', registered_user.email html=loader.get_template('forgot_password_recovery_email.html').render(recovery_email_context) text=loader.get_template('forgot_password_recovery_email.txt').render(recovery_email_context) msg = EmailMultiAlternatives(subject, text, from_email, [to]) msg.attach_alternative(html, "text/html") email_status = msg.send() # inform the user of the status of the recovery mail: context = { 'page_title': 'Forgot Password', 'registered_user': registered_user, 'recovery_mail_status': email_status, } return render(request, 'forgot_password_recovery_status.html', context) except ObjectDoesNotExist: # set an error message: messages.add_message( request, messages.ERROR, 'The email you entered does not \ belong to a registered user!') context = { 'page_title': 'Forgot Password', 'email_form': email_form, } return render(request, 'forgot_password.html', context)
def new_email(keyurl): """ """ key = ndb.Key(urlsafe=keyurl) form = EmailForm(request.form) if request.method == 'POST' and form.validate(): email = EmailModel( enterprise = key, email = form.email.data ) try: email.put() return redirect(url_for('admin.edit_enterprise', keyurl=keyurl)) except CapabilityDisabledError: flash('save error', 'error') return render_template('admin/new_email.html', form=form, keyurl=keyurl)
def about_us_page(request): context_dict = {} banners = Banner.objects.all() num = 0 if len(banners) > 1: while num < len(banners): num += 1 banner = banners[num - 1] else: banner = banners[0] print banner history_block = History_Section.objects.get(id=1) directors = Director.objects.all() staff_members = Staff_Member.objects.all() supporter_block = Supporter_Section.objects.get(id=1) supporters = Supporter.objects.all() context_dict['default'] = home_models.Default.objects.all()[0] context_dict['banner'] = banner context_dict['form'] = EmailForm() context_dict['history_block_title'] = history_block.title context_dict['history_block_text'] = history_block.text context_dict['staff_members'] = staff_members context_dict['directors'] = directors context_dict['supporter_block_title'] = supporter_block.title context_dict['supporter_block_text'] = supporter_block.text context_dict['supporters'] = supporters return render(request, 'about_us.html', context_dict)
def post(self, request): form = EmailForm(request.POST) if form.is_valid(): worksheet_guid = form.cleaned_data['id'] worksheet = Worksheet.objects.get(guid=worksheet_guid) recipient = form.cleaned_data['email'] subject = "Your Personalized College Financial Aid Information" body_template = get_template('email_body.txt') body = body_template.render(RequestContext(request, dict(guid=worksheet.guid))) send_mail(subject, body, '*****@*****.**', [recipient], fail_silently=False) document = {'status': 'ok'} return HttpResponse(json.dumps(document), content_type='application/json')
def edit_email(keyurl): email = ndb.Key(urlsafe=keyurl).get() if not email: flash('no such email', 'error') return redirect(url_for('admin.enterprises')) form = EmailForm(request.form) if request.method == 'GET': form.email.data = email.email if request.method == 'POST' and form.validate(): email.email = form.email.data try: email.put() return redirect(url_for('admin.edit_enterprise', keyurl=email.enterprise)) except CapabilityDisabledError: flash('save error', 'error') return render_template('admin/edit_email.html', form=form, keyurl=keyurl)
def adminemail(request): if request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): user = User.objects.get(id=user_id) user.email =form.cleaned_data['email'] user.save() # 記錄系統事件 if is_event_open(request) : log = Log(user_id=request.user.id, event=u'修改信箱<'+user.first_name+'>') log.save() return redirect('/account/profile/'+str(request.user.id)) else: user = User.objects.get(id=request.user.id) form = EmailForm(instance=user) return render_to_response('account/email.html',{'form': form}, context_instance=RequestContext(request))
def remember_password(request): if request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): hash = uuid.uuid4().hex password_remember = PasswordRemember(hash=hash, email=form.cleaned_data['email']) password_remember.save() message = u'Вы запросили восстановление пароля на сайте %s. Для продолжения перейдите по ссылке %s' % \ (settings.SITE_URL ,settings.SITE_URL + "/accounts/reset/" + hash) send_mail(u'Восстановление пароля ' + settings.SITE_URL, message, '*****@*****.**', [form.cleaned_data['email']]) return HttpResponse(u'Ссылка на страницу восстановления пароля была отправлена на адрес, указанный в форме.') else: form = EmailForm() return direct_to_template(request, 'registration/email_form.html', {'form': form})
def awt_frontpage(request): if request.method == 'POST': form = EmailForm(request.POST) if form.is_valid(): try: subscribe_email(form.cleaned_data) messages.success(request, 'Successfully subscribed.') redirect_to = 'awt_frontpage' except mailchimp.ListAlreadySubscribedError: messages.error(request, 'Already subscribed.') redirect_to = 'awt_frontpage' except mailchimp.ValidationError, e: messages.error(request, 'ERROR: %s' % e.args[0]) redirect_to = 'awt_frontpage' except Exception, e: messages.error(request, 'ERROR: %s' % e.args[0]) redirect_to = 'awt_frontpage' return redirect(redirect_to)
def subscribe(): # TODO: conditional on method? # TODO: fill with form data? email_form = EmailForm() mime_type = request.mimetype # json if mime_type == 'application/json': return 'ok' # html else: # Form submission if email_form.validate_on_submit(): sub = Subscription(email_form.email.data) db_session.add(sub) db_session.commit() flash("Thanks! You've been subscribed.") return redirect(url_for('index'))
def editemail(id): user = User.query.get(session['user_id']) emailForm = EmailForm() emailForm.email.default = user.email if emailForm.validate_on_submit(): if (emailForm.email.data != emailForm.email.default): users1 = user.query.all() for user1 in users1: if (emailForm.email.data == user1.email): flash('Error: Email is already in use by another user') return redirect(url_for('show', id=user.id)) user.email = emailForm.email.data db.session.commit() flash('Email Successfully Updated') return redirect(url_for('show', id=user.id)) flash('Your original email, '+user.email+' has been saved') return redirect(url_for('show', id=user.id)) flash('Error: Invalid Email Address') return redirect(url_for('show', id=user.id))