diff options
Diffstat (limited to 'config/routes.rb')
-rw-r--r-- | config/routes.rb | 93 |
1 files changed, 78 insertions, 15 deletions
diff --git a/config/routes.rb b/config/routes.rb index 928bacf67..2bf8e87fb 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -17,7 +17,7 @@ ActionController::Routing::Routes.draw do |map| map.with_options :controller => 'general' do |general| general.frontpage '/', :action => 'frontpage' general.blog '/blog', :action => 'blog' - + general.custom_css '/custom.css', :action => 'custom_css' general.search_redirect '/search', :action => 'search_redirect' # XXX combined is the search query, and then if sorted a "/newest" at the end. # Couldn't find a way to do this in routes which also picked up multiple other slashes @@ -31,7 +31,9 @@ ActionController::Routing::Routes.draw do |map| end map.with_options :controller => 'request' do |request| - request.request_list '/list/:view', :action => 'list', :view => nil + request.request_list_recent '/list/recent', :action => 'list', :view => 'recent' + request.request_list_successful '/list/successful', :action => 'list', :view => 'successful' + request.request_list '/list', :action => 'list' request.new_request '/new', :action => 'new' request.new_request_to_body '/new/:url_name', :action => 'new' @@ -107,6 +109,9 @@ ActionController::Routing::Routes.draw do |map| map.with_options :controller => 'help' do |help| help.help_unhappy '/help/unhappy/:url_title', :action => 'unhappy' + help.help_about '/help/about', :action => 'about' + help.help_contact '/help/contact', :action => 'contact' + help.help_requesting '/help/requesting', :action => 'requesting' help.help_general '/help/:action', :action => :action end @@ -120,22 +125,80 @@ ActionController::Routing::Routes.draw do |map| game.stop '/categorise/stop', :action => 'stop' end - # NB: We don't use routes to *construct* admin URLs, as they need to be relative - # paths to work on the live site proxied over HTTPS to secure.mysociety.org - map.connect '/admin/', :controller => 'admin_general', :action => 'index' - map.connect '/admin/timeline', :controller => 'admin_general', :action => 'timeline' - map.connect '/admin/debug', :controller => 'admin_general', :action => 'debug' - map.connect '/admin/stats', :controller => 'admin_general', :action => 'stats' - map.connect '/admin/missing_scheme', :controller => 'admin_public_body', :action => 'missing_scheme' - map.connect '/admin/unclassified', :controller => 'admin_request', :action => 'list_old_unclassified' - map.connect '/admin/body/:action/:id', :controller => 'admin_public_body' - map.connect '/admin/request/:action/:id', :controller => 'admin_request' - map.connect '/admin/user/:action/:id', :controller => 'admin_user' - map.connect '/admin/track/:action/:id', :controller => 'admin_track' - map.connect '/admin/censor/:action/:id', :controller => 'admin_censor_rule' + map.with_options :controller => 'admin_public_body' do |body| + body.admin_body_missing '/admin/missing_scheme', :action => 'missing_scheme' + body.admin_body_index '/admin/body', :action => 'index' + body.admin_body_list '/admin/body/list', :action => 'list' + body.admin_body_show '/admin/body/show/:id', :action => 'show' + body.admin_body_new '/admin/body/new/:id', :action => 'new' + body.admin_body_edit '/admin/body/edit/:id', :action => 'edit' + body.admin_body_update '/admin/body/update/:id', :action => 'update' + body.admin_body_create '/admin/body/create/:id', :action => 'create' + body.admin_body_destroy '/admin/body/destroy/:id', :action => 'destroy' + body.admin_body_import_csv '/admin/body/import_csv', :action => 'import_csv' + end + + map.with_options :controller => 'admin_general' do |admin| + admin.admin_general_index '/admin', :action => 'index' + admin.admin_timeline '/admin/timeline', :action => 'timeline' + admin.admin_debug '/admin/debug', :action => 'debug' + admin.admin_stats '/admin/stats', :action => 'stats' + end + + map.with_options :controller => 'admin_request' do |admin| + admin.admin_request_list_old_unclassified '/admin/unclassified', :action => 'list_old_unclassified' + admin.admin_request_index '/admin/request', :action => 'index' + admin.admin_request_list '/admin/request/list', :action => 'list' + admin.admin_request_show '/admin/request/show/:id', :action => 'show' + admin.admin_request_resend '/admin/request/resend', :action => 'resend' + admin.admin_request_edit '/admin/request/edit/:id', :action => 'edit' + admin.admin_request_update '/admin/request/update/:id', :action => 'update' + admin.admin_request_destroy '/admin/request/destroy/:id', :action => 'fully_destroy' + admin.admin_request_edit_outgoing '/admin/request/edit_outgoing/:id', :action => 'edit_outgoing' + admin.admin_request_destroy_outgoing '/admin/request/destroy_outgoing/:id', :action => 'destroy_outgoing' + admin.admin_request_update_outgoing '/admin/request/update_outgoing/:id', :action => 'update_outgoing' + admin.admin_request_edit_comment '/admin/request/edit_comment/:id', :action => 'edit_comment' + admin.admin_request_update_comment '/admin/request/update_comment/:id', :action => 'update_comment' + admin.admin_request_destroy_incomine '/admin/request/destroy_incoming/:id', :action => 'destroy_incoming' + admin.admin_request_redeliver_incoming '/admin/request/redeliver_incoming', :action => 'redeliver_incoming' + admin.admin_request_move_request '/admin/request/move_request', :action => 'move_request' + admin.admin_request_generate_upload_url '/admin/request/generate_upload_url/:id', :action => 'generate_upload_url' + admin.admin_request_show_raw_email '/admin/request/show_raw_email/:id', :action => 'show_raw_email' + admin.admin_request_download_raw_email '/admin/request/download_raw_email/:id', :action => 'download_raw_email' + admin.admin_request_clarification '/admin/request/clarification', :action => 'mark_event_as_clarification' + end + + map.with_options :controller => 'admin_user' do |user| + user.admin_user_index '/admin/user', :action => 'index' + user.admin_user_list '/admin/user/list', :action => 'list' + user.admin_user_list_banned '/admin/user/banned', :action => 'list_banned' + user.admin_user_show '/admin/user/show/:id', :action => 'show' + user.admin_user_edit '/admin/user/edit/:id', :action => 'edit' + user.admin_user_update '/admin/user/update/:id', :action => 'update' + user.admin_user_destroy_track '/admin/user/destroy_track', :action => 'destroy_track' + user.admin_user_login_as '/admin/user/login_as/:id', :action => 'login_as' + user.admin_clear_profile_photo '/admin/user/clear_profile_photo/:id', :action => 'clear_profile_photo' + end + + map.with_options :controller => 'admin_track' do |track| + track.admin_track_list '/admin/track/list', :action => 'list' + end + + map.with_options :controller => 'admin_censor_rule' do |rule| + rule.admin_rule_new '/admin/censor/new', :action => 'new' + rule.admin_rule_create '/admin/censor/create', :action => 'create' + rule.admin_rule_edit '/admin/censor/edit/:id', :action => 'edit' + rule.admin_rule_update '/admin/censor/update', :action => 'update' + rule.admin_rule_destroy '/admin/censor/destroy', :action => 'destroy' + end # Allow downloading Web Service WSDL as a file with an extension # instead of a file named 'wsdl' # map.connect ':controller/service.wsdl', :action => 'wsdl' end +# XXX should do something like the following to load routes from separate files +# Dir.glob("config/routes_*yml").each do |f| +# ActionController::Routing::Translator.translate_from_file(f) +# end +ActionController::Routing::Translator.translate_from_file('config', 'i18n-routes.yml') |