예제 #1
0
def create_app(config_class=Config):
    app = Flask(__name__)
    app.config.from_object(Config)

    # init app
    db.init_app(app)
    bcrypt.init_app(app)
    login_manager.init_app(app)
    mail.init_app(app)
    excel.init_excel(app)
    admin = Admin(app,
                  name='BACKEND',
                  template_mode=Config.FLASK_ADMIN_BOOTSTRAP)
    basic_auth.init_app(app)
    csrf.init_app(app)

    # admin
    from KashTable.models import User, File
    from KashTable.views import UserCRUD, FileCRUD  #, MyView
    admin.add_view(UserCRUD(User, db.session))
    admin.add_view(FileCRUD(File, db.session))
    admin.add_link(MenuLink(name='App', url='/'))
    admin.add_link(MenuLink(name='Logout', url='/logout'))

    # routes
    from KashTable.users.routes import users
    from KashTable.main.routes import main
    from KashTable.posts.routes import posts
    from KashTable.errors.handlers import errors
    app.register_blueprint(main)
    app.register_blueprint(users)
    app.register_blueprint(posts)
    app.register_blueprint(errors)

    return app
예제 #2
0
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)

    md.init_app(app)
    pagedown.init_app(app)

    from flaskblog.models import MyAdminIndexView
    admin.init_app(app, index_view=MyAdminIndexView())
    admin.add_link(MenuLink(name='Home', url='/'))
    admin.add_link(MenuLink(name='Logout', url='/logout'))

    from flaskblog.main.routes import main
    from flaskblog.errors.handlers import errors
    from flaskblog.users.routes import users
    from flaskblog.posts.routes import posts

    app.register_blueprint(users)
    app.register_blueprint(posts)
    app.register_blueprint(main)
    app.register_blueprint(errors)

    return app
예제 #3
0
def init_admin(app):
    global admin
    if admin == None:
        admin = Admin(template_mode="bootstrap3", index_view=AdminView())
        admin.init_app(app)
        admin.add_view(UserAdmin(User, db.session))
        admin.add_link(MenuLink(name="Logout", url="/logout"))
        admin.add_link(MenuLink(name="Go back", url="/"))
    return admin
예제 #4
0
def init_admin(app):
    global admin
    if admin == None:
        admin = Admin(template_mode="bootstrap3", index_view=AdminView())
        admin.init_app(app)
        admin.add_view(UserAdmin(User, db.session))
        admin.add_view(ProtectedView(Course, db.session))
        admin.add_view(ProtectedView(Follow, db.session))
        admin.add_view(ProtectedView(ParticipationCode, db.session))
        admin.add_view(ProtectedView(ParticipationRedeem, db.session))
        admin.add_link(MenuLink(name="Logout", url="/logout"))
        admin.add_link(MenuLink(name="Go back", url="/"))
    return admin
예제 #5
0
def create_app(config='settings'):
    warnings.filterwarnings('ignore', message='Fields missing from ruleset')

    app = Flask(__name__)
    app.config.from_object(config)

    if 'STATIC_FOLDER' in app.config:
        app.static_folder = app.config['STATIC_FOLDER']

    db.init_app(app)
    babel.init_app(app)
    mail.init_app(app)
    from application.models import User, Role
    security.init_app(app, datastore=SQLAlchemyUserDatastore(db, User, Role))

    from application.admin import admin_views, FileAdmin
    os.makedirs(app.config['UPLOAD_DIR'], exist_ok=True)
    FileAdminView = FileAdmin(app.config['UPLOAD_DIR'],
                              app.config['UPLOAD_URL'],
                              name='Файлы',
                              url='/admin',
                              endpoint='admin')
    admin = Admin(app, index_view=FileAdminView)
    admin.add_link(MenuLink(name='Вернуться на сайт', category='', url='/'))
    admin.add_views(*admin_views)

    from application.templatetags import EntryRenderExtension
    app.jinja_env.add_extension(EntryRenderExtension)

    from application.views import main
    app.register_blueprint(main, url_prefix='')

    return app
예제 #6
0
def start_views(app, db):
  
  admin = Admin(app, name='appMonitor',base_template='admin/base.html', template_mode='bootstrap3', index_view=HomeView())
  admin.add_view(RoleView(Role, db.session, "Funções", category="Usuários"))
  admin.add_view(UserView(User, db.session, "Usuários",  category="Usuários"))

  admin.add_link(MenuLink(name='Logout', url='/logout'))
예제 #7
0
def configure_menu_links(adm):
    ''' Add links to the admin menu bar. '''
    from flask_admin.menu import MenuLink
    from .config import APP_MENU_LINKS

    for link_args in APP_MENU_LINKS:
        adm.add_link(MenuLink(**link_args))
예제 #8
0
def initialize_app(app, home_endpoint=None):
    models.connect()

    @app.before_request
    def _db_connect():
        models.database.connect()

    @app.teardown_request
    def _db_close(exc):
        if not models.database.is_closed():
            models.database.commit()
            models.database.close()

    admin = Admin(app, name='Raw Table Admin', template_mode='bootstrap3')

    if home_endpoint:
        admin.add_link(
            MenuLink("Devtest Main", url="/", endpoint=home_endpoint))

    admin.add_views(TestBedView(), EquipmentModelView(), EquipmentView(),
                    NetworksView(), InterfacesView(), ConnectionView(),
                    AccountIdsView(), TestequipmentView())
    admin.add_views(SoftwareView(), SoftwareVariantView(), FunctionView())
    admin.add_views(ScenarioView(), TestSuiteView(), TestCaseView(),
                    TestResultsView())
    admin.add_view(RadarComponentView())
예제 #9
0
def get_flask_admin(index_view: OverhaveIndexView) -> Admin:
    admin = Admin(
        name="Overhave",
        template_mode="bootstrap3",
        index_view=index_view,
    )
    admin.add_link(MenuLink(name="Log out", url="/logout"))
    return admin
예제 #10
0
파일: admin.py 프로젝트: ibly31UT/reader
def start_admin(app, db):
    admin = Admin(app,
                  name="Console",
                  index_view=AdminIndex(),
                  template_mode="bootstrap3")
    admin.add_view(UserModelView(User, db.session))
    admin.add_view(ReaderModelView(Reader, db.session))
    admin.add_link(MenuLink(name="Back to Console", url="/index"))
예제 #11
0
def create_admin_views():
    global views_already_created
    if views_already_created is False:
        admin.add_link(
            MenuLink(name='Public Website', category='', url=url_for('index')))
        admin.add_views(adminView(Post, db.session))
        admin.add_views(adminView(Messages, db.session))
        admin.add_views(adminView(User, db.session))
        views_already_created = True
예제 #12
0
def init_app(app):
    admin.init_app(app)

    admin.add_link(MenuLink("<%= package.pythonName %>", "/"))

    <% if (package.flask.sqlalchemy) { %>
    admin.add_view(BaseModelView(User, app.db.session))
    <% } %>

    app.register_blueprint(mod)
예제 #13
0
def register_adminpanel(app):
    app.config['FLASK_ADMIN_SWATCH'] = 'darkly'
    admin.add_view(ModelView(User, db.session))
    admin.add_view(QAWYSIWYG(TestCase, db.session))
    admin.add_view(QAWYSIWYG(TestQuestion, db.session))
    admin.add_view(QAWYSIWYG(TestAnswer, db.session))
    admin.add_view(QAWYSIWYG(Answer, db.session))
    admin.add_view(QAWYSIWYG(Question, db.session))
    admin.add_view(QAWYSIWYG(Section, db.session))
    admin.add_view(QAWYSIWYG(TestQuestionUserRelation, db.session))
    admin.add_link(MenuLink(name='Back Home', url='/'))
예제 #14
0
def start_views(app, db):
    admin = Admin(app, name='Dashboard', base_template='admin/base.html', template_mode='bootstrap3',
                  index_view=HomeView())
    admin.add_view(GenericView(Role, db.session, "Funções", category='Usuário'))
    admin.add_view(UserView(User, db.session, "Usuários", category='Usuário'))
    admin.add_view(GenericView(State, db.session, "Estados"))
    admin.add_view(GenericView(Disease, db.session, "Doenças", category='Hospital'))
    admin.add_view(GenericView(Patient, db.session, "Pacientes", category='Hospital'))
    admin.add_view(GenericView(DiseaseState, db.session, "Condições", category='Hospital'))

    admin.add_link(MenuLink(name='Logout', url='/logout'))
예제 #15
0
def register_admin(app):
    with app.app_context():

        admin = Admin(app,
                      name='Admin Panel',
                      template_mode='bootstrap3',
                      endpoint='admin',
                      index_view=AdminIndexView())
        app.logger.debug("Ok!")
        admin.add_link(MenuLink(name='Tracker Home', url=url_for('page.home')))
        admin.add_view(
            AdminQueryView(AdminQuery, db.session, category='Models'))
예제 #16
0
def start_views(app, db):
    admin = Admin(app,
                  name="WareHouse",
                  base_template='admin/base.html',
                  template_mode="bootstrap3",
                  index_view=HomeView())
    admin.add_view(ModelView(Role, db.session, "Functions", category='Users'))
    admin.add_view(UserView(User, db.session, "Users", category="Users"))
    admin.add_view(
        ModelView(Category, db.session, "Categories", category="Products"))
    admin.add_view(ModelView(Product, db.session, "Products"))
    admin.add_link((MenuLink(name='Logout', url='/Logout')))
예제 #17
0
def alogin():
    if request.method=='POST':
        if request.form.get('Username')== "Admin" and request.form.get('Password')=='Admin':
            session['logged_in']=True
            global flag
            if flag==0:
                admin.add_link(MenuLink(name='Logout', url=url_for('alogout')))
                flag=1
            return redirect("/admin")
        else:
            return render_template("/admin/alogin.html",failed=True)
    return render_template("/admin/alogin.html")
예제 #18
0
 def _setup_legacy_admin_menu():
     """Add legacy menu admin to *Flask-Admin* interface."""
     from invenio.legacy.registry import webadmin
     for admin in app.extensions['admin']:
         for legacy_admin_link in webadmin.keys():
             module, action = legacy_admin_link.split('/')
             admin.add_link(
                 MenuLink(name=module,
                          category='Legacy Admin',
                          url=url_for('web_admin',
                                      module=module,
                                      action=action)))
예제 #19
0
def register_admin(app):
    with app.app_context():

        admin = Admin(app,
                      name='Query Admin',
                      template_mode='bootstrap3',
                      endpoint='admin',
                      index_view=CustomAdminIndexView(),
                      base_template='admin/base.html')
        admin.add_link(MenuLink(name='Tracker', url=url_for('page.home')))
        admin.add_view(
            AdminQueryView(AdminQuery, db.session, category='Models'))
예제 #20
0
def start_views(app, db):
    admin = Admin(app,
                  name='Meu Estoque',
                  base_template='admin/base.html',
                  template_mode='bootstrap3',
                  index_view=HomeView())
    admin.add_view(ModelView(Role, db.session, "Funções", category="Usuários"))
    admin.add_view(UserView(User, db.session, "Usuários", category="Usuários"))
    admin.add_view(
        ModelView(Category, db.session, 'Categorias', category="Produtos"))
    admin.add_view(
        ModelView(Product, db.session, "Produtos", category="Produtos"))
    admin.add_link(MenuLink(name='Logout', url='/logout'))
예제 #21
0
def create_admin():
    from app.models.user import User
    from app.models.team import Team

    scoreboard_admin = Admin()
    scoreboard_admin.add_view(UserAdmin(User, name="Users", endpoint="users"))
    scoreboard_admin.add_view(TeamAdmin(Team, name="Teams", endpoint="teams"))
    scoreboard_admin.add_view(
        UtilitiesView(name="Utilities", endpoint="utilities"))

    scoreboard_admin.add_link(
        MenuLink(name='Log Out', url="/logout", class_name='logout'))

    return scoreboard_admin
예제 #22
0
def start_views(app, db):
    admin = Admin(app,
                  name="Meu Estoque",
                  template_mode="bootstrap3",
                  index_view=HomeView())

    admin.add_view(RoleView(Role, db.session, "Funções", category="Usuários"))
    admin.add_view(UserView(User, db.session, "Usuários", category="Usuários"))
    admin.add_view(
        CategoryView(Category, db.session, "Categorias", category="Produtos"))
    admin.add_view(
        ProductView(Product, db.session, "Produtos", category="Produtos"))

    admin.add_link(MenuLink(name="Logout", url="/logout"))
예제 #23
0
def create_app(config_class=Config):  # default configutation

    app = Flask(__name__)
    app.config.from_object(Config)

    #initialize extensions
    db.init_app(app)
    bcrypt.init_app(app)
    login_manager.init_app(app)
    mail.init_app(app)
    # customized admin views
    from my_app.models import MyAdminIndexView
    admin.init_app(app, index_view=MyAdminIndexView())  #how to add 'name'??
    admin.add_link(MenuLink(name='Home', url='/'))
    admin.add_link(MenuLink(name='Logout', url='/logout'))

    # blueprints
    from my_app.main.routes import main
    from my_app.errors.handlers import errors
    app.register_blueprint(main)
    app.register_blueprint(errors)

    return app
예제 #24
0
def create_app(config_name):
    app = Flask(__name__)
    app.config.from_object(config[config_name])
    config[config_name].init_app(app)

    bootstrap.init_app(app)
    moment.init_app(app)
    db.init_app(app)
    ckeditor.init_app(app)
    csrf.init_app(app)
    login_manager.init_app(app)

    if app.config['SSL_REDIRECT']:
        from flask_sslify import SSLify
        sslify = SSLify(app)

    from .main import main as main_blueprint
    app.register_blueprint(main_blueprint)

    from .models import User, Role, Post, Project
    from .main.views import CustomAdminIndexView, CustomModelView, PostView, ProjectView
    admin = Admin(app,
                  name='Flaskp ADM',
                  template_mode='bootstrap4',
                  index_view=CustomAdminIndexView())
    admin.add_view(CustomModelView(User, db.session))
    admin.add_view(CustomModelView(Role, db.session))
    admin.add_view(PostView(Post, db.session, name="Post", endpoint="post"))
    admin.add_view(
        ProjectView(Project, db.session, name="Project", endpoint="project"))
    admin.add_link(MenuLink(name='Home', url='/', category='Live Site'))
    admin.add_link(MenuLink(name='About', url='/about', category='Live Site'))
    admin.add_link(MenuLink(name='Blog', url='/blog', category='Live Site'))
    admin.add_link(
        MenuLink(name='Projects', url='/projects', category='Live Site'))

    return app
예제 #25
0
파일: admin.py 프로젝트: dleister77/Ask
def configure_admin(app):
    admin = Admin(index_view=AskIndexView(),
                  name='Ask',
                  template_mode='bootstrap3')
    admin.init_app(app)
    with app.app_context():
        admin.add_link(MenuLink('Ask External', endpoint='main.index'))
    admin.add_view(ProviderView(Provider, db.session))
    admin.add_view(AddressView(Address, db.session))
    admin.add_view(ReviewView(Review, db.session))
    admin.add_view(UserView(User, db.session))
    admin.add_view(CategoryView(Category, db.session))
    admin.add_view(AskModelView(Sector, db.session))
    admin.add_view(GroupView(Group, db.session))
    admin.add_view(ProviderSuggestionView(Provider_Suggestion, db.session))
예제 #26
0
def register_admin(app):
    admin = Admin(app=app, template_mode='bootstrap3')
    admin.add_link(MenuLink(name='Voltar', url=('/')))
    admin.add_views(
        ProtectedModelView(User, db.session),
        ProtectedModelView(Role, db.session),
        ProtectedModelView(PreAllowedUser, db.session),
        ProtectedModelView(Product, db.session),
        ProtectedModelView(Specification, db.session),
        ProtectedModelView(StockProduct, db.session),
        ProtectedModelView(Stock, db.session),
        ProtectedModelView(Order, db.session),
        ProtectedModelView(OrderItem, db.session),
        ProtectedModelView(Transaction, db.session),
    )
예제 #27
0
def init_app_admin():
    app = get_base_app()
    app.logger.debug("Run ices modules")
    run_ices_modules(app.config['SQLALCHEMY_DATABASE_URI'])
    app.before_request(get_current_user)
    app.logger.debug("Register blueprints")
    register_blueprints_admin(app)
    login_manager = LoginManager(app)
    login_manager.login_view = 'auth.login'
    login_manager.user_loader(load_user)
    user_db = SQLAlchemy(app)
    db_adapter = SQLAlchemyAdapter(user_db, type('UserModel',
                                                 (user_db.Model, User), {}))
    user_manager = UserManager(db_adapter, app)
    admin = Admin(name="Mistofm", template_mode="bootstrap3",
                  index_view=IndexView(url=config.ADMIN_URL_PREFIX))
    admin.init_app(app)
    db_session, connection, engine = get_db_session(app.config.get('SQLALCHEMY_DATABASE_URI'))

    # remove db session each time when close connection in
    # order to refresh data and get new session
    @app.teardown_request
    def teardown(err):
        db_session.remove()
        connection.close()
        engine.dispose()
        db = getattr(g, 'db', None)
        sql_connection = getattr(g, 'db_connection', None)
        g_engine = getattr(g, 'engine', None)
        if db is not None:
            if err:
                db.rollback()
            db.remove()
        if sql_connection:
            sql_connection.close()
        if g_engine:
            g_engine.dispose()
        return err
    admin.add_view(StationView(Station, db_session))
    admin.add_view(ImageView(Image, db_session))
    admin.add_view(MusicView(Music, db_session))
    admin.add_view(PlaylistView(Playlist, db_session))
    admin.add_view(StationIcesView(StationIces, db_session))
    admin.add_view(PlaylistMusicView(PlaylistMusic, db_session))
    admin.add_view(AdminView(HtmlHeader, db_session))
    admin.add_view(GeneralView(General, db_session))
    admin.add_link(MenuLink(name='Logout', category='', url="/logout"))
    return app
예제 #28
0
 def _add_return_link(self,
                      name,
                      endpoint=None,
                      url=None,
                      icon_type=None,
                      icon_value=None):
     icon_type = icon_type or ICON_TYPE_LAYUI
     icon_value = icon_value or 'layui-icon-return'
     menu_link = None
     if endpoint or url:
         menu_link = MenuLink(name,
                              endpoint=endpoint,
                              url=url,
                              icon_type=icon_type,
                              icon_value=icon_value)
     self.return_menu_link = menu_link
예제 #29
0
def init_app(app):
    """Init admin panel"""
    root_url = app.config['ADMIN_URL']
    admin = Admin(app,
                  name='Words',
                  template_mode='bootstrap3',
                  index_view=UserModelView(User,
                                           db.session,
                                           endpoint='admin',
                                           url=root_url,
                                           static_folder='static'))
    admin.add_view(
        PostModelView(Post,
                      db.session,
                      endpoint='admin.post',
                      url='{}/post'.format(root_url)))
    admin.add_link(MenuLink('Home', endpoint='index'))
    def init_app(self, app, admin=None, logger=None):
        config = app.config.get("flask_profiling", {})
        if not config.get("enabled", True):
            logger.info("Do not use the profile for Flask")
            return

        backend.init_app(app)
        wrap_app_endpoints(app)
        app.register_blueprint(api)
        if logger is None:
            self.setup_logger()

        if admin is not None:
            admin.add_link(MenuLink("Profile", "/flask-profiling"))

        if config.get("type") == "ldap":
            ldap.init_app(app)