render_template, redirect, request, flash, url_for, _request_ctx_stack ) from flask.ext.login import ( login_user, login_required, logout_user, current_user, ) from flask.ext.mail import Message from wtforms.validators import Required, Email, EqualTo, ValidationError from wtforms import TextField, PasswordField, HiddenField import re import pprint login_manager.setup_app(app, add_context_processor=True) app.login_manager.login_view = 'login' @login_manager.user_loader def load_user(userid): user = User.query.filter_by(id=userid).first() _request_ctx_stack.top.badgeid = user.badgeid return user class NextURLField(HiddenField): def _value(self): # Cheap way of ensuring we don't get absolute URLs if not self.data or '//' in self.data: return '' if not re.match('^[-_0-9a-zA-Z/?=&]+$', self.data):
from flask import (render_template, redirect, request, flash, url_for, abort, _request_ctx_stack) from flask.ext.login import ( login_user, login_required, logout_user, current_user, ) from flask_mail import Message from wtforms.validators import Required, Email, EqualTo, ValidationError from wtforms import TextField, PasswordField, HiddenField import re login_manager.setup_app(app, add_context_processor=True) app.login_manager.login_view = 'login' @login_manager.user_loader def load_user(userid): user = User.query.filter_by(id=userid).first() _request_ctx_stack.top.user_email = user.email return user class NextURLField(HiddenField): def _value(self): # Cheap way of ensuring we don't get absolute URLs if not self.data or '//' in self.data: return ''
# -*- coding: utf-8 -*- from main import login_page, login_manager, admin_required, housekeeping from lmfdb.base import app # secret key, necessary for sessions, and sessions are # in turn necessary for users to login app.secret_key = '9af"]ßÄ!_°$2ha€42~µ…010' login_manager.setup_app(app) app.register_blueprint(login_page, url_prefix="/users")