diff --git a/app/controllers/default_widget_controller.rb b/app/controllers/default_widget_controller.rb index fc80c3347..5ee604d59 100644 --- a/app/controllers/default_widget_controller.rb +++ b/app/controllers/default_widget_controller.rb @@ -15,21 +15,20 @@ class DefaultWidgetController< OrbitWidgetController @ori_query = @default_widget["query"] result = nil result_objects = nil + result = eval(@ori_query) if !params["tag_id"].blank? if params["category_id"].blank? #has tag no cate - result = eval(@ori_query) result.selector[:tagged_ids] = { "$in" => params['tag_id'] } else #has tag and cate - result = eval(@ori_query) result.selector[get_category_field_name] = { "$in" => params['category_id'].collect{|t| BSON::ObjectId(t)}} result.selector[:tagged_ids] = { "$in" => params['tag_id'] } end elsif params["category_id"].blank? #no tag no cate - result = eval(@ori_query) + else #no tag has cate - result = eval(@ori_query) result.selector[get_category_field_name] = { "$in" => params['category_id'].collect{|t| BSON::ObjectId(t)}} end + eval("result.#{@default_widget[:sorting_query]}") end diff --git a/vendor/built_in_modules/announcement/init.rb b/vendor/built_in_modules/announcement/init.rb index 7c98b65ac..61191b9d9 100644 --- a/vendor/built_in_modules/announcement/init.rb +++ b/vendor/built_in_modules/announcement/init.rb @@ -30,7 +30,7 @@ module Announcement widgets do default_widget do sorting 'desc(:postdate)' - query 'Bulletin.any_of( {deadline: nil,:postdate.lte => Time.now} , {:deadline.gte => Time.now,:postdate.lte => Time.now} )' + query 'Bulletin.can_display.any_of( {deadline: nil,:postdate.lte => Time.now} , {:deadline.gte => Time.now,:postdate.lte => Time.now} )' enable ["typeA","typeB_style3","typeC"] image :image field :postdate