X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/c8c13e7d00921bb695d1eeaa5eac0379f2a9add1..18fd80ebb77b75622fb60bfa5ec64878a0c7bdc4:/config/routes.rb diff --git a/config/routes.rb b/config/routes.rb index d213030c6..6efd17759 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -64,16 +64,16 @@ OpenStreetMap::Application.routes.draw do get "relations" => "relations#index" get "map" => "map#index" + end - get "trackpoints" => "tracepoints#index" + namespace :api, :path => "api/0.6" do + resources :tracepoints, :path => "trackpoints", :only => :index - get "user/:id" => "users#show", :id => /\d+/, :as => :api_user + resources :users, :only => :index + resources :users, :path => "user", :id => /\d+/, :only => :show + resources :user_traces, :path => "user/gpx_files", :module => :users, :controller => :traces, :only => :index get "user/details" => "users#details" - get "user/gpx_files" => "users#gpx_files" - get "users" => "users#index", :as => :api_users - end - namespace :api, :path => "api/0.6" do resources :user_preferences, :except => [:new, :create, :edit], :param => :preference_key, :path => "user/preferences" do collection do put "" => "user_preferences#update_all", :as => "" @@ -182,10 +182,6 @@ OpenStreetMap::Application.routes.draw do get "/key" => "site#key" get "/id" => "site#id" get "/query" => "browse#query" - get "/user/new" => "users#new" - post "/user/new" => "users#create" - get "/user/terms" => "users#terms" - post "/user/save" => "users#save" post "/user/:display_name/confirm/resend" => "confirmations#confirm_resend", :as => :user_confirm_resend match "/user/:display_name/confirm" => "confirmations#confirm", :via => [:get, :post] match "/user/confirm" => "confirmations#confirm", :via => [:get, :post] @@ -215,30 +211,30 @@ OpenStreetMap::Application.routes.draw do post "/preview/:type" => "site#preview", :as => :preview # traces - resources :traces, :except => [:show] + resources :traces, :id => /\d+/, :except => [:show] get "/user/:display_name/traces/tag/:tag/page/:page", :page => /[1-9][0-9]*/, :to => redirect(:path => "/user/%{display_name}/traces/tag/%{tag}") get "/user/:display_name/traces/tag/:tag" => "traces#index" get "/user/:display_name/traces/page/:page", :page => /[1-9][0-9]*/, :to => redirect(:path => "/user/%{display_name}/traces") get "/user/:display_name/traces" => "traces#index" - get "/user/:display_name/traces/tag/:tag/rss" => "traces#georss", :defaults => { :format => :rss } - get "/user/:display_name/traces/rss" => "traces#georss", :defaults => { :format => :rss } - get "/user/:display_name/traces/:id" => "traces#show", :as => "show_trace" - scope "/user/:display_name/traces/:trace_id", :module => :traces do + get "/user/:display_name/traces/:id" => "traces#show", :id => /\d+/, :as => "show_trace" + scope "/user/:display_name/traces/:trace_id", :module => :traces, :trace_id => /\d+/ do get "picture" => "pictures#show", :as => "trace_picture" get "icon" => "icons#show", :as => "trace_icon" end get "/traces/tag/:tag/page/:page", :page => /[1-9][0-9]*/, :to => redirect(:path => "/traces/tag/%{tag}") get "/traces/tag/:tag" => "traces#index" get "/traces/page/:page", :page => /[1-9][0-9]*/, :to => redirect(:path => "/traces") - get "/traces/tag/:tag/rss" => "traces#georss", :defaults => { :format => :rss } - get "/traces/rss" => "traces#georss", :defaults => { :format => :rss } get "/traces/mine/tag/:tag/page/:page", :page => /[1-9][0-9]*/, :to => redirect(:path => "/traces/mine/tag/%{tag}") get "/traces/mine/tag/:tag" => "traces#mine" get "/traces/mine/page/:page", :page => /[1-9][0-9]*/, :to => redirect(:path => "/traces/mine") get "/traces/mine" => "traces#mine" get "/trace/create", :to => redirect(:path => "/traces/new") get "/trace/:id/data" => "traces#data", :id => /\d+/, :as => "trace_data" - get "/trace/:id/edit", :to => redirect(:path => "/traces/%{id}/edit") + get "/trace/:id/edit", :id => /\d+/, :to => redirect(:path => "/traces/%{id}/edit") + + namespace :traces, :path => "" do + resource :feed, :path => "(/user/:display_name)/traces(/tag/:tag)/rss", :only => :show, :defaults => { :format => :rss } + end # diary pages resources :diary_entries, :path => "diary", :only => [:new, :create, :index] do @@ -269,28 +265,36 @@ OpenStreetMap::Application.routes.draw do post "/diary_comments/:comment/unhide" => "diary_comments#unhide", :comment => /\d+/, :as => :unhide_diary_comment # user pages - resources :users, :path => "user", :param => :display_name, :only => [:show, :destroy] do + get "/user/terms", :to => redirect(:path => "/account/terms") + resources :users, :path => "user", :param => :display_name, :only => [:new, :create, :show] do resource :role, :controller => "user_roles", :path => "roles/:role", :only => [:create, :destroy] scope :module => :users do resource :issued_blocks, :path => "blocks_by", :only => :show resource :received_blocks, :path => "blocks", :only => [:show, :edit, :destroy] + resource :status, :only => :update end end get "/user/:display_name/account", :to => redirect(:path => "/account/edit") - post "/user/:display_name/set_status" => "users#set_status", :as => :set_status_user - resource :account, :only => [:edit, :update, :destroy] - - namespace :account do - resource :deletion, :only => [:show] + resource :account, :only => [:edit, :update, :destroy] do + scope :module => :accounts do + resource :terms, :only => [:show, :update] + resource :deletion, :only => :show + end end + resource :dashboard, :only => [:show] - resource :preferences, :only => [:show, :edit, :update] + resource :preferences, :only => [:show, :update] + get "/preferences/edit", :to => redirect(:path => "/preferences") resource :profile, :only => [:edit, :update] # friendships - match "/user/:display_name/make_friend" => "friendships#make_friend", :via => [:get, :post], :as => "make_friend" - match "/user/:display_name/remove_friend" => "friendships#remove_friend", :via => [:get, :post], :as => "remove_friend" + scope "/user/:display_name" do + resource :follow, :only => [:create, :destroy, :show], :path => "follow" + + get "make_friend", :to => redirect("/user/%{display_name}/follow") + get "remove_friend", :to => redirect("/user/%{display_name}/follow") + end # user lists namespace :users do