def get_environment(cls): if cls.env is None: from jinja2 import Environment # pip install jinja2 import filters cls.env = Environment() filters.register_filters(cls.env) return cls.env
def jinja_options_and_filters(app): from filters import register_filters app = register_filters(app) app.jinja_env.line_statement_prefix = '#' app.jinja_env.add_extension('jinja2.ext.i18n') app.jinja_env.add_extension('jinja2.ext.do') app.jinja_env.add_extension('jinja2.ext.loopcontrols') return app
def generate(input_dir, output_dir, config): """Generate the site in input_dir to output_dir""" org = os.path.join(input_dir, config['org']) templates = os.path.join(input_dir, config['templates']) media = os.path.join(input_dir, config['media']) # create the site object with the global information and parse the org files # into pages and subdirs site = Site(config) _make_site(org, site, site.pages) # create the template environment for jinja2 and register custom filters t_env = Environment(loader= FileSystemLoader(templates, encoding='utf-8')) filters.register_filters(t_env, site) # traverse the site and generate the corresponding HTML _write_site(site, output_dir, t_env, site.pages) # finally, copy the media folder to the output media_out = os.path.join(output_dir, config['media']) if os.path.exists(media_out): shutil.rmtree(media_out) shutil.copytree(media, media_out)
def generate(input_dir, output_dir, config): """Generate the site in input_dir to output_dir""" org = os.path.join(input_dir, config['org']) templates = os.path.join(input_dir, config['templates']) media = os.path.join(input_dir, config['media']) # create the site object with the global information and parse the org files # into pages and subdirs site = Site(config) _make_site(org, site, site.pages) # create the template environment for jinja2 and register custom filters t_env = Environment(loader=FileSystemLoader(templates, encoding='utf-8')) filters.register_filters(t_env, site) # traverse the site and generate the corresponding HTML _write_site(site, output_dir, t_env, site.pages) # finally, copy the media folder to the output media_out = os.path.join(output_dir, config['media']) if os.path.exists(media_out): shutil.rmtree(media_out) shutil.copytree(media, media_out)
import filters import threading import api from stackblink import stackblink from skymorph import skymorph def import_sdss(): from sdss import sdss pass t1 = threading.Thread(target=import_sdss) t1.start() app = Flask(__name__) mail = Mail(app) filters.register_filters(app) app.secret_key = 'not a secret key' try: import local_config app.config['ASSETS_DEBUG'] = local_config.DEBUG except ImportError: pass # bundling assets = Environment(app) # This filter can be helping for debugging javascript. def noop_filter(_in, out, **kw): out.write(_in.read()) # static files
import os from forms import * import requests from filters import register_filters from googleapi import get_distance, DistanceServiceError from rest import rest_get_all, rest_get_id, rest_delete_id, rest_post, rest_put from requests.exceptions import HTTPError import flask.ext.restless from collections import namedtuple from dateutil import parser app = Flask(__name__) app.config.from_object('wsgi.config') db.init_app(app) register_filters(app) CAR_FIELDS=["id", "manufacturer", "typ", "platenumber", "color", "consumption", "price", "seats", "station"] KUNDE_FIELDS = [ "id", "name", "street", "plz", "city", "country", "leihen"] STATION_FIELDS = [ "id", "name", "street", "plz", "city", "country"] LEIHE_FIELDS = ["id", "kunde_id", "car_id", "von", "bis", "returned", "station_abhol_id", "station_return_id"] class Car(object): def __init__(self, **kwargs): self.__dict__.update(kwargs) def __repr__(self): return "%s %s %s" % (self.manufacturer, self.typ, self.platenumber) class Station(object): def __init__(self, **kwargs): self.__dict__.update(kwargs)
from flask import Flask, render_template from flask.ext import pymongo from filters import register_filters DEBUG = True MONGO_DBNAME = 'lurkingideas' app = Flask(__name__) app.config.from_object(__name__) register_filters(app) mongo = pymongo.PyMongo(app) if app.config['DEBUG']: from werkzeug import SharedDataMiddleware import os app.wsgi_app = SharedDataMiddleware(app.wsgi_app, { '/': os.path.join(os.path.dirname(__file__), 'static') }) @app.route('/') def index(): return render_template( 'index.html', posts=mongo.db.posts.find().sort('created_date', direction=pymongo.DESCENDING) ) @app.route('/<slug>/') def detail(slug): return render_template( 'detail.html',