##// END OF EJS Templates
fixed tests for stable
fixed tests for stable

File last commit:

r1214:a2dba935 beta
r1219:ca614631 default
Show More
routing.py
244 lines | 11.5 KiB | text/x-python | PythonLexer
fixed @repo into :repo for docs...
r604 """
Routes configuration
renamed project to rhodecode
r547
The more specific and detailed routes should be defined first so they
may take precedent over the more generic routes. For more information
refer to the routes manual at http://routes.groovie.org/docs/
"""
from __future__ import with_statement
from routes import Mapper
from rhodecode.lib.utils import check_repo_fast as cr
merges for upcoming release
r1209
renamed project to rhodecode
r547 def make_map(config):
"""Create, configure and return the routes Mapper"""
merges for upcoming release
r1209 rmap = Mapper(directory=config['pylons.paths']['controllers'],
renamed project to rhodecode
r547 always_scan=config['debug'])
merges for upcoming release
r1209 rmap.minimization = False
rmap.explicit = False
renamed project to rhodecode
r547
fixed @repo into :repo for docs...
r604 def check_repo(environ, match_dict):
"""
check for valid repository for proper 404 handling
:param environ:
:param match_dict:
"""
repo_name = match_dict.get('repo_name')
return not cr(repo_name, config['base_path'])
renamed project to rhodecode
r547 # The ErrorController route (handles 404/500 error pages); it should
# likely stay at the top, ensuring it can always be resolved
merges for upcoming release
r1209 rmap.connect('/error/{action}', controller='error')
rmap.connect('/error/{action}/{id}', controller='error')
renamed project to rhodecode
r547
fixed @repo into :repo for docs...
r604 #==========================================================================
renamed project to rhodecode
r547 # CUSTOM ROUTES HERE
fixed @repo into :repo for docs...
r604 #==========================================================================
#MAIN PAGE
merges for upcoming release
r1209 rmap.connect('home', '/', controller='home', action='index')
rmap.connect('bugtracker',
"http://bitbucket.org/marcinkuzminski/rhodecode/issues",
_static=True)
rmap.connect('rhodecode_official', "http://rhodecode.org", _static=True)
added footer link to the main site
r1142
fixed @repo into :repo for docs...
r604 #ADMIN REPOSITORY REST ROUTES
merges for upcoming release
r1209 with rmap.submapper(path_prefix='/_admin', controller='admin/repos') as m:
renamed project to rhodecode
r547 m.connect("repos", "/repos",
action="create", conditions=dict(method=["POST"]))
m.connect("repos", "/repos",
action="index", conditions=dict(method=["GET"]))
m.connect("formatted_repos", "/repos.{format}",
action="index",
conditions=dict(method=["GET"]))
m.connect("new_repo", "/repos/new",
action="new", conditions=dict(method=["GET"]))
m.connect("formatted_new_repo", "/repos/new.{format}",
action="new", conditions=dict(method=["GET"]))
m.connect("/repos/{repo_name:.*}",
action="update", conditions=dict(method=["PUT"],
function=check_repo))
m.connect("/repos/{repo_name:.*}",
action="delete", conditions=dict(method=["DELETE"],
function=check_repo))
m.connect("edit_repo", "/repos/{repo_name:.*}/edit",
action="edit", conditions=dict(method=["GET"],
function=check_repo))
m.connect("formatted_edit_repo", "/repos/{repo_name:.*}.{format}/edit",
action="edit", conditions=dict(method=["GET"],
function=check_repo))
m.connect("repo", "/repos/{repo_name:.*}",
action="show", conditions=dict(method=["GET"],
function=check_repo))
m.connect("formatted_repo", "/repos/{repo_name:.*}.{format}",
action="show", conditions=dict(method=["GET"],
function=check_repo))
#ajax delete repo perm user
m.connect('delete_repo_user', "/repos_delete_user/{repo_name:.*}",
action="delete_perm_user", conditions=dict(method=["DELETE"],
function=check_repo))
added cache reset, stats reset, and delete into repository settings in admin....
r708 #settings actions
m.connect('repo_stats', "/repos_stats/{repo_name:.*}",
action="repo_stats", conditions=dict(method=["DELETE"],
function=check_repo))
m.connect('repo_cache', "/repos_cache/{repo_name:.*}",
action="repo_cache", conditions=dict(method=["DELETE"],
function=check_repo))
fixed @repo into :repo for docs...
r604 #ADMIN USER REST ROUTES
merges for upcoming release
r1209 rmap.resource('user', 'users', controller='admin/users',
path_prefix='/_admin')
fixed @repo into :repo for docs...
r604
#ADMIN PERMISSIONS REST ROUTES
merges for upcoming release
r1209 rmap.resource('permission', 'permissions', controller='admin/permissions',
path_prefix='/_admin')
fixes #77 moved out ldap config to it's own section
r769
##ADMIN LDAP SETTINGS
merges for upcoming release
r1209 rmap.connect('ldap_settings', '/_admin/ldap',
controller='admin/ldap_settings', action='ldap_settings',
conditions=dict(method=["POST"]))
rmap.connect('ldap_home', '/_admin/ldap',
controller='admin/ldap_settings',)
fixed @repo into :repo for docs...
r604
#ADMIN SETTINGS REST ROUTES
merges for upcoming release
r1209 with rmap.submapper(path_prefix='/_admin',
controller='admin/settings') as m:
renamed project to rhodecode
r547 m.connect("admin_settings", "/settings",
merges for upcoming release
r1209 action="create", conditions=dict(method=["POST"]))
renamed project to rhodecode
r547 m.connect("admin_settings", "/settings",
merges for upcoming release
r1209 action="index", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("formatted_admin_settings", "/settings.{format}",
merges for upcoming release
r1209 action="index", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("admin_new_setting", "/settings/new",
merges for upcoming release
r1209 action="new", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("formatted_admin_new_setting", "/settings/new.{format}",
merges for upcoming release
r1209 action="new", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("/settings/{setting_id}",
merges for upcoming release
r1209 action="update", conditions=dict(method=["PUT"]))
renamed project to rhodecode
r547 m.connect("/settings/{setting_id}",
merges for upcoming release
r1209 action="delete", conditions=dict(method=["DELETE"]))
renamed project to rhodecode
r547 m.connect("admin_edit_setting", "/settings/{setting_id}/edit",
merges for upcoming release
r1209 action="edit", conditions=dict(method=["GET"]))
m.connect("formatted_admin_edit_setting",
"/settings/{setting_id}.{format}/edit",
action="edit", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("admin_setting", "/settings/{setting_id}",
merges for upcoming release
r1209 action="show", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("formatted_admin_setting", "/settings/{setting_id}.{format}",
merges for upcoming release
r1209 action="show", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("admin_settings_my_account", "/my_account",
merges for upcoming release
r1209 action="my_account", conditions=dict(method=["GET"]))
renamed project to rhodecode
r547 m.connect("admin_settings_my_account_update", "/my_account_update",
merges for upcoming release
r1209 action="my_account_update", conditions=dict(method=["PUT"]))
renamed project to rhodecode
r547 m.connect("admin_settings_create_repository", "/create_repository",
merges for upcoming release
r1209 action="create_repository", conditions=dict(method=["GET"]))
fixed @repo into :repo for docs...
r604
#ADMIN MAIN PAGES
merges for upcoming release
r1209 with rmap.submapper(path_prefix='/_admin', controller='admin/admin') as m:
m.connect('admin_home', '', action='index')
renamed project to rhodecode
r547 m.connect('admin_add_repo', '/add_repo/{new_repo:[a-z0-9\. _-]*}',
action='add_repo')
implemented user dashboards, and following system.
r734
#USER JOURNAL
merges for upcoming release
r1209 rmap.connect('journal', '/_admin/journal', controller='journal',)
rmap.connect('toggle_following', '/_admin/toggle_following',
controller='journal', action='toggle_following',
conditions=dict(method=["POST"]))
implemented user dashboards, and following system.
r734
renamed project to rhodecode
r547 #SEARCH
merges for upcoming release
r1209 rmap.connect('search', '/_admin/search', controller='search',)
rmap.connect('search_repo', '/_admin/search/{search_repo:.*}',
controller='search')
fixed @repo into :repo for docs...
r604
renamed project to rhodecode
r547 #LOGIN/LOGOUT/REGISTER/SIGN IN
merges for upcoming release
r1209 rmap.connect('login_home', '/_admin/login', controller='login')
rmap.connect('logout_home', '/_admin/logout', controller='login',
action='logout')
rmap.connect('register', '/_admin/register', controller='login',
action='register')
rmap.connect('reset_password', '/_admin/password_reset',
controller='login', action='password_reset')
fixed @repo into :repo for docs...
r604
renamed project to rhodecode
r547 #FEEDS
merges for upcoming release
r1209 rmap.connect('rss_feed_home', '/{repo_name:.*}/feed/rss',
renamed project to rhodecode
r547 controller='feed', action='rss',
conditions=dict(function=check_repo))
merges for upcoming release
r1209 rmap.connect('atom_feed_home', '/{repo_name:.*}/feed/atom',
renamed project to rhodecode
r547 controller='feed', action='atom',
conditions=dict(function=check_repo))
fixed @repo into :repo for docs...
r604
#REPOSITORY ROUTES
merges for upcoming release
r1209 rmap.connect('changeset_home', '/{repo_name:.*}/changeset/{revision}',
renamed project to rhodecode
r547 controller='changeset', revision='tip',
conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('raw_changeset_home',
'/{repo_name:.*}/raw-changeset/{revision}',
controller='changeset', action='raw_changeset',
revision='tip', conditions=dict(function=check_repo))
rmap.connect('summary_home_', '/{repo_name:.*}',
Fixes for release 1.1.4...
r1071 controller='summary', conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('summary_home', '/{repo_name:.*}/summary',
renamed project to rhodecode
r547 controller='summary', conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('shortlog_home', '/{repo_name:.*}/shortlog',
renamed project to rhodecode
r547 controller='shortlog', conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('branches_home', '/{repo_name:.*}/branches',
renamed project to rhodecode
r547 controller='branches', conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('tags_home', '/{repo_name:.*}/tags',
renamed project to rhodecode
r547 controller='tags', conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('changelog_home', '/{repo_name:.*}/changelog',
fixed @repo into :repo for docs...
r604 controller='changelog', conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('files_home', '/{repo_name:.*}/files/{revision}/{f_path:.*}',
renamed project to rhodecode
r547 controller='files', revision='tip', f_path='',
conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('files_diff_home', '/{repo_name:.*}/diff/{f_path:.*}',
renamed project to rhodecode
r547 controller='files', action='diff', revision='tip', f_path='',
conditions=dict(function=check_repo))
merges for upcoming release
r1209
rmap.connect('files_rawfile_home',
'/{repo_name:.*}/rawfile/{revision}/{f_path:.*}',
controller='files', action='rawfile', revision='tip',
f_path='', conditions=dict(function=check_repo))
rmap.connect('files_raw_home',
'/{repo_name:.*}/raw/{revision}/{f_path:.*}',
controller='files', action='raw', revision='tip', f_path='',
conditions=dict(function=check_repo))
rmap.connect('files_annotate_home',
'/{repo_name:.*}/annotate/{revision}/{f_path:.*}',
controller='files', action='annotate', revision='tip',
f_path='', conditions=dict(function=check_repo))
renamed project to rhodecode
r547
merges for upcoming release
r1209 rmap.connect('files_archive_home',
'/{repo_name:.*}/archive/{revision}/{fileformat}',
controller='files', action='archivefile', revision='tip',
conditions=dict(function=check_repo))
rmap.connect('repo_settings_delete', '/{repo_name:.*}/settings',
controller='settings', action="delete",
conditions=dict(method=["DELETE"], function=check_repo))
rmap.connect('repo_settings_update', '/{repo_name:.*}/settings',
controller='settings', action="update",
conditions=dict(method=["PUT"], function=check_repo))
rmap.connect('repo_settings_home', '/{repo_name:.*}/settings',
controller='settings', action='index',
conditions=dict(function=check_repo))
rmap.connect('repo_fork_create_home', '/{repo_name:.*}/fork',
renamed project to rhodecode
r547 controller='settings', action='fork_create',
conditions=dict(function=check_repo, method=["POST"]))
merges for upcoming release
r1209 rmap.connect('repo_fork_home', '/{repo_name:.*}/fork',
renamed project to rhodecode
r547 controller='settings', action='fork',
conditions=dict(function=check_repo))
fixed @repo into :repo for docs...
r604
merges for upcoming release
r1209 return rmap