fix bug
This commit is contained in:
parent
e442c0060a
commit
945841a5fb
|
@ -138,6 +138,7 @@ class AnnouncementsController < ApplicationController
|
|||
def pack_data(is_random=false)
|
||||
cats = OrbitHelper.widget_categories || []
|
||||
tags = OrbitHelper.widget_tags || []
|
||||
tags = ['all'] if tags.blank?
|
||||
subpart = OrbitHelper.get_current_widget
|
||||
get_tabs_option
|
||||
anns = []
|
||||
|
@ -147,11 +148,11 @@ class AnnouncementsController < ApplicationController
|
|||
else
|
||||
if cats.count != 1 || tags == ["all"]
|
||||
cats.each do |cat|
|
||||
anns = anns + get_anncs_for_pack_data([cat],tags,'')
|
||||
anns = anns + get_anncs_for_pack_data([cat],tags,'',is_random)
|
||||
end
|
||||
else
|
||||
tags.each do |tag|
|
||||
anns = anns + get_anncs_for_pack_data(cats,[tag],tag)
|
||||
anns = anns + get_anncs_for_pack_data(cats,[tag],tag,is_random)
|
||||
end
|
||||
use_tag = true
|
||||
end
|
||||
|
@ -500,8 +501,8 @@ class AnnouncementsController < ApplicationController
|
|||
anns = anns_cache.first.filter_result
|
||||
end
|
||||
if devide_flag
|
||||
feeds_anns = get_feed_announcements("widget")
|
||||
top_anns = top_anns + feeds_anns.select{|v| v['is_top']}
|
||||
feeds_anns = get_feed_announcements("widget",nil,cats,widget_data_count - top_anns.count)
|
||||
top_anns = top_anns + feeds_anns.select{|v| v['is_top'] == true}
|
||||
top_anns = top_anns.sort_by { |a| tmp=a["postdate"].blank?;[tmp ? 0 : 1, tmp ? nil : a["postdate"].to_time] }.reverse
|
||||
rest_count = widget_data_count - top_anns.count
|
||||
if rest_count <= 0
|
||||
|
|
|
@ -85,15 +85,18 @@ module AnnouncementsHelper
|
|||
"img_description" => desc
|
||||
}
|
||||
end
|
||||
def get_feed_annc(type,site_source,locale)
|
||||
def get_feed_annc(type,site_source,locale,categories=nil)
|
||||
ma_key = 'announcement'
|
||||
if type == "index"
|
||||
categories = Array(OrbitHelper.page_categories)
|
||||
elsif type == "widget"
|
||||
categories = Array(OrbitHelper.widget_categories)
|
||||
else
|
||||
categories = []
|
||||
if categories.nil?
|
||||
if type == "index"
|
||||
categories = Array(OrbitHelper.page_categories)
|
||||
elsif type == "widget"
|
||||
categories = Array(OrbitHelper.widget_categories)
|
||||
else
|
||||
categories = []
|
||||
end
|
||||
end
|
||||
categories = ["all"] if categories.length==0
|
||||
if categories.include?("all")
|
||||
feeds = SiteFeedAnnc.where(:channel_key => ma_key)
|
||||
else
|
||||
|
@ -109,10 +112,10 @@ module AnnouncementsHelper
|
|||
end
|
||||
data
|
||||
end
|
||||
def get_feed_announcements(type,site_source=nil)
|
||||
def get_feed_announcements(type,site_source=nil,categories=nil,max_len=nil)
|
||||
locale = OrbitHelper.get_site_locale.to_s
|
||||
if !(defined? SiteFeedAnnc).nil?
|
||||
fans = get_feed_annc(type,site_source,locale)
|
||||
fans = get_feed_annc(type,site_source,locale,categories)
|
||||
else
|
||||
feed_anns = OrbitHelper.get_feed_for_module(type)
|
||||
fans = []
|
||||
|
@ -226,7 +229,7 @@ module AnnouncementsHelper
|
|||
end
|
||||
if !(defined? SiteFeed).nil?
|
||||
if @type != "show_widget"
|
||||
feeds_anns = get_feed_announcements("index")
|
||||
feeds_anns = get_feed_announcements("index",nil,nil,page_number*page_data_count)
|
||||
else
|
||||
feeds_anns = []
|
||||
end
|
||||
|
@ -234,7 +237,7 @@ module AnnouncementsHelper
|
|||
else
|
||||
announcements = []
|
||||
if @type != "show_widget"
|
||||
feeds_anns = get_feed_announcements("index",params["source"])
|
||||
feeds_anns = get_feed_announcements("index",params["source"],nil,page_number*page_data_count)
|
||||
else
|
||||
feeds_anns = []
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue