Orbit/config/routes.rb

158 lines
5.0 KiB
Ruby

Orbit::Application.routes.draw do
devise_for :users,:controllers => {:sessions => 'sessions'}
mount Resque::Server, :at => "/admin/resque"
# routes for sinatra app
match '/site/set_registered', :to => CentralServerExchangeApp
match '/site/public_key', :to => CentralServerExchangeApp
match '/site/update', :to => GithubApp
match '/purchase/:type', :to => CentralServerExchangeApp
match 'load_orbit_bar' => 'pages#load_orbit_bar'
# routes for admin
namespace :admin do
mount Resque::Server.new, :at => "/resque"
resources :assets do
collection do
get 'file_upload'
post 'delete'
end
end
resources :asset_categories
resources :asset_tags
resources :app_auths
resources :object_auths do
match 'new_interface/:ob_type/:title/new' => "object_auths_new_interface#new" ,:as => :init_ob_auth,:via => :get
match 'new_interface' => "object_auths_new_interface#setting" ,:as => :ob_auth,:via => :get
match 'new_interface' => "object_auths_new_interface#update_setting" ,:as => :ob_auth,:via => :post
match 'new_interface' => "object_auths_new_interface#user_list" ,:as => :ob_auth_show,:via => :put
collection do
match 'new/:type/:obj_id',:action => 'new',:via => "get",:as => :init
end
member do
match ':id/create_role',:action => 'create_role',:via => "post",:as => :create_role
match 'remove/:type/:target_id' ,:action=> 'remove_role',:via => "delete",:as =>:remove
end
end
match 'ad_banners/:id/preview' => 'ad_banners#realtime_preview',:as => :realtime_preview_ad_banner,:via => :put
match 'ad_banners/:id/rename' => 'ad_banners#rename',:as => :rename_ad_banner,:via => :post
resources :ad_banners do
collection do
match 'new_ad_image' => 'ad_images#new',:as => :new_ad_image,:via => :get
match 'new_ad_image' => 'ad_images#create',:as => :create_ad_image,:via => :post
end
resources :ad_images ,:except => [:show,:index]
end
resources :dashboards
resources :designs do
collection do
get 'upload_package'
post 'delete'
post 'upload_package'
end
member do
post 'edit_file' => 'designs#edit_file'
end
end
resources :infos do
get 'add_attribute_field'
end
resources :items
match 'update_position' => 'items#update_position'
resources :links do
member do
get 'delete'
end
end
resources :pages do
member do
get 'delete'
get 'reload_themes'
end
end
resources :module_apps do
match 'manager_auth_proc' => "module_apps_new_interface#setting" ,:as => :manager_auth_proc,:via => :get
match 'manager_auth_proc' => "module_apps_new_interface#update_setting" ,:as => :manager_auth_proc,:via => :post
match 'manager_auth_proc' => "module_apps_new_interface#user_list" ,:as => :manager_auth_show,:via => :put
resources :app_auths do
member do
match 'remove/:type/:target_id' ,:action=> 'remove',:via => "delete",:as =>:remove
end
end
member do
match 'assign_manager' ,:action=> 'assign_manager',:via => "post",:as =>:assign_manager
match 'assign_sub_manager' ,:action=> 'assign_sub_manager',:via => "post",:as =>:assign_sub_manager
match 'remove_manager/:app_manager_id' ,:action=> 'remove_manager',:via => "delete",:as =>:remove_manager
match 'remove_sub_manager/:app_sub_manager_id' ,:action=> 'remove_sub_manager',:via => "delete",:as =>:remove_sub_manager
get 'reload_frontend_pages'
end
end
resources :page_parts do
member do
get 'reload_widgets'
get 'reload_r_tag_options'
end
end
resources :purchases do
collection do
get 'install_app'
end
member do
get 'download'
end
end
resources :roles do
get 'add_sub_role'
get 'add_attribute_field'
end
resources :sites do
get 'mail_setting'
get 'site_info'
get 'sitemap'
get 'sitemap_frontend'
get 'sitemap_toggle', :on => :member
get 'system_info'
get 'ui_theme'
end
resources :snippets
resources :tags
resources :translations
resources :users
end
# end admin
namespace :panel do
resources :users
end
match '/panel/:app_name/front_end/:app_action/:id' => 'pages#show_from_link', :constraints => lambda { |request|
!request.query_string.include?("inner=true")
}
match '/panel/:app_name/front_end/:app_action' => 'pages#index_from_link', :constraints => lambda { |request|
!request.query_string.include?("inner=true")
}
# routes for gridfs files
match "/gridfs/*path" => "gridfs#serve"
# match "/images/*path" => "gridfs#serve_images"
# match "/admin/pages/images/*path" => "gridfs#serve_images"
# routes for pages to generate
match '*page_name' => 'pages#show', :as => :page, :constraints => lambda{|request|
!request.path.starts_with?("/panel")
}
root :to => 'pages#index'
end