virtualfunction / typeface

An open source Ruby on Rails 'content generation' orientated CMS / publishing framework

This URL has Read+Write access

Jase (author)
Fri Aug 29 02:42:14 -0700 2008
commit  eeca4aab9ee96fd2c546cdc9a4425dcd2e6b8ba6
tree    3ca6b591ed59271cac33bb504b563da4a480979c
parent  6b60ec70949c8e1473f47052dca7cb730711deb4
typeface / config / routes.rb
100644 69 lines (60 sloc) 2.067 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
ActionController::Routing::Routes.draw do |map|
  
  # Anything with collapasible tree naivation (i.e. controller includes
  # ContentTreeNavigation should have this route added to it's member section
  collapsible_navigation = { :expand_item => :post, :collapse_item => :post }
 
  # Job management
  map.resources :publishing_jobs,
    :member => {
      :run => :get,
      :download => :get }
  map.resource :publishing_logs,
    :collection => {
      :download => :any }
 
  map.namespace :settings do |settings|
    # Users and Roles Administration
    settings.resources :roles do |role|
      role.resources :users,
        :member => {
          :suspend => :post,
          :activate => :post }
    end
    # Settings related
    settings.resource :basics, :google_webmaster_tools, :panels, :activity_logs
  end
  
  # Session / Account related
  map.resources :sessions, :my_account_details
 
  # Main Contents Navigation
  map.resources :contents,
    :collection => { :reorder => :post },
    :member => collapsible_navigation \
  do |content|
    # Install routes from custom content types
    for code in EXTRA_ROUTES_INIT_CODE
      code[content, map]
    end
    # Permissions
    content.resources :permissions,
      :collection => {
        :reorder => :post,
        :test_form => :get,
        :test_result => :get }
    content.resource :keywords
    # Built in custom content types
    content.resource :folders, :file_assets, :textile_pages
  end
  
  # Built in custom content types # TODO: Remove in refactor
  map.resources :folders, :file_assets, :textile_pages
  
  # Textile editor AJAX calls
  map.resource :textile_editor,
    :member => collapsible_navigation,
    :collection => {
      :verify => :post,
      :preview => :post,
      :add_image => :post,
      :link_selector => :get,
      :image_search => :get,
      :insert_link => :get,
      :insert_image => :get }
  
  # Root '/' URL mapping
  map.connect '', :controller => 'my_account_details'
end