Side bar icons
Dashboard completed with pagination
This commit is contained in:
1 parent
f9fda13879
commit
a4aef30a9c
10 files changed
+187
-236
No files matched your search
@@ -12,6 +12,27 @@ class Admin::DashboardsController < OrbitBackendController
|
||||
@most_visited = get_most_visited('bulletin', 'page_context')
|
||||
end
|
||||
|
||||
def reload_all_content
|
||||
@module_app_contents, @module_app_contents_total = get_module_app_count('bulletin', 'page_context', 'web_link')
|
||||
respond_to do |format|
|
||||
format.js { render 'reload', locals: {div_id: 'all_content'} }
|
||||
end
|
||||
end
|
||||
|
||||
def reload_most_visited
|
||||
@most_visited = get_most_visited('bulletin', 'page_context')
|
||||
respond_to do |format|
|
||||
format.js { render 'reload', locals: {div_id: 'most_visited'} }
|
||||
end
|
||||
end
|
||||
|
||||
def reload_recent_update
|
||||
@recent_updated = get_recently_updated('bulletin', 'page_context', 'web_link')
|
||||
respond_to do |format|
|
||||
format.js { render 'reload', locals: {div_id: 'recent_update'} }
|
||||
end
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
def get_module_app_count(*args)
|
||||
@@ -23,7 +44,7 @@ class Admin::DashboardsController < OrbitBackendController
|
||||
a.merge!(module_app => count)
|
||||
total += count
|
||||
end
|
||||
[a.sort {|a,b| b[1]<=>a[1]}, total]
|
||||
[Kaminari.paginate_array(a.sort {|a,b| b[1]<=>a[1]}).page(params[:page]).per(5), total]
|
||||
end
|
||||
|
||||
def get_recently_updated(*args)
|
||||
@@ -37,20 +58,21 @@ class Admin::DashboardsController < OrbitBackendController
|
||||
end
|
||||
sorted_objects = a.sort {|a,b| b[1]<=>a[1]}
|
||||
sorted_objects[0..19]
|
||||
Kaminari.paginate_array(sorted_objects).page(params[:page_recent]).per(5)
|
||||
Kaminari.paginate_array(sorted_objects).page(params[:page]).per(5)
|
||||
end
|
||||
|
||||
def get_most_visited(*args)
|
||||
a = {}
|
||||
args.each do |module_app|
|
||||
module_app_class = module_app.classify.constantize
|
||||
objects = module_app_class.order_by(:view_count, :desc).limit(10)
|
||||
objects = module_app_class.order_by(:view_count, :desc).limit(20)
|
||||
objects.each do |object|
|
||||
a.merge!(object => object.view_count) if object.view_count > 0 && (!object.archived rescue true)
|
||||
end
|
||||
end
|
||||
sorted_objects = a.sort {|a,b| b[1]<=>a[1]}
|
||||
sorted_objects[0..9]
|
||||
sorted_objects[0..19]
|
||||
Kaminari.paginate_array(sorted_objects).page(params[:page]).per(5)
|
||||
end
|
||||
|
||||
end
|
||||
Reference in new issue
Block a user