Fix category search to archives frontend search
This commit is contained in:
parent
ab9214a4db
commit
a7a8a504a7
|
@ -7,15 +7,24 @@ class Panel::Archive::FrontEnd::ArchiveFilesController < OrbitWidgetController
|
||||||
end
|
end
|
||||||
|
|
||||||
def get_search_result
|
def get_search_result
|
||||||
@search = ArchiveFileCategory.solr_search do
|
@search = ArchiveFileCategory.solr_search do
|
||||||
fulltext params[:search_query]
|
fulltext params[:search_query]
|
||||||
with(:frontend_search,true)
|
with(:frontend_search,true)
|
||||||
end
|
end
|
||||||
|
|
||||||
search_result = @search.results.collect{|result| result.id}
|
search_result = @search.results.collect{|result| result.id}
|
||||||
params[:category_id] = @search.results.collect{|result| result.id}
|
params[:category_id] = @search.results.collect{|result| result.id}
|
||||||
|
|
||||||
@archive_file_categorys = ArchiveFileCategory.any_in(_id:search_result).page( params[:page_main]).per(@page_num)
|
@archive_file_categorys = ArchiveFileCategory.any_in(_id:search_result).page( params[:page_main]).per(@page_num)
|
||||||
|
end
|
||||||
|
|
||||||
|
def get_search_category(search_query)
|
||||||
|
search_category = ArchiveFileCategory.solr_search do
|
||||||
|
fulltext search_query
|
||||||
|
with(:frontend_search, true)
|
||||||
|
end
|
||||||
|
|
||||||
|
params[:category_id] = search_category.results.collect { |result| result.id }
|
||||||
end
|
end
|
||||||
|
|
||||||
def index
|
def index
|
||||||
|
@ -27,25 +36,27 @@ class Panel::Archive::FrontEnd::ArchiveFilesController < OrbitWidgetController
|
||||||
@page_num = 10
|
@page_num = 10
|
||||||
end
|
end
|
||||||
|
|
||||||
|
get_search_category(params[:search_query])
|
||||||
|
|
||||||
date_now = Time.now
|
date_now = Time.now
|
||||||
@archive_file_categorys = ArchiveFileCategory.all
|
@archive_file_categorys = ArchiveFileCategory.all
|
||||||
# @archive_files = ArchiveFile.where( :is_hidden => false ).desc(:is_top).page(params[:page]).per(@page_num)
|
# @archive_files = ArchiveFile.where( :is_hidden => false ).desc(:is_top).page(params[:page]).per(@page_num)
|
||||||
|
|
||||||
if !params[:category_id].blank? && !params[:tag_id].blank?
|
if !params[:category_id].blank? && !params[:tag_id].blank?
|
||||||
@archive_files = @archive_files.default_sort(params[:sort]).can_display.where(:archive_file_category_id.in => params[:category_id], :tagged_ids.in => params[:tag_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
@archive_files = @archive_files.default_sort(params[:sort]).can_display.where(:archive_file_category_id.in => params[:category_id], :tagged_ids.in => params[:tag_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
||||||
|
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
|
||||||
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
|
|
||||||
|
|
||||||
elsif !params[:category_id].blank?
|
elsif !params[:category_id].blank?
|
||||||
@archive_files = ArchiveFile.default_sort(params[:sort]).can_display.where(:archive_file_category_id.in => params[:category_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
@archive_files = ArchiveFile.default_sort(params[:sort]).can_display.where(:archive_file_category_id.in => params[:category_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
||||||
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
|
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
|
||||||
|
|
||||||
elsif !params[:tag_id].blank?
|
elsif !params[:tag_id].blank?
|
||||||
@archive_files = ArchiveFile.default_sort(params[:sort]).can_display.where(:tagged_ids.in => params[:tag_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
@archive_files = ArchiveFile.default_sort(params[:sort]).can_display.where(:tagged_ids.in => params[:tag_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
||||||
|
|
||||||
else
|
else
|
||||||
@archive_files = ArchiveFile.default_sort(params[:sort]).can_display.desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
@archive_files = ArchiveFile.default_sort(params[:sort]).can_display.desc( :is_top ).page( params[:page_main] ).per(@page_num)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
get_categorys
|
get_categorys
|
||||||
|
|
||||||
if params[:sort]
|
if params[:sort]
|
||||||
|
|
|
@ -42,10 +42,10 @@ class ArchiveFile
|
||||||
# text :titles do
|
# text :titles do
|
||||||
# title_translations.to_a.collect{|t| t[1]}
|
# title_translations.to_a.collect{|t| t[1]}
|
||||||
# end
|
# end
|
||||||
|
|
||||||
# boolean :frontend_search do
|
# boolean :frontend_search do
|
||||||
# !is_hidden
|
# !is_hidden
|
||||||
# end
|
# end
|
||||||
|
|
||||||
# end
|
# end
|
||||||
|
|
||||||
def self.search( category_id = nil )
|
def self.search( category_id = nil )
|
||||||
|
|
|
@ -2,7 +2,6 @@ class ArchiveTag < Tag
|
||||||
|
|
||||||
has_and_belongs_to_many :archive_files
|
has_and_belongs_to_many :archive_files
|
||||||
|
|
||||||
|
|
||||||
def get_visible_links(sort = :name)
|
def get_visible_links(sort = :name)
|
||||||
self.archive_files.where(:is_hidden => false).desc(:is_top, sort)
|
self.archive_files.where(:is_hidden => false).desc(:is_top, sort)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue