Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2014
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.49 KB | None | 0 0
  1. - name: offersearch
  2. elements: [header, resulttable]
  3. autogenerate: [header, resulttable]
  4. controller: offers
  5. action: index
  6. cache: false
  7.  
  8. OffersController < Alchemy::BaseController
  9. def index
  10.  
  11. end
  12. end
  13.  
  14. @offers = Offer.where(...)
  15.  
  16. # config/alchemy/page_layouts.yml
  17. - name: searchresults
  18. elements: [offer_searchresults]
  19. unique: true
  20. cache: false
  21.  
  22. # app/controllers/alchemy/pages_controller_ext.rb
  23. module Alchemy
  24. PagesController.class_eval do
  25.  
  26. before_filter :set_searchresult_page, :only => :show
  27. before_filter :perform_search, :only => :show
  28.  
  29. def perform_search
  30. if params[:searchprofgroup].present? && @search_result_page
  31. @offers = Offer.where(fb: params[:searchprofgroup])
  32. end
  33. end
  34.  
  35. private
  36.  
  37. def set_searchresult_page
  38. @search_result_page = Page.published.where(page_layout: "searchresults").first
  39. end
  40.  
  41. end
  42. end
  43.  
  44. # config/application.rb
  45. config.to_prepare do
  46. Dir.glob(Rails.root.join("app/**/*_ext*.rb")) do |c|
  47. Rails.configuration.cache_classes ? require(c) : load(c)
  48. end
  49. end
  50.  
  51. get '/searchresult' => 'offers#handlesearch', :as => :searchresult
  52.  
  53. class OffersController < Alchemy::PagesController
  54.  
  55. helper Alchemy::PagesHelper
  56.  
  57. def handlesearch
  58.  
  59. params[:urlname] = request.path_info.gsub('/', '')
  60. @page ||= load_page
  61.  
  62. if !@page.blank?
  63. @offers = Offer.where(fb: params[:searchprofgroup])
  64. else
  65. render_404
  66. end
  67.  
  68. end
  69.  
  70. end
  71.  
  72. #/app/views/offers/handlesearch.html.erb
  73. <%= render_page_layout %>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement