Fix matt's code and add it to filters
This commit is contained in:
		
							parent
							
								
									dc4116bc3d
								
							
						
					
					
						commit
						815e6a8361
					
				|  | @ -32,13 +32,7 @@ class OrbitBackendController< ApplicationController | |||
|   end | ||||
| 
 | ||||
|   def get_sorted_and_filtered(object_class, query=nil) | ||||
|     object_class = object_class.classify.constantize | ||||
|     if query | ||||
|       objects = object_class.all.where(query) | ||||
|     else | ||||
|       objects = object_class.all | ||||
|     end | ||||
| 
 | ||||
|     objects = get_objects(object_class, query) | ||||
|     if !params[:sort].blank? | ||||
|       options = params[:sort_options] | ||||
|       options = [options] if !options.class.eql?(Array) | ||||
|  | @ -158,4 +152,26 @@ class OrbitBackendController< ApplicationController | |||
|     a.flatten | ||||
|   end | ||||
| 
 | ||||
| 
 | ||||
|   def get_viewable(object_class) | ||||
|     objects = get_objects(object_class) | ||||
|     Kaminari.paginate_array(objects).page(params[:page]).per(10) | ||||
|   end | ||||
| 
 | ||||
|   def get_objects(object_class, query=nil) | ||||
| 
 | ||||
|     object_class = object_class.classify.constantize | ||||
|     if query | ||||
|       objects = object_class.all.where(query).entries | ||||
|     else | ||||
|       objects = object_class.all.entries | ||||
|     end | ||||
|     if(!is_admin? || !is_manager?) | ||||
|       objects.delete_if{ |object| | ||||
|         (object.is_pending == true) && ((!object.send("#{object.class.to_s.underscore}_category").authed_users('fact_check').include?(current_user) rescue nil) || object.create_user_id!=current_user.id) | ||||
|       } | ||||
|     end | ||||
|     objects | ||||
|   end | ||||
|    | ||||
| end | ||||
|  | @ -34,7 +34,7 @@ class Panel::Announcement::BackEnd::BulletinsController < OrbitBackendController | |||
| 
 | ||||
| 
 | ||||
|     # @bulletins = (params[:sort] || @filter) ? get_sorted_and_filtered_bulletins : Bulletin.all.page(params[:page]).per(10) | ||||
|     @bulletins = (params[:sort] || @filter) ? get_sorted_and_filtered("bulletin") : Bulletin.all.page(params[:page]).per(10) | ||||
|     @bulletins = (params[:sort] || @filter) ? get_sorted_and_filtered("bulletin") : get_viewable("bulletin") | ||||
|   	@bulletin_categories = BulletinCategory.all | ||||
| 
 | ||||
|     @bulletin_link = BulletinLink.new | ||||
|  | @ -43,12 +43,6 @@ class Panel::Announcement::BackEnd::BulletinsController < OrbitBackendController | |||
|     @bulletin_file = BulletinFile.new | ||||
|     @file_url = panel_announcement_back_end_bulletins_path | ||||
|      | ||||
|     if(!is_admin? || !is_manager?) | ||||
|       @bulletins.delete_if{ |bulletin| | ||||
|               bulletin.is_pending == true && ((!bulletin.bulletin_category.authed_users('fact_check').include?(current_user) rescue nil) || bulletin.create_user_id!=current_user.id) | ||||
|             } | ||||
|         end | ||||
|      | ||||
|     respond_to do |format| | ||||
|       format.html # index.html.erb | ||||
|       format.js { } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue