summaryrefslogtreecommitdiff
path: root/app/helpers/settings_helper.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/helpers/settings_helper.rb')
-rw-r--r--app/helpers/settings_helper.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/app/helpers/settings_helper.rb b/app/helpers/settings_helper.rb
new file mode 100644
index 00000000000..84a5c1a9eaf
--- /dev/null
+++ b/app/helpers/settings_helper.rb
@@ -0,0 +1,32 @@
+# frozen_string_literal: true
+
+module SettingsHelper
+ def commit_email_select_options(user)
+ private_email = user.private_commit_email
+ verified_emails = user.verified_emails - [private_email]
+
+ [
+ [s_("Profiles|Use a private email - %{email}").html_safe % { email: private_email }, Gitlab::PrivateCommitEmail::TOKEN],
+ *verified_emails
+ ]
+ end
+
+ def selected_commit_email(user)
+ user.read_attribute(:commit_email) || user.commit_email
+ end
+
+ def attribute_provider_label(attribute)
+ user_synced_attributes_metadata = current_user.user_synced_attributes_metadata
+ if user_synced_attributes_metadata&.synced?(attribute)
+ if user_synced_attributes_metadata.provider
+ Gitlab::Auth::OAuth::Provider.label_for(user_synced_attributes_metadata.provider)
+ else
+ 'LDAP'
+ end
+ end
+ end
+
+ def user_profile?
+ params[:controller] == 'users'
+ end
+end