196b33c20eb9a76671c8010001f0db7ae931b97f
[debianmemberportfolio.git] / debianmemberportfolio / config / routing.py
1 # -*- python -*-
2 # -*- coding: utf-8 -*-
3 #
4 # DDPortfolio service routing configuration
5 # Copyright © 2009, 2010, 2011, 2012 Jan Dittberner <jan@dittberner.info>
6 #
7 # This file is part of DDPortfolio service.
8 #
9 # DDPortfolio service is free software: you can redistribute it and/or
10 # modify it under the terms of the GNU Affero General Public License
11 # as published by the Free Software Foundation, either version 3 of
12 # the License, or (at your option) any later version.
13 #
14 # DDPortfolio service is distributed in the hope that it will be
15 # useful, but WITHOUT ANY WARRANTY; without even the implied warranty
16 # of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 # Affero General Public License for more details.
18 #
19 # You should have received a copy of the GNU Affero General Public
20 # License along with this program.  If not, see
21 # <http://www.gnu.org/licenses/>.
22 #
23 """Routes configuration
24
25 The more specific and detailed routes should be defined first so they
26 may take precedent over the more generic routes. For more information
27 refer to the routes manual at http://routes.groovie.org/docs/
28 """
29 from routes import Mapper
30
31
32 def make_map(config):
33     """Create, configure and return the routes Mapper"""
34     map = Mapper(directory=config['pylons.paths']['controllers'],
35                  always_scan=config['debug'], explicit=True)
36     map.minimization = False
37
38     # The ErrorController route (handles 404/500 error pages); it should
39     # likely stay at the top, ensuring it can always be resolved
40     map.connect('/error/{action}', controller='error')
41     map.connect('/error/{action}/{id}', controller='error')
42
43     # CUSTOM ROUTES HERE
44     map.connect('/', controller='ddportfolio', action='index')
45     map.connect('/result', controller='ddportfolio', action='urllist')
46     map.connect('/htmlformhelper.js', controller='showformscripts',
47                 action='index')
48
49     map.connect('/{controller}/{action}')
50     map.connect('/{controller}/{action}/{id}')
51
52     return map