def get_last_notes(username: str, limit=20) -> list: result = [] user = User.get_or_none(User.name == username) if not user: return [] notes = Note.select().where(Note.user == user).limit(limit).dicts() for note in notes: result.append(note) return result
def validate_email_address(form, field): user = User.get_or_none(User.email_address == field.data) if not user: raise ValidationError('Invalid email address and password') elif user.type > 3: raise ValidationError( 'User does not have administration or operator privileges') elif not check_password_hash(user.password, form.password.data): raise ValidationError('Invalid email address and password')
def login(): form = LoginForm(request.form) if form.validate_on_submit(): user = User.get_or_none(User.email_address == form.email_address.data) if user and check_password_hash(user.password, form.password.data): Log.insert(user_id=user.id, action='LOGIN').execute() session['user'] = model_to_dict(user) flash("Welcome back, {}!".format(user.first_name)) return redirect(request.args.get('next', url_for('main.index'))) return render_template('main/login.html', form=form)
def validate_user_id(form, field): if not User.get_or_none(User.id == field.data): raise ValidationError('User does not exist')
def validate_email_address(form, field): if User.get_or_none(User.email_address == field.data): raise ValidationError('Email address is already registered')
def validate_email_address(form, field): user = User.get_or_none(User.email_address == field.data) if not user or not check_password_hash(user.password, form.password.data): raise ValidationError('Invalid email address and password')
def validate_user_id(form, field): if not User.get_or_none((User.id == field.data) & (User.type == 9)): raise ValidationError('User is not a customer')
def validate_current_password(form, field): user = User.get_or_none(User.id == form.user_id.data) if not user or not check_password_hash(user.password, field.data): raise ValidationError( 'Password does not match your current password')
def get_with_password(username: str, password: str) -> User: password_hash = hash_password(password) return User.get_or_none(User.name == username, User.password_hash == password_hash)
def get(username: str) -> User: return User.get_or_none(User.name == username)
def is_exist(username: str) -> bool: return User.get_or_none(User.name == username) is not None
def check_note_owner(note_id: int, username: str) -> bool: user = User.get_or_none(User.name == username) if not user: return False return Note.get_or_none(Note.id == note_id, Note.user == user) is not None
def validate_user_id(form, field): if not User.get_or_none((User.id == field.data) & (User.type == 9)): raise ValidationError('Customer does not exists')