implemented activities tab
[shapado:piglops-shapado.git] / config / routes.rb
1 Shapado::Application.routes.draw do
2   devise_for(:users,
3              :path_names => {:sign_in => 'login', :sign_out => 'logout'},
4              :controllers => {:registrations => 'users', :omniauth_callbacks => "multiauth/sessions"}) do
5     match '/users/connect' => 'users#connect', :method => :post, :as => :connect
6   end
7   match '/invitations/accept' => 'invitations#accept', :method => :get, :as => :accept_invitation
8   match '/disconnect_twitter_group' => 'groups#disconnect_twitter_group', :method => :get
9   match '/group_twitter_request_token' => 'groups#group_twitter_request_token', :method => :get
10   match 'confirm_age_welcome' => 'welcome#confirm_age', :as => :confirm_age_welcome
11   match '/change_language_filter' => 'welcome#change_language_filter', :as => :change_language_filter
12   match '/register' => 'users#create', :as => :register
13   match '/signup' => 'users#new', :as => :signup
14   match '/facts' => 'welcome#facts', :as => :facts
15   match '/plans' => 'doc#plans', :as => :plans
16   match '/chat' => 'doc#chat', :as => :chat
17   match '/feedback' => 'welcome#feedback', :as => :feedback
18   match '/send_feedback' => 'welcome#send_feedback', :as => :send_feedback
19   match '/settings' => 'users#edit', :as => :settings
20   match '/tos' => 'doc#tos', :as => :tos
21   match '/privacy' => 'doc#privacy', :as => :privacy
22   match '/widgets/embedded/:id' => 'widgets#embedded', :as => :embedded_widget
23   match '/suggestions' => 'users#suggestions', :as => :suggestions
24   match '/activities' => 'activities#index', :as => :activities
25   get "mobile/index"
26
27   resources :users do
28     collection do
29       get :autocomplete_for_user_login
30       post :connect
31     end
32
33     member do
34       get :unfollow
35       get :follow
36       post :follow_tags
37       post :unfollow_tags
38       get :feed
39       get :expertise
40       get :preferred
41       get :by_me
42       get :contributed
43       get :answers
44       get :follows
45       get :activity
46     end
47   end
48
49   resources :ads
50   resources :adsenses
51   resources :adbards
52   resources :badges
53
54   resources :searches, :path => "search", :as => "search"
55
56   resources :pages do
57     member do
58       get :js
59       get :css
60     end
61   end
62
63   resources :announcements do
64     collection do
65       post :hide
66     end
67   end
68
69   resources :imports do
70     collection do
71       post :send_confirmation
72     end
73   end
74
75   get '/questions/:id/:slug' => 'questions#show', :as => :se_url, :id => /\d+/
76   post '/questions/:id/start_reward' => "reward#start", :as => :start_reward
77   get '/questions/:id/close_reward' => "reward#close", :as => :close_reward
78
79   match '/answers(.format)' => 'answers#index', :as => :answers
80
81   scope('questions') do
82     resources :tags, :constraints => { :id => /\S+/ }
83   end
84
85   resources :questions do
86     resources :votes
87     resources :flags
88
89     collection do
90       get :tags_for_autocomplete
91       get :unanswered
92       get :related_questions
93       get :random
94     end
95
96     member do
97       get :solve
98       get :unsolve
99       get :flag
100       get :follow
101       get :unfollow
102       get :history
103       get :revert
104       get :diff
105       get :move
106       put :move_to
107       get :retag
108       put :retag_to
109       post :close
110       put  :open
111       get :remove_attachment
112
113       get :twitter_share
114     end
115
116     resources :comments do
117       resources :votes
118     end
119
120     resources :answers do
121       resources :votes
122       resources :flags
123       member do
124         get :favorite
125         get :unfavorite
126         get :flag
127         get :history
128         get :diff
129         get :revert
130       end
131
132       resources :comments do
133         resources :votes
134       end
135     end
136
137     resources :close_requests
138     resources :open_requests
139   end
140
141
142
143   match 'questions/tags/:tags' => 'tags#show', :as => :question_tag
144 #   match 'questions/unanswered/tags/:tags' => 'questions#unanswered'
145
146   resources :groups do
147     collection do
148       get :autocomplete_for_group_slug
149     end
150
151     member do
152       get :allow_custom_ads
153       get :disallow_custom_ads
154       get :favicon
155       get :close
156       get :accept
157       get :css
158     end
159   end
160
161   resources :invitations do
162     member do
163       post :revoke
164     end
165   end
166
167   scope '/manage' do
168     resources :widgets do
169       member do
170         post :move
171       end
172     end
173
174     resources :constrains_configs
175     resources :members
176   end
177
178   scope '/manage', :as => 'manage' do
179     controller 'admin/manage' do
180       match 'social' => :social
181       match 'properties' => :properties
182       match 'theme' => :theme
183       match 'actions' => :actions
184       match 'stats' => :stats
185       match 'reputation' => :reputation
186       match 'domain' => :domain
187       match 'content' => :content
188       match 'invitations' => :invitations
189     end
190   end
191
192   namespace :moderate do
193     resources :questions do
194       collection do
195         get :flagged
196         get :to_close
197         get :to_open
198         put :manage
199       end
200     end
201     resources :answers
202     resources :users
203   end
204
205   match '/moderate' => 'moderate/questions#index'
206 #   match '/search' => 'searches#index', :as => :search
207   match '/about' => 'groups#show', :as => :about
208   root :to => 'questions#index'
209   match '/:controller(/:action(/:id))'
210 end