OSDN Git Service

Add more info to admin dashboard
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Wed, 20 Nov 2013 11:41:41 +0000 (13:41 +0200)
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Wed, 20 Nov 2013 11:41:41 +0000 (13:41 +0200)
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
app/controllers/admin/dashboard_controller.rb
app/helpers/application_helper.rb
app/helpers/icons_helper.rb [new file with mode: 0644]
app/views/admin/dashboard/index.html.haml
lib/gitlab/backend/shell.rb
lib/tasks/gitlab/check.rake

index 3c80b65..be19139 100644 (file)
@@ -2,5 +2,6 @@ class Admin::DashboardController < Admin::ApplicationController
   def index
     @projects = Project.order("created_at DESC").limit(10)
     @users = User.order("created_at DESC").limit(10)
+    @groups = Group.order("created_at DESC").limit(10)
   end
 end
index d8cbd8f..04fda02 100644 (file)
@@ -187,14 +187,6 @@ module ApplicationHelper
     Gitlab.config.extra
   end
 
-  def public_icon
-    content_tag :i, nil, class: 'icon-globe cblue'
-  end
-
-  def private_icon
-    content_tag :i, nil, class: 'icon-lock cgreen'
-  end
-
   def search_placeholder
     if @project && @project.persisted?
       "Search in this project"
diff --git a/app/helpers/icons_helper.rb b/app/helpers/icons_helper.rb
new file mode 100644 (file)
index 0000000..41249a5
--- /dev/null
@@ -0,0 +1,17 @@
+module IconsHelper
+  def boolean_to_icon(value)
+    if value.to_s == "true"
+      content_tag :i, nil, class: 'icon-circle cgreen'
+    else
+      content_tag :i, nil, class: 'icon-circle cgray'
+    end
+  end
+
+  def public_icon
+    content_tag :i, nil, class: 'icon-globe cblue'
+  end
+
+  def private_icon
+    content_tag :i, nil, class: 'icon-lock cgreen'
+  end
+end
index 3064763..9cd9096 100644 (file)
           ago
 
   .span4
+    %h4 Latest groups
+    %hr
+    - @groups.each do |group|
+      %p
+        = link_to [:admin, group] do
+          = group.name
+        %span.light.pull-right
+          = time_ago_in_words group.created_at
+          ago
+
+%br
+.row
+  .span4
     %h4 Stats
     %hr
     %p
       Milestones
       %span.light.pull-right
         = Milestone.count
+  .span4
+    %h4
+      Features
+    %hr
+    %p
+      Sign up
+      %span.light.pull-right
+        = boolean_to_icon gitlab_config.signup_enabled
+    %p
+      LDAP
+      %span.light.pull-right
+        = boolean_to_icon Gitlab.config.ldap.enabled
+    %p
+      Gravatar
+      %span.light.pull-right
+        = boolean_to_icon Gitlab.config.gravatar.enabled
+    %p
+      OmniAuth
+      %span.light.pull-right
+        = boolean_to_icon Gitlab.config.omniauth.enabled
+  .span4
+    %h4 Components
+    %hr
+    %p
+      GitLab
+      %span.pull-right
+        = Gitlab::VERSION
+    %p
+      GitLab Shell
+      %span.pull-right
+        = Gitlab::Shell.new.version
index c819ce5..5020fa1 100644 (file)
@@ -196,6 +196,15 @@ module Gitlab
       Gitlab.config.gitlab_shell.ssh_path_prefix + "#{path}.git"
     end
 
+    # Return GitLab shell version
+    def version
+      gitlab_shell_version_file = "#{gitlab_shell_user_home}/gitlab-shell/VERSION"
+
+      if File.readable?(gitlab_shell_version_file)
+        File.read(gitlab_shell_version_file)
+      end
+    end
+
     protected
 
     def gitlab_shell_user_home
index 4ee24d1..f2349ca 100644 (file)
@@ -611,10 +611,7 @@ namespace :gitlab do
     end
 
     def gitlab_shell_version
-      gitlab_shell_version_file = "#{gitlab_shell_user_home}/gitlab-shell/VERSION"
-      if File.readable?(gitlab_shell_version_file)
-        File.read(gitlab_shell_version_file)
-      end
+      Gitlab::Shell.new.version
     end
 
     def has_gitlab_shell3?