From 100d750bc5ec4c6c5be11eb6f4100fe38b4ddee7 Mon Sep 17 00:00:00 2001
From: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Date: Tue, 10 Mar 2015 12:51:46 -0700
Subject: [PATCH] Add feature to disable version check

---
 app/controllers/admin/application_settings_controller.rb    | 3 ++-
 app/views/admin/application_settings/_form.html.haml        | 6 ++++++
 app/views/admin/dashboard/index.html.haml                   | 5 +++--
 app/views/help/index.html.haml                              | 3 ++-
 ...50310194358_add_version_check_to_application_settings.rb | 5 +++++
 db/schema.rb                                                | 3 ++-
 6 files changed, 20 insertions(+), 5 deletions(-)
 create mode 100644 db/migrate/20150310194358_add_version_check_to_application_settings.rb

diff --git a/app/controllers/admin/application_settings_controller.rb b/app/controllers/admin/application_settings_controller.rb
index 2b0c500e97a..5973af71267 100644
--- a/app/controllers/admin/application_settings_controller.rb
+++ b/app/controllers/admin/application_settings_controller.rb
@@ -28,7 +28,8 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
       :gravatar_enabled,
       :twitter_sharing_enabled,
       :sign_in_text,
-      :home_page_url
+      :home_page_url,
+      :version_check_enabled
     )
   end
 end
diff --git a/app/views/admin/application_settings/_form.html.haml b/app/views/admin/application_settings/_form.html.haml
index ac64d26f9aa..cab5688a499 100644
--- a/app/views/admin/application_settings/_form.html.haml
+++ b/app/views/admin/application_settings/_form.html.haml
@@ -24,6 +24,12 @@
       .col-sm-10
         = f.check_box :twitter_sharing_enabled, class: 'checkbox form-control', :'aria-describedby' => 'twitter_help_block'
         %span.help-block#twitter_help_block Show users a button to share their newly created public or internal projects on twitter
+    .form-group
+      .col-sm-offset-2.col-sm-10
+        .checkbox
+          = f.label :version_check_enabled do
+            = f.check_box :version_check_enabled
+            Version check enabled
   %fieldset
     %legend Misc
     .form-group
diff --git a/app/views/admin/dashboard/index.html.haml b/app/views/admin/dashboard/index.html.haml
index 6b4ff4b330d..3732ff847b9 100644
--- a/app/views/admin/dashboard/index.html.haml
+++ b/app/views/admin/dashboard/index.html.haml
@@ -58,8 +58,9 @@
     .col-md-4
       %h4
         Components
-        .pull-right
-          = version_status_badge
+        - if current_application_settings.version_check_enabled
+          .pull-right
+            = version_status_badge
 
       %hr
       %p
diff --git a/app/views/help/index.html.haml b/app/views/help/index.html.haml
index e2276260189..bf4b7234b21 100644
--- a/app/views/help/index.html.haml
+++ b/app/views/help/index.html.haml
@@ -3,7 +3,8 @@
     GitLab
     %span= Gitlab::VERSION
     %small= Gitlab::REVISION
-    = version_status_badge
+    - if current_application_settings.version_check_enabled
+      = version_status_badge
   %p.slead
     GitLab is open source software to collaborate on code.
     %br
diff --git a/db/migrate/20150310194358_add_version_check_to_application_settings.rb b/db/migrate/20150310194358_add_version_check_to_application_settings.rb
new file mode 100644
index 00000000000..e9d42c1e749
--- /dev/null
+++ b/db/migrate/20150310194358_add_version_check_to_application_settings.rb
@@ -0,0 +1,5 @@
+class AddVersionCheckToApplicationSettings < ActiveRecord::Migration
+  def change
+    add_column :application_settings, :version_check_enabled, :boolean, default: true
+  end
+end
diff --git a/db/schema.rb b/db/schema.rb
index a686bb4b3cd..d63e1bc17a9 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
 #
 # It's strongly recommended that you check this file into your version control system.
 
-ActiveRecord::Schema.define(version: 20150225065047) do
+ActiveRecord::Schema.define(version: 20150310194358) do
 
   # These are extensions that must be enabled in order to support this database
   enable_extension "plpgsql"
@@ -27,6 +27,7 @@ ActiveRecord::Schema.define(version: 20150225065047) do
     t.string   "home_page_url"
     t.integer  "default_branch_protection", default: 2
     t.boolean  "twitter_sharing_enabled",   default: true
+    t.boolean  "version_check_enabled",     default: true
   end
 
   create_table "broadcast_messages", force: true do |t|
-- 
GitLab