1.Announcement 15 per page
2.Search keywords.
3.Redis search index with new code.
This commit is contained in:
Matthew K. Fu JuYuan 2012-07-31 10:59:48 +08:00
parent bb154f5be6
commit 4dea025c8a
16 changed files with 22 additions and 18 deletions

View File

@ -302,4 +302,4 @@ en:
site_search: Site Search
sitesearch: Google Site Search
site_setting_help: Please Enter the search argument for Google search.
result_get: "Found %{item_num} items"
result_get: "Searched about ' %{search_word} ' Found %{item_num} items"

View File

@ -439,7 +439,7 @@ zh_tw:
site_search: "全站搜尋"
sitesearch: Google Site Search
site_setting_help: 請輸入送交Google搜尋的參數
result_get: "共搜尋到%{item_num}筆資料"
result_get: "搜尋標題有關 ' %{search_word} ' 共搜尋到%{item_num}筆資料"
activerecord:
errors:
template: # ~ 2.3.5 backward compatible

View File

@ -196,7 +196,7 @@ module ParserCommon
ret << part.content rescue ''
when 'module_widget'
url = "/panel/#{part.module_app.key}/widget/#{part.widget_path}?inner=true"
options = "&category_id=#{!part[:category].blank? ? part[:category].blank? : category}&tag_id=#{!part[:tag].blank? ? part[:tag] : tag}&page=#{params[:page]}&part_title=#{Rack::Utils.escape(part_title).gsub("+", "%20") rescue nil}"
options = "&category_id=#{!part[:category].blank? ? part[:category].blank? : category}&tag_id=#{!part[:tag].blank? ? part[:tag] : tag}&page=#{params[:page]}&search_query=#{params[:search_query]}&part_title=#{Rack::Utils.escape(part_title).gsub("+", "%20") rescue nil}"
ret << "<div class='dymanic_load' path='#{url + options}'></div>"
when 'public_r_tag'
ret << "<r:#{part.public_r_tag} id='#{part.public_r_tag_object_id}'/>"

View File

@ -15,18 +15,18 @@ class Panel::Announcement::FrontEnd::BulletinsController < OrbitWidgetController
search = Redis::Search.query("Bulletin", params[:search_query], :conditions =>search_cond,:limit=>Bulletin.all.count)
search_result = search.collect{|t| t["id"]}
@bulletins = Bulletin.all.can_display.any_in(_id:search_result).page( params[:page_main]).per(10)
@bulletins = Bulletin.all.can_display.any_in(_id:search_result).page( params[:page_main]).per(15)
else
date_now = Time.now
if !params[:category_id].blank?
@bulletins = Bulletin.all.can_display.where(:bulletin_category_id => params[:category_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(10)
@bulletins = Bulletin.all.can_display.where(:bulletin_category_id => params[:category_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(15)
@current_category = BulletinCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank?
@tag = AnnouncementTag.find(params[:tag_id]) rescue nil
@tag = AnnouncementTag.where(key: params[:tag_id])[0] unless @tag
@bulletins = @tag.bulletins.can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(10)
@bulletins = @tag.bulletins.can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(15)
else
@bulletins = Bulletin.all.can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(10)
@bulletins = Bulletin.all.can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(15)
end
end

View File

@ -76,11 +76,11 @@ class Bulletin
# end
def s_title
self.title_translations[:zh_tw]
self.title_translations["zh_tw"]
end
def s_title_en
self.title_translations[:en]
self.title_translations["en"]
end
# def s_text_en

View File

@ -18,11 +18,11 @@
<% if @bulletins.blank? and !params[:search_query].blank? %>
<%=render :partial => 'shared/search_not_found' %>
<% elsif !params[:search_query].blank? %>
<%= t("search.result_get",:item_num=>@bulletins.count) %>
<%= t("search.result_get",:search_word => params[:search_query],:item_num=>@bulletins.count) %>
<% end %>
<% @bulletins.each do |post| %>
<tr>
<td><%= post.bulletin_category.title rescue nil %></td>
<td><%= (post.bulletin_category.title rescue nil ) if !params[:search_query].blank? %></td>
<td><%= link_to post.title, panel_announcement_front_end_bulletin_path(post, :category_id => post.bulletin_category_id) %>
<%#= link_to post.title, panel_announcement_back_end_bulletin_path(post) %>
</td>

View File

@ -1,6 +1,6 @@
<%= form_tag panel_announcement_front_end_bulletins_path, method: :get do %>
<p>
<%= text_field_tag :search_query, params[:search_query] %>
<%= text_field_tag :search_query, params[:search_query],{:value => (params[:search_query].blank?? '' : params[:search_query]),:placeholder=>t("announcement.search") }%>
<%= submit_tag "Search", name: nil %>
</p>
<% end %>

View File

@ -13,7 +13,7 @@
<h3 class="h3"><%= t('announcement.tag_cloud') %></h3>
<div class="cloud">
<% @tags.each do |tag| %>
<%= link_to tag[I18n.locale], panel_announcement_front_end_bulletins_path(:tag_id => tag.id),:style=>"font-size: #{100+ tag.cloud_amper * 10}%", :class => "hot#{rand(4) + 1} #{(tag.id.to_s.eql?(params[:tag_id]) || tag.key.eql?(params[:tag_id])) ? 'active' : nil}" %>
<%= link_to tag[I18n.locale], panel_announcement_front_end_bulletins_path(:tag_id => tag.id), :class => "hot#{rand(4) + 1} #{(tag.id.to_s.eql?(params[:tag_id]) || tag.key.eql?(params[:tag_id])) ? 'active' : nil}" %>
<% end %>
</div>
</div>

View File

@ -62,6 +62,7 @@ en:
categories: Categories
error:
no_avilb_cate_for_posting: You need a category to submit your post,please contact admin
search: Search in announcement
sure?: Sure?
campus_news: Campus News
more: more+

View File

@ -42,6 +42,7 @@ zh_tw:
no_avilb_cate_for_posting: 您目前沒有分類可以刊登公告,請聯絡系統管理員為您開通分類
tags: 標籤
categories: 分類
search: 搜尋公告
status: 狀態
sure?: 確定嗎?
campus_news: 校園新聞

View File

@ -101,11 +101,11 @@ class NewsBulletin
# end
def s_title
self.title_translations[:zh_tw]
self.title_translations["zh_tw"]
end
def s_title_en
self.title_translations[:en]
self.title_translations["en"]
end
# def s_text_en

View File

@ -10,7 +10,7 @@
<% if @news_bulletins.blank? and !params[:search_query].blank? %>
<%=render :partial => 'shared/search_not_found' %>
<% elsif !params[:search_query].blank? %>
<%= t("search.result_get",:item_num=>@news_bulletins.count) %>
<%= t("search.result_get",:search_word => params[:search_query],:item_num=>@news_bulletins.count) %>
<% end %>
<table class="table table-bordered">
<tbody>

View File

@ -1,6 +1,6 @@
<%= form_tag panel_news_front_end_news_bulletins_path, method: :get do %>
<p>
<%= text_field_tag :search_query, params[:search_query] %>
<%= text_field_tag :search_query, params[:search_query],{:value => (params[:search_query].blank?? '' : params[:search_query]),:placeholder=>t("news.search") }%>
<%= hidden_field_tag :category_id, params[:category_id] %>
<%= submit_tag "Search", name: nil %>
</p>

View File

@ -13,7 +13,7 @@
<h3 class="h3"><%= t('announcement.tag_cloud') %></h3>
<div class="cloud">
<% @tags.each do |tag| %>
<%= link_to tag[I18n.locale], panel_news_front_end_news_bulletins_path(:tag_id => tag.id), :style => "font-size: #{100+ tag.cloud_amper * 10}%",:class => "hot#{rand(4) + 1} #{(tag.id.to_s.eql?(params[:tag_id]) || tag.key.eql?(params[:tag_id])) ? 'active' : nil}" %>
<%= link_to tag[I18n.locale], panel_news_front_end_news_bulletins_path(:tag_id => tag.id),:class => "hot#{rand(4) + 1} #{(tag.id.to_s.eql?(params[:tag_id]) || tag.key.eql?(params[:tag_id])) ? 'active' : nil}" %>
<% end %>
</div>
</div>

View File

@ -59,6 +59,7 @@ en:
all_articles: List
add_new: Add
sure?: Sure?
search: Search in news
campus_news: Campus News
more: more+
news_bulletins: NewsBulletins

View File

@ -39,6 +39,7 @@ zh_tw:
all_articles: 列表
tags: 標籤
categories: 分類
search: 搜尋新聞
status: 狀態
sure?: 確定嗎?
campus_news: 校園新聞