示例#1
0
def run():
    try:
        env = flask_assets.Environment(app)

        env.load_path = [
            os.path.join(os.path.dirname(__file__), '{STATIC_DIR}/js'.format(
                STATIC_DIR=STATIC_DIR
            ))
        ]

        env.register(
            'js_all',
            flask_assets.Bundle(
                'wget.js',
                'asset_gallery.js',
                'utils.js',
                'app.js',
                filters=['jsmin'],
                output='js/packed.js'
            )
        )

        app.run(debug=True, threaded=True)

    except KeyboardInterrupt:
        quit()
示例#2
0
def run():
    env = flask_assets.Environment(app)

    env.load_path = [
        os.path.join(os.path.dirname(__file__), '{STATIC_DIR}/js'.format(
            STATIC_DIR=STATIC_DIR
        ))
    ]

    env.register(
        'js_all',
        flask_assets.Bundle(
            'wget.js',
            'utils.js',
            'view-server.js',
            'app.js',
            filters=['jsmin'],
            output='js/packed.js'
        )
    )

    app.run(
        debug=config['debug'] if 'debug' in config else False,
        threaded=config['threaded'] if 'threaded' in config else False
    )
示例#3
0
def run():
    try:
        subprocess.Popen(
            'sass --watch {STATIC_DIR}/css/style.scss:{STATIC_DIR}/css/style.css'
            .format(STATIC_DIR=STATIC_DIR),
            shell=True)

        env = flask_assets.Environment(app)

        # Tell flask-assets where to look for our coffeescript and sass files.
        env.load_path = [
            os.path.join(os.path.dirname(__file__),
                         '{STATIC_DIR}/js'.format(STATIC_DIR=STATIC_DIR))
        ]

        env.register(
            'js_all',
            flask_assets.Bundle('utils.js',
                                'app.js',
                                filters=['jsmin'],
                                output='js/packed.js'))

        app.run(debug=True, threaded=True)

    except KeyboardInterrupt:
        subprocess.Popen('pkill -f sass', shell=True)
示例#4
0
def run():
    subprocess.Popen(
        'sass --watch foliumer/static/css/style.scss:foliumer/static/css/style.css',
        shell=True)

    env = flask_assets.Environment(app)

    # Tell flask-assets where to look for our coffeescript and sass files.
    env.load_path = [
        os.path.join(os.path.dirname(__file__), 'foliumer/static/js')
    ]

    env.register(
        'js_all',
        flask_assets.Bundle('utils.js',
                            'app.js',
                            'spinners.js',
                            'wpostjs/wpost.js',
                            'wgetjs/wget.js',
                            'backdrop.js',
                            'editables.js',
                            'navigation.js',
                            filters=['jsmin'],
                            output='js/packed.js'))

    app.run(debug=True, threaded=True)
示例#5
0
    try:
        return int(s)
    except ValueError:
        return


# we bundle javascript and css dependencies to reduce client-side overhead
# app.config["CLOSURE_COMPRESSOR_OPTIMIZATION"] = "WHITESPACE_ONLY"
bundles = {
    "dependencies_css":
    flask_assets.Bundle('css/main.css',
                        'css/jquery-ui.css',
                        'css/bootstrap.min.css',
                        'css/font-awesome.min.css',
                        'css/leaflet.css',
                        'css/leaflet-sidebar.min.css',
                        'css/L.Control.Window.css',
                        'css/leaflet-areaselect.css',
                        'css/datatables.min.css',
                        'css/easy-button.css',
                        filters='cssmin',
                        output='gen/main.css'),
    "dependencies_js":
    flask_assets.Bundle(
        # minified dependencies
        flask_assets.Bundle(
            'js/jquery-3.2.1.min.js',
            'js/jquery-ui.min.js',
            'js/jquery.knob.min.js',  # Anthony Terrien
            'js/datatables.min.js',
            'js/leaflet.js',
            'js/leaflet-sidebar.min.js',
示例#6
0
文件: app.py 项目: bradymadams/bread
from flask import Flask, request, render_template
from flask_sqlalchemy import SQLAlchemy
import flask_assets

app = Flask('bread', template_folder='templates')
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///bread.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True

db = SQLAlchemy(app)

import models

assets = flask_assets.Environment(app)

styles = flask_assets.Bundle('css/base.less',
                             output='css/bread.css',
                             filters='less,cssmin')

assets.register('css', styles)

# Blueprints
#import account
#app.register_blueprint(account.blueprint, url_prefix='/account')


@app.route('/')
def home():
    return render_template('home.jinja')


@app.route('/account/')
示例#7
0
def create_app(configfile=None):
    app = Flask(__name__)

    app.config.from_object('web.config.Config')

    markdown = Markdown(app)

    # Typography Jinja2 Filter
    app.jinja_env.filters['typogrify'] = typogrify_filters.typogrify

    # Static Assets Config (Javascript and SCSS)
    env = assets.Environment(app)

    env.load_path = [
        os.path.join(app.config['STATIC_PATH'], 'bower'),
        os.path.join(app.config['STATIC_PATH'], 'scss'),
        os.path.join(app.config['STATIC_PATH'], 'javascript')
    ]

    env.register(
        'js_all',
        assets.Bundle('jquery/dist/jquery.min.js',
                      'leaflet/dist/leaflet.js',
                      assets.Bundle('iconic.min.js'),
                      assets.Bundle('app.js'),
                      output='app.js'))

    sass = get_filter('scss')
    sass.load_paths = env.load_path

    env.register(
        'css_all',
        assets.Bundle('app.scss',
                      filters=(sass, ),
                      depends=(os.path.join(app.config['STATIC_PATH'],
                                            'scss/**/*.scss')),
                      output='app.css'))

    # i18n Config
    babel = Babel(app)

    @app.url_defaults
    def set_language_code(endpoint, values):
        if 'lang_code' in values or not g.get('lang_code', None):
            return
        if app.url_map.is_endpoint_expecting(endpoint, 'lang_code'):
            values['lang_code'] = g.lang_code

    @app.url_value_preprocessor
    def get_lang_code(endpoint, values):
        if values is not None:
            g.lang_code = values.pop('lang_code', None)

    @app.before_request
    def ensure_lang_support():
        lang_code = g.get('lang_code', None)
        if lang_code and lang_code not in app.config['LANGUAGES'].keys():
            return abort(404)

    @babel.localeselector
    def get_locale():
        return g.get('lang_code', app.config['BABEL_DEFAULT_LOCALE'])

    @babel.timezoneselector
    def get_timezone():
        return app.config['BABEL_DEFAULT_TIMEZONE']

    @app.context_processor
    def utility_processor():
        def get_talk(slug):
            return filters.get_talk(slug)

        return dict(get_talk=get_talk)

    # Register the Blueprints
    app.register_blueprint(view_pages, url_prefix='/<lang_code>')
    app.register_blueprint(view_schedule, url_prefix='/<lang_code>/schedule')

    # Register the filters
    app.jinja_env.filters['format_datetime'] = filters.format_datetime
    app.jinja_env.filters['format_date'] = filters.format_date
    app.jinja_env.filters['format_time'] = filters.format_time

    return app
示例#8
0
import flask_assets

from gogdb import app
from gogdb.assets.rcssmin import RCSSMin

css_all = flask_assets.Bundle("css/*.css",
                              filters=[RCSSMin],
                              output="css/gogdb.%(version)s.css")

fonts_all = flask_assets.Bundle("fonts/*.css",
                                filters=[RCSSMin],
                                output="css/fonts.%(version)s.css")

js_prodinfo = flask_assets.Bundle("js/moment.js",
                                  "js/chartconfig.js",
                                  "js/Chart.min.js",
                                  "js/tabs.js",
                                  filters="rjsmin",
                                  output="js/product.%(version)s.js")

assets_env = flask_assets.Environment(app)
assets_env.register("css-all", css_all)
assets_env.register("fonts-all", fonts_all)
assets_env.register("js-prodinfo", js_prodinfo)

assets_env.config["RCSSMIN_KEEP_BANG_COMMENTS"] = True
assets_env.config["RJSMIN_KEEP_BANG_COMMENTS"] = True
示例#9
0
import flask_assets

min_css = flask_assets.Bundle(
    'css/min_entireframework.min.css',
    filters='cssmin'
)

Leaflet_css = flask_assets.Bundle(
    'css/leaflet.css',
    'css/leaflet-sidebar.min.css',
    'css/L.Control.Window.css',
    'css/leaflet-areaselect.css',
    'css/easy-button.css'
)

Leaflet_js = flask_assets.Bundle(
    # Minified
    'js/leaflet.js',
    "js/heatflaskTileLayer.js",
    'js/leaflet-sidebar.min.js',
    'js/download.min.js',

    # unMinified
    'js/L.Control.fps.js',
    'js/L.Control.Watermark.js',
    'js/L.Control.Window.js',
    'js/leaflet-providers.js',
    'js/leaflet-image.js',  # Tom MacWright: https://github.com/mapbox/leaflet-image
    'js/leaflet-areaselect.js',
    'js/easy-button.js',
    'js/L.SwipeSelect.js',
示例#10
0
from flask import Flask
import flask_assets as assets

import os

def root_dir():  
    return os.path.abspath(os.path.dirname(os.path.dirname(__file__)))

app=Flask(__name__, root_path=root_dir())
app.config.from_object('backend.settings')
print root_dir() 

env = assets.Environment(app)

env.load_path = [
    os.path.join(root_dir(), 'assets/sass')
]

env.register(
    'css_all',
    assets.Bundle(
        'app.scss',
        filters='sass',
        output='css/app.scss.css'
    )
)

from backend import controller
示例#11
0
import flask_assets

import argparse
import os
import os.path
import json

import backend

app = flask.Flask('app')

sites_container = None

assets = flask_assets.Environment(app)

css_bundle = flask_assets.Bundle('css/')
js_bundle = flask_assets.Bundle('js/')
assets.register('js_all', js_bundle)
assets.register('css_all', css_bundle)


@app.route("/<site>")
@app.route("/<site>/")
def post_redirect(site):
    return flask.redirect(f"/{site}/post/1")


@app.route("/<site>/post")
@app.route("/<site>/post/")
@app.route("/<site>/post/<pn>")
def post(site, pn=None):
示例#12
0
文件: app.py 项目: kesun/2016-web
def create_app(configfile=None):
    app = Flask(__name__)

    app.config.from_object('web.config.Config')

    app.jinja_env.filters['typogrify'] = typogrify_filters.typogrify

    env = assets.Environment(app)

    static_path = os.path.join(app.config['APP_PATH'], 'static')

    env.load_path = [
        os.path.join(static_path, 'bower'),
        os.path.join(static_path, 'scss'),
        os.path.join(static_path, 'javascript')
    ]

    env.register('js_all',
                 assets.Bundle('jquery/dist/jquery.min.js',
                               'leaflet/dist/leaflet.js',
                               assets.Bundle('app.js'),
                               output='app.js'))

    sass = get_filter('scss')
    sass.load_paths = env.load_path

    env.register('css_all',
                 assets.Bundle('app.scss',
                               filters=(sass,),
                               depends=(os.path.join(static_path,
                                        'scss/**/*.scss')),
                               output='app.css'))

    babel = Babel(app)

    @app.url_defaults
    def set_language_code(endpoint, values):
        if 'lang_code' in values or not g.get('lang_code', None):
            return
        if app.url_map.is_endpoint_expecting(endpoint, 'lang_code'):
            values['lang_code'] = g.lang_code

    @app.url_value_preprocessor
    def get_lang_code(endpoint, values):
        if values is not None:
            g.lang_code = values.pop('lang_code', None)

    @app.before_request
    def ensure_lang_support():
        lang_code = g.get('lang_code', None)
        if lang_code and lang_code not in app.config['LANGUAGES'].keys():
            return abort(404)

    @babel.localeselector
    def get_locale():
        return g.get('lang_code', app.config['BABEL_DEFAULT_LOCALE'])

    @babel.timezoneselector
    def get_timezone():
        return app.config['BABEL_DEFAULT_TIMEZONE']

    # Disabling this route as it causes issues with freezing.
    # TODO Figure out a way to make sure you can freeze with this include.
    # @app.route('/')
    # def lang_switch():
    #     langs = app.config['LANGUAGES'].keys()
    #     req_lang = request.accept_languages.best_match(langs)
    #     return redirect("/{0}/".format(req_lang), code=302)

    app.register_blueprint(view_pages, url_prefix='/<lang_code>')
    app.register_blueprint(view_schedule, url_prefix='/<lang_code>/schedule')

    return app
示例#13
0
    return dict()


icectf.context_processor(context_processor)

env = assets.Environment(icectf)
env.load_path = [
    os.path.join(os.path.dirname(__file__), 'static', 'scss'),
    os.path.join(os.path.dirname(__file__), 'static', 'coffee'),
    os.path.join(os.path.dirname(__file__), 'static'),
]
env.register(
    'js_comp',
    assets.Bundle('components/js/jquery/jquery.min.js',
                  'components/js/underscore/underscore.js',
                  'components/js/materialize/materialize.js',
                  'components/js/timecircles/TimeCircles.js',
                  output='components/js/js-comp.js'))
env.register(
    'css_comp',
    assets.Bundle('components/css/**/*.css',
                  output='components/css/css-comp.css'))
env.register(
    'js_all',
    assets.Bundle(assets.Bundle('coffee/*.coffee', filters=['coffeescript']),
                  output='js-all.js'))
env.register(
    'css_all',
    assets.Bundle(assets.Bundle('main.scss',
                                filters='scss',
                                depends=('**/*.scss', '*.scss')),
示例#14
0
文件: app.py 项目: reinefjord/website
import werkzeug
import wtforms

from playhouse import flask_utils as pw_util

app = flask.Flask(__name__, instance_relative_config=True)
app.config.from_object('config')
app.config.from_pyfile('config.py')

db_wrapper = pw_util.FlaskDB(app)

bundles = {
    'common_css': flask_assets.Bundle(
        'css/lib/normalize.css',
        'css/fonts.css',
        'css/style.css',
        output='gen/common.css',
        filters=['autoprefixer6', 'cleancss'],
    ),
}

assets = flask_assets.Environment(app)
assets.register(bundles)

login_manager = flask_login.LoginManager()
login_manager.init_app(app)
login_manager.login_view = '.login'
login_manager.login_message_category = 'info'

photo_set = flask_uploads.UploadSet('photos', flask_uploads.IMAGES)
flask_uploads.configure_uploads(app, photo_set)