def user_edit(user_id: int): user = get(User, user_id) if request.method == 'POST': form = UserForm(request.form, obj=user) if form.validate(): form.populate_obj(user) user.save() flash('Yes, usuário alterado com sucesso.', 'success') return redirect(url_for('users.user_index')) else: form = UserForm(obj=user) return render_template('users/edit.html', form=form)
def user_new(): user = User() if request.method == 'POST': form = UserForm(request.form, obj=user) if form.validate(): try: form.populate_obj(user) validate_user(user) user.save() flash('Yes, usuário cadastrado com sucesso.', 'success') return redirect(url_for('users.user_index')) except AttributeError as e: flash(str(e), 'warning') else: form = UserForm(obj=user) return render_template('users/new.html', form=form)
def post(self): userform = UserForm(TornadoMultiDict(self.request.arguments)) try: self._validate_or_exception(userform) # Validate Form new_user = self.db.User() # Declare a blank User model userform.populate_obj(new_user) # Populate User with form data new_user.set_password(userform.passwd.data) new_user.save() except Exception, e: self.render(self.tpl, **{ 'error': e, 'nav_active': 'admin', 'menu_active': 'adduser', 'userform': userform, })
def post(self): userform = UserForm(TornadoMultiDict(self.request.arguments)) try: self._validate_or_exception(userform) # Validate Form new_user = self.db.User() # Declare a blank User model userform.populate_obj(new_user) # Populate User with form data new_user.set_password(userform.passwd.data) new_user.save() except Exception, e: self.render( self.tpl, **{ 'error': e, 'nav_active': 'admin', 'menu_active': 'adduser', 'userform': userform, })
def _user_edit(self, user): try: post_args = TornadoMultiDict(self.request.arguments) if self.current_user.is_admin: # Admin can edit the full UserForm form = UserForm(post_args, update=True) else: # Users can only change their passwords form = PasswordForm(post_args, user) # Validate the form self._validate_or_exception(form) form.populate_obj(user) if form.passwd.data: user.set_password(form.passwd.data) user.save() except Exception, e: self.render(self.tpl, **{ 'error': e, 'user': user, 'userform': form, })
def signup(): form = UserForm(request.form) if not form.validate_on_submit(): return render_template('signup.html', form=form) user = User() form.populate_obj(user) passwd = form.password.data # un-encrypted if not Whitelist.allowed(user.email): flash(u"Desværre - du skal have en email fra et godkendt uddannelsessted", 'error') return render_template('signup.html', form=form) token = ValidationTokens(user=user, type=ValidationTokens.CREATE_USER, password=passwd) db.session.add(user) db.session.add(token) db.session.commit() link = '%s?token=%s' % (url_for(verify.__name__, _external=True), token.token) msg = render_template('email_verification.txt', user=user, link=link) mail.send(receivers=[u'%s <%s>' % (user.username, user.email)], subject=u'Bekræft din email adresse til Iftek-skyen', text=msg) flash(u"""Fedt, du er blevet oprettet!<br /><br /> For at aktivere din konto, skal du bekræfte din email adresse.<br /><br /> Vi har sendt en email med et link<br /><br /> Ses snart i skyen!""") return redirect(url_for(flash_message.__name__))