from flask_migrate import Migrate from flask_sqlalchemy import SQLAlchemy from flask_bootstrap import Bootstrap from flask_login import LoginManager from flask_mail import Mail from flask_sendgrid import SendGrid from flask_mail_sendgrid import MailSendGrid from config import Config from flask import Flask, request app = Flask(__name__) app.config.from_object(Config) # app.config['EXPLAIN_TEMPLATE_LOADING'] = True db = SQLAlchemy(app) migrate = Migrate(app, db) login = LoginManager(app) login.login_view = 'login' login.login_message = 'Please log in to access this page.' bootstrap = Bootstrap(app) mail = MailSendGrid(app) from app import models, routes, handlers
from flask_login import LoginManager, current_user from flask_mail import Mail from flask_mail_sendgrid import MailSendGrid from flask_migrate import Migrate from flask_sqlalchemy import SQLAlchemy from flask_wtf import CSRFProtect from app import settings db = SQLAlchemy() migrate = Migrate() mail = Mail() csrf_protect = CSRFProtect() admin = Admin(name="Maranatha Namibia", template_mode="bootstrap3") login_manager = LoginManager() bcrypt = Bcrypt() mail_send_grid = MailSendGrid() celery = Celery(__name__, broker=settings.CELERY_BROKER) def create_app(): app = Flask(__name__) # Get setting from the setting file app.config.from_object('app.settings') app.config['JSONIFY_PRETTYPRINT_REGULAR'] = True # Set up the database db.init_app(app) # Set up flask migrate
from flask import Flask, render_template, url_for, flash, redirect from flask_sqlalchemy import SQLAlchemy from flask_bcrypt import Bcrypt from flask_login import LoginManager from flask_mail_sendgrid import MailSendGrid from flaskblob.config import Config db = SQLAlchemy() bcrypt = Bcrypt() login_manager = LoginManager() login_manager.login_view = 'users.login' login_manager.login_message_category = 'info' mail = MailSendGrid() def create_app(config_class=Config): app = Flask(__name__) app.config.from_object(Config) db.init_app(app) bcrypt.init_app(app) login_manager.init_app(app) mail.init_app(app) from flaskblob.main.routes import main from flaskblob.posts.routes import posts from flaskblob.users.routes import users from flaskblob.errors.handlers import errors app.register_blueprint(main) app.register_blueprint(posts) app.register_blueprint(users)
from wtforms import StringField, PasswordField, SubmitField from wtforms.validators import DataRequired, Email, EqualTo, Length app = Flask('__name__') app.config['SECRET_KEY'] = os.environ['LDAPASS_SECRET'] app.config['MAIL_SENDGRID_API_KEY'] = os.environ['LDAPASS_MAILKEY'] conf = RawConfigParser() conf.read(os.environ['LDAPASS_CONFIG']) DEBUG = False MIN_PASSWORD_LENGTH = 15 app.config['RECAPTCHA_PUBLIC_KEY'] = os.environ['RECAPTCHA_PUBLIC_KEY'] app.config['RECAPTCHA_PRIVATE_KEY'] = os.environ['RECAPTCHA_PRIVATE_KEY'] flaskmail = MailSendGrid(app) class EmailForm(FlaskForm): mail = StringField( 'Email address', validators=[DataRequired(), Email()], render_kw={"placeholder": "Your LDAP user email address"}) recaptcha = RecaptchaField() submit = SubmitField("Submit", render_kw={"class": "btn btn-primary"}) class PasswordForm(FlaskForm): passwd = PasswordField( 'New password', validators=[