Ejemplo n.º 1
0
def register_extensions(app):
    db.init_app(app)
    Migrate(app, db)

    moment = Moment(app)

    ckeditor = CKEditor(app)

    configure_uploads(app, uploaded_pdfs)
    patch_request_class(app, size=app.config["MAX_CONTENT_LENGTH"])

    share = Share(app)

    login_manager = LoginManager()
    login_manager.init_app(app)

    @login_manager.user_loader
    def user_loader(id):
        if User.query.get(id):
            user = User.query.get(id)
        elif Company.query.get(id):
            user = Company.query.get(id)
        return user

    login_manager.login_view = "front.login"
    login_manager.login_message = "请登录而后访问网页"
Ejemplo n.º 2
0
def create_app():
    # App
    app = Flask(__name__)

    # Secret key for validate Forms
    app.secret_key = os.getenv("SECRET_KEY_FORM")

    # Init social share component:
    share = Share()
    share.init_app(app)

    return app
Ejemplo n.º 3
0
    def setUp(self):
        app = Flask(__name__)
        app.testing = True
        self.share = Share(app)

        @app.route('/')
        def index():
            return render_template_string(
                '{{ share.load() }}\n{{ share.create()}}')

        self.context = app.app_context()
        self.context.push()
        self.client = app.test_client()
Ejemplo n.º 4
0
def create_app():
    # 1. 创建App对象
    app = Flask(__name__)
    # 加载配置信息
    app.config.from_pyfile("config.ini")

    # db初始化配置App
    db.init_app(app)

    # Session 对象, 存储到redis 中
    # Session(app)

    # 添加csrf 保护
    CKEditor(app)
    # 添加时间
    Moment(app)

    # loginManager() 登录 对象
    login_manager = LoginManager()
    login_manager.init_app(app)
    configure_uploads(app, uploaded_resume)
    configure_uploads(app, uploaded_logo)

    @login_manager.user_loader
    def user_loader(id):
        if User.query.get(id):
            return User.query.get(id)
        elif Company.query.get(id):
            return Company.query.get(id)

    app.add_template_filter(show_companys_status_name)
    app.add_template_filter(show_company_website)
    login_manager.login_view = 'index.login'

    # 基于jinja2模板创建社交共享组件
    share = Share()
    share.init_app(app)

    # 注册蓝图
    register_blueprints(app)

    # 添加数据库迁移工具
    manager = Manager(app)
    # 生成 migrate 对象,用来迁移数据库
    migrate = Migrate(app, db)
    # 添加db 命令
    manager.add_command('db', MigrateCommand)

    return manager
Ejemplo n.º 5
0
    def setUp(self):
        self.mobile_agent = {
            'HTTP_USER_AGENT':
            'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) \
        AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1'
        }

        app = Flask(__name__)
        app.testing = True
        self.share = Share(app)

        @app.route('/')
        def index():
            return render_template_string(
                '{{ share.load() }}\n{{ share.create() }}')

        self.context = app.app_context()
        self.context.push()
        self.client = app.test_client()
Ejemplo n.º 6
0
def register_extensions(app):
    db.init_app(app)
    Migrate(app, db)
    CKEditor(app)
    Moment(app)
    share = Share()
    share.init_app(app)
    login_manager = LoginManager()
    login_manager.init_app(app)
    configure_uploads(app, uploaded_resume)
    configure_uploads(app, uploaded_logo)
    patch_request_class(app, app.config['UPLOADED_SIZE'])
    login_manager = LoginManager()
    login_manager.init_app(app)

    @login_manager.user_loader
    def user_loader(id):
        if User.query.get(id):
            return User.query.get(id)
        elif Company.query.get(id):
            return Company.query.get(id)
    login_manager.login_view = 'front.login'
Ejemplo n.º 7
0
from flask_script import Manager
from flask_migrate import Migrate, MigrateCommand

# import flask_whooshalchemy as wa
from flask import abort

# CREATE INSTANCE
app = Flask(__name__)
WTF_CSRF_SECRET_KEY = os.urandom(32)
app.config['SECRET_KEY'] = os.environ.get('SECRET_KEY', 'WTF_CSRF_SECRET_KEY')
app.config['RECAPTCHA_PUBLIC_KEY'] = os.environ.get('RECAPTCHA_SITE_KEY')
app.config['RECAPTCHA_PRIVATE_KEY'] = os.environ.get('RECAPTCHA_SECRET_KEY')

ckeditor = CKEditor(app)
Bootstrap(app)
share = Share(app)
app.config['WHOOSH_BASE'] = 'whoosh'

# EMAIL CONFIGURATION
app.config['MAIL_SERVER'] = 'smtp.googlemail.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USERNAME'] = os.environ.get('EMAIL_USER')
app.config['MAIL_PASSWORD'] = os.environ.get('EMAIL_PASS')
mail = Mail(app)


# CREATE DB
app.config['SQLALCHEMY_DATABASE_URI'] = os.environ.get("DATABASE_URL", 'sqlite:///ipop.db')
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
Ejemplo n.º 8
0
from app.utils import db, login_manager, get_cart, image_size, json_load
from config import config
from .assets import app_css, app_js, vendor_css, vendor_js
from flask_session import Session
from flask_whooshee import Whooshee

# from app.models import Notification

basedir = os.path.abspath(os.path.dirname(__file__))

mail = Mail()
csrf = CSRFProtect()
compress = Compress()
images = UploadSet('images', IMAGES)
docs = UploadSet('docs', ('rtf', 'odf', 'ods', 'gnumeric', 'abw', 'doc', 'docx', 'xls', 'xlsx', 'pdf'))
share = Share()
moment = Moment()
jwt = JWTManager()
sess = Session()
whooshee = Whooshee()
# Set up Flask-Login
login_manager.session_protection = 'strong'
login_manager.login_view = 'account.login'

import app.models as models


def create_app(config_name):
    app = Flask(__name__)
    app.config.from_object(config[config_name])
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
Ejemplo n.º 9
0
app = Flask(__name__)

track_pageviews = False

conf = DevelopmentConfig if os.environ.get(
    'RWOLFF_ENV') == 'development' else ProductionConfig
app.config['SQLALCHEMY_DATABASE_URI'] = conf.SQLALCHEMY_DATABASE_URI

app.config['SECRET_KEY'] = 'e71b4f38dd5eb138f941907ec7ea6c06'
app.config['PERMANENT_SESSION_LIFETIME'] = dt.timedelta(
    days=2922)  # Set for 8 Years (8 * 365 + 2 leap year days)

db = SQLAlchemy(app)
bcrypt = Bcrypt(app)
migrate = Migrate(app, db, compare_type=True)
Share(app)


class Anonymous(AnonymousUserMixin):
    def __init__(self):
        self.is_contributor = False
        self.is_admin = False


login_manager = LoginManager(app)
login_manager.anonymous_user = Anonymous
login_manager.login_view = 'login'
login_manager.login_message = u"Please login to view that page."
login_manager.login_message_category = 'info'

from rwolff import routes