3 from pyramid.config import Configurator
4 from sqlalchemy import engine_from_config
5 from xonstat.models import initialize_db
6 from xonstat.views import *
8 def main(global_config, **settings):
9 """ This function returns a Pyramid WSGI application.
11 # setup the database engine
12 engine = engine_from_config(settings, 'sqlalchemy.')
13 sqlahelper.add_engine(engine)
15 # initialize database structures
18 config = Configurator(settings=settings)
20 config.add_renderer('.jinja2', pyramid_jinja2.renderer_factory)
22 config.add_static_view('static', 'xonstat:static')
25 config.add_route(name="main_index", pattern="/", view=main_index,
26 renderer='index.jinja2')
28 config.add_route(name="player_info", pattern="/player/{id}", view=player_info,
29 renderer='player_info.mako')
31 config.add_route(name="game_info", pattern="/game/{id}", view=game_info,
32 renderer='game_info.mako')
34 config.add_route(name="stats_submit", pattern="stats/submit",
35 view=stats_submit, renderer='index.jinja2')
37 return config.make_wsgi_app()