2009-01-21 16:11:39 +01:00
|
|
|
# -*- python -*-
|
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
#
|
2014-02-08 23:54:51 +01:00
|
|
|
# Debian Member Portfolio Service base controller
|
2009-01-21 16:11:39 +01:00
|
|
|
#
|
2014-02-08 23:54:51 +01:00
|
|
|
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
|
2009-01-21 16:11:39 +01:00
|
|
|
#
|
2014-02-08 23:54:51 +01:00
|
|
|
# This file is part of the Debian Member Portfolio Service.
|
2009-01-21 16:11:39 +01:00
|
|
|
#
|
2014-02-08 23:54:51 +01:00
|
|
|
# Debian Member Portfolio Service is free software: you can redistribute it
|
|
|
|
# and/or modify it under the terms of the GNU Affero General Public License as
|
|
|
|
# published by the Free Software Foundation, either version 3 of the License,
|
|
|
|
# or (at your option) any later version.
|
2009-01-21 16:11:39 +01:00
|
|
|
#
|
2014-02-08 23:54:51 +01:00
|
|
|
# Debian Member Portfolio Service is distributed in the hope that it will be
|
|
|
|
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
|
|
|
|
# General Public License for more details.
|
2009-01-21 16:11:39 +01:00
|
|
|
#
|
2014-02-08 23:54:51 +01:00
|
|
|
# You should have received a copy of the GNU Affero General Public License
|
|
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
#
|
|
|
|
"""
|
|
|
|
The base Controller API
|
2009-01-20 22:39:05 +01:00
|
|
|
|
2010-04-16 21:44:13 +02:00
|
|
|
Provides the BaseController class for subclassing.
|
2009-01-20 22:39:05 +01:00
|
|
|
"""
|
2010-04-16 21:44:13 +02:00
|
|
|
from pylons import tmpl_context as c, request
|
2009-01-20 22:39:05 +01:00
|
|
|
from pylons.controllers import WSGIController
|
2010-04-16 21:44:13 +02:00
|
|
|
from pylons.i18n import add_fallback
|
|
|
|
from pylons.templating import render_mako as render
|
2009-01-20 22:39:05 +01:00
|
|
|
|
2012-01-07 01:46:57 +01:00
|
|
|
|
2009-01-20 22:39:05 +01:00
|
|
|
class BaseController(WSGIController):
|
|
|
|
|
|
|
|
def __call__(self, environ, start_response):
|
|
|
|
"""Invoke the Controller"""
|
|
|
|
# WSGIController.__call__ dispatches to the Controller method
|
|
|
|
# the request is routed to. This routing information is
|
|
|
|
# available in environ['pylons.routes_dict']
|
2009-01-20 23:25:49 +01:00
|
|
|
# set language environment
|
|
|
|
for lang in request.languages:
|
|
|
|
try:
|
2012-06-19 20:17:05 +02:00
|
|
|
add_fallback(lang.replace('-', '_'))
|
2009-01-20 23:25:49 +01:00
|
|
|
except:
|
|
|
|
pass
|
2012-01-07 01:46:57 +01:00
|
|
|
c.messages = {'errors': [], 'messages': []}
|
2009-01-20 22:39:05 +01:00
|
|
|
return WSGIController.__call__(self, environ, start_response)
|
2014-02-08 23:54:51 +01:00
|
|
|
|
|
|
|
|
|
|
|
__all__ = ['BaseController', 'render']
|