Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Speicher <rspeicher@gmail.com>2015-11-23 07:52:02 +0300
committerRobert Speicher <rspeicher@gmail.com>2015-11-25 00:55:26 +0300
commitaf65046c5fd9f214124d39a5582b06ee2fe39933 (patch)
tree6d12ad3c03a145cf5bec791523323ef580f10d40 /app/helpers/button_helper.rb
parent0fb5ffd8b0752f68db67414dc72d09ff0ef064d1 (diff)
Move HTTP/SSH clone button logic to helpers
Diffstat (limited to 'app/helpers/button_helper.rb')
-rw-r--r--app/helpers/button_helper.rb35
1 files changed, 35 insertions, 0 deletions
diff --git a/app/helpers/button_helper.rb b/app/helpers/button_helper.rb
new file mode 100644
index 00000000000..8963e96ea1d
--- /dev/null
+++ b/app/helpers/button_helper.rb
@@ -0,0 +1,35 @@
+module ButtonHelper
+ def http_clone_button(project)
+ klass = 'btn'
+ klass << ' active' if default_clone_protocol == 'http'
+ klass << ' has_tooltip' if current_user.try(:require_password?)
+
+ protocol = gitlab_config.protocol.upcase
+
+ content_tag :button, protocol,
+ class: klass,
+ data: {
+ clone: project.http_url_to_repo,
+ container: 'body',
+ html: 'true',
+ title: "Set a password on your account<br>to pull or push via #{protocol}"
+ },
+ type: :button
+ end
+
+ def ssh_clone_button(project)
+ klass = 'btn'
+ klass << ' active' if default_clone_protocol == 'ssh'
+ klass << ' has_tooltip' if current_user.try(:require_ssh_key?)
+
+ content_tag :button, 'SSH',
+ class: klass,
+ data: {
+ clone: project.ssh_url_to_repo,
+ container: 'body',
+ html: 'true',
+ title: 'Add an SSH key to your profile<br>to pull or push via SSH.'
+ },
+ type: :button
+ end
+end