Commit 35e21b3402ae934a33b31aa7d6049abaf861f766
1 parent
1d601616
Exists in
master
and in
4 other branches
Admin dashboard
Showing
5 changed files
with
76 additions
and
1 deletions
Show diff stats
app/assets/stylesheets/common.scss
... | ... | @@ -903,3 +903,20 @@ li.note { |
903 | 903 | .milestone { |
904 | 904 | @extend .wll; |
905 | 905 | } |
906 | + | |
907 | +/** | |
908 | + * Admin area | |
909 | + * | |
910 | + */ | |
911 | +.admin_dash { | |
912 | + .data { | |
913 | + a { | |
914 | + h1 { | |
915 | + line-height:48px; | |
916 | + font-size:48px; | |
917 | + padding:20px; | |
918 | + text-align:center; | |
919 | + } | |
920 | + } | |
921 | + } | |
922 | +} | ... | ... |
... | ... | @@ -0,0 +1,12 @@ |
1 | +class Admin::DashboardController < ApplicationController | |
2 | + layout "admin" | |
3 | + before_filter :authenticate_user! | |
4 | + before_filter :authenticate_admin! | |
5 | + | |
6 | + def index | |
7 | + @workers = Resque.workers | |
8 | + @pending_jobs = Resque.size(:post_receive) | |
9 | + @projects = Project.order("created_at DESC").limit(10) | |
10 | + @users = User.order("created_at DESC").limit(10) | |
11 | + end | |
12 | +end | ... | ... |
... | ... | @@ -0,0 +1,45 @@ |
1 | +.admin_dash.row | |
2 | + .span4 | |
3 | + .ui-box | |
4 | + %h5 | |
5 | + Resque Workers | |
6 | + .data.padded | |
7 | + = link_to "/info/resque" do | |
8 | + %h1{:class => @workers.present? ? "cgreen" : "cred"} | |
9 | + = @workers.count | |
10 | + %hr | |
11 | + %p | |
12 | + %strong{:class => @pending_jobs > 0 ? "cred" : "cgreen"} | |
13 | + #{@pending_jobs} post receive jobs waiting | |
14 | + | |
15 | + .span4 | |
16 | + .ui-box | |
17 | + %h5 Projects | |
18 | + .data.padded | |
19 | + = link_to admin_projects_path do | |
20 | + %h1= Project.count | |
21 | + %hr | |
22 | + = link_to 'New Project', new_admin_project_path, :class => "btn small" | |
23 | + .span4 | |
24 | + .ui-box | |
25 | + %h5 Users | |
26 | + .data.padded | |
27 | + = link_to admin_users_path do | |
28 | + %h1= User.count | |
29 | + %hr | |
30 | + = link_to 'New User', new_admin_user_path, :class => "btn small" | |
31 | + | |
32 | + | |
33 | +.row | |
34 | + .span6 | |
35 | + %h3 Latest projects | |
36 | + %hr | |
37 | + - @projects.each do |project| | |
38 | + %h5 | |
39 | + = link_to project.name, [:admin, project] | |
40 | + .span6 | |
41 | + %h3 Latest users | |
42 | + %hr | |
43 | + - @users.each do |user| | |
44 | + %h5 | |
45 | + = link_to user.name, [:admin, user] | ... | ... |
app/views/layouts/admin.html.haml
... | ... | @@ -7,6 +7,7 @@ |
7 | 7 | .container |
8 | 8 | %nav.main_menu |
9 | 9 | = render "layouts/const_menu_links" |
10 | + = link_to "Stats", admin_root_path, :class => controller.controller_name == "dashboard" ? "current" : nil | |
10 | 11 | = link_to "Projects", admin_projects_path, :class => controller.controller_name == "projects" ? "current" : nil |
11 | 12 | = link_to "Users", admin_users_path, :class => controller.controller_name == "users" ? "current" : nil |
12 | 13 | = link_to "Emails", admin_emails_path, :class => controller.controller_name == "mailer" ? "current" : nil | ... | ... |
config/routes.rb