From e0d0a2aaa69aed2307937ea229a0c6ca1c620b80 Mon Sep 17 00:00:00 2001 From: Harry Bomrah Date: Mon, 25 Apr 2016 20:10:44 +0800 Subject: [PATCH] added keywords filteration for index pages --- app/controllers/announcements_controller.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/controllers/announcements_controller.rb b/app/controllers/announcements_controller.rb index 049db7e..976e445 100644 --- a/app/controllers/announcements_controller.rb +++ b/app/controllers/announcements_controller.rb @@ -20,9 +20,21 @@ class AnnouncementsController < ApplicationController announcements = announcements.concat(feeds_anns) sorted = announcements.sort{ |k,v| v["postdate"] <=> k["postdate"] } sorted = top_anns + sorted + if params["keywords"].present? + sorted = sorted.find_all{|anns| + if anns["source-site"].present? + /#{params[:keywords].to_s}/i.match anns["title"] + else + /#{params[:keywords].to_s}/i.match anns.title + end + } + end sorted = Kaminari.paginate_array(sorted).page(OrbitHelper.page_number).per(OrbitHelper.page_data_count) rescue [] else announcements = top_anns + announcements + if params["keywords"].present? + announcements = announcements.find_all{|anns| /#{params[:keywords].to_s}/i.match anns.title} + end sorted = Kaminari.paginate_array(announcements).page(OrbitHelper.page_number).per(OrbitHelper.page_data_count) rescue [] end total_pages = sorted.total_pages