lib/irwi/support/route_mapper.rb in irwi-0.2.4 vs lib/irwi/support/route_mapper.rb in irwi-0.4.0

- old
+ new

@@ -1,30 +1,34 @@ +require 'action_dispatch' + module Irwi::Support::RouteMapper - + # Defining wiki root mount point def wiki_root( root, config = {} ) opts = { :controller => 'wiki_pages', :root => root }.merge(config) - + Irwi.config.system_pages.each do |page_action, page_path| # Adding routes for system pages - connect( "#{root}/#{page_path}", opts.merge({ :action => page_action }) ) + get( "#{root}/#{page_path}", opts.merge({ :action => page_action }) ) end - - connect( "#{root}/compare/*path", opts.merge({ :action => 'compare' }) ) # Comparing two versions of page - connect( "#{root}/new/*path", opts.merge({ :action => 'new' }) ) # Wiki new route - connect( "#{root}/edit/*path", opts.merge({ :action => 'edit' }) ) # Wiki edit route - connect( "#{root}/history/*path", opts.merge({ :action => 'history' }) ) # Wiki history route - + + get( "#{root}/compare/(*path)", opts.merge({ :action => 'compare', :as => 'compare_wiki_page' }) ) # Comparing two versions of page + get( "#{root}/new/(*path)", opts.merge({ :action => 'new', :as => 'new_wiki_page' }) ) # Wiki new route + get( "#{root}/edit/(*path)", opts.merge({ :action => 'edit', :as => 'edit_wiki_page' }) ) # Wiki edit route + get( "#{root}/history/(*path)", opts.merge({ :action => 'history', :as => 'history_wiki_page' }) ) # Wiki history route + # Attachments - connect("#{root}/attach/*path", opts.merge({:action => 'add_attachment', :conditions => {:method => :post}})) - connect("#{root}/attach/:attachment_id", opts.merge({:action => 'remove_attachment', :conditions => {:method => :delete}})) - - - connect( "#{root}/*path", opts.merge({ :action => 'destroy', :conditions => { :method => :delete } }) ) # Wiki destroy route - connect( "#{root}/*path", opts.merge({ :action => 'update', :conditions => { :method => :post } }) ) # Save wiki pages route - connect( "#{root}/*path", opts.merge({ :action => 'show', :conditions => { :method => :get } }) ) # Wiki pages route - #connect( "#{root}/*path", opts.merge({ :action => 'show', :conditions => { :method => :get } }) ) # Wiki pages route + post("#{root}/attach/(*path)", opts.merge({:action => 'add_attachment' })) + delete("#{root}/attach/:attachment_id", opts.merge({:action => 'remove_attachment' })) + + delete( "#{root}/(*path)", opts.merge({ :action => 'destroy', :as => 'destroy_wiki_page' }) ) # Wiki destroy route + post( "#{root}/(*path)", opts.merge({ :action => 'update', :as => 'update_wiki_page' }) ) # Save wiki pages route + get( "#{root}/(*path)", opts.merge({ :action => 'show', :as => 'wiki_page' }) ) # Wiki pages route end - + +end + +ActionDispatch::Routing::Mapper.instance_eval do + include Irwi::Support::RouteMapper end