empresa-libre/source/app/main.py

41 lines
958 B
Python
Raw Normal View History

2017-06-27 15:43:02 -05:00
#!/usr/bin/env python3
import falcon
from beaker.middleware import SessionMiddleware
2017-06-28 23:55:53 -05:00
from middleware import AuthMiddleware, JSONTranslator, static, handle_404
from models.db import StorageEngine
2017-09-21 23:24:18 -05:00
from controllers.main import (
AppLogin, AppLogout, AppAdmin, AppMain,
)
from settings import DEBUG
2017-06-27 15:43:02 -05:00
db = StorageEngine()
2017-09-21 23:24:18 -05:00
#~ partners = AppPartners(db)
2017-06-27 15:43:02 -05:00
2017-06-28 23:55:53 -05:00
api = falcon.API(middleware=[AuthMiddleware(), JSONTranslator()])
2017-06-27 15:43:02 -05:00
api.req_options.auto_parse_form_urlencoded = True
2017-06-28 23:55:53 -05:00
api.add_sink(handle_404, '')
2017-09-21 23:24:18 -05:00
api.add_route('/', AppLogin(db))
api.add_route('/logout', AppLogout(db))
api.add_route('/admin', AppAdmin(db))
api.add_route('/main', AppMain(db))
#~ api.add_route('/partners', partners)
2017-06-27 15:43:02 -05:00
if DEBUG:
2017-06-28 23:55:53 -05:00
api.add_sink(static, '/static')
2017-06-27 15:43:02 -05:00
2017-09-21 23:24:18 -05:00
session_options = {
2017-06-27 15:43:02 -05:00
'session.type': 'file',
'session.cookie_expires': True,
'session.data_dir': '/tmp/cache/data',
'session.lock_dir': '/tmp/cache/lock',
}
2017-09-21 23:24:18 -05:00
app = SessionMiddleware(api, session_options)
2017-06-27 15:43:02 -05:00