diff options
Diffstat (limited to 'app/helpers/settings_helper.rb')
-rw-r--r-- | app/helpers/settings_helper.rb | 32 |
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 |