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:
Diffstat (limited to 'app/helpers/emails_helper.rb')
-rw-r--r--app/helpers/emails_helper.rb39
1 files changed, 39 insertions, 0 deletions
diff --git a/app/helpers/emails_helper.rb b/app/helpers/emails_helper.rb
index 7213bd074fc..af0f1bd6808 100644
--- a/app/helpers/emails_helper.rb
+++ b/app/helpers/emails_helper.rb
@@ -2,6 +2,7 @@
module EmailsHelper
include AppearancesHelper
+ include SafeFormatHelper
# Google Actions
# https://developers.google.com/gmail/markup/reference/go-to-action
@@ -236,6 +237,44 @@ module EmailsHelper
end
end
+ def member_about_to_expire_text(member_source, days_to_expire, format: nil)
+ days_formatted = pluralize(days_to_expire, 'day')
+
+ case member_source
+ when Project
+ url = project_url(member_source)
+ when Group
+ url = group_url(member_source)
+ end
+
+ case format
+ when :html
+ link_to = generate_link(member_source.human_name, url).html_safe
+ safe_format(_("Your membership in %{link_to} %{project_or_group_name} will expire in %{days_formatted}."), link_to: link_to, project_or_group_name: member_source.model_name.singular, days_formatted: days_formatted)
+ else
+ _("Your membership in %{project_or_group} %{project_or_group_name} will expire in %{days_formatted}.") % { project_or_group: member_source.human_name, project_or_group_name: member_source.model_name.singular, days_formatted: days_formatted }
+ end
+ end
+
+ def member_about_to_expire_link(member, member_source, format: nil)
+ project_or_group = member_source.human_name
+
+ case member_source
+ when Project
+ url = project_project_members_url(member_source, search: member.user.username)
+ when Group
+ url = group_group_members_url(member_source, search: member.user.username)
+ end
+
+ case format
+ when :html
+ link_to = generate_link("#{member_source.class.name.downcase} membership", url).html_safe
+ safe_format(_('For additional information, review your %{link_to} or contact your %{project_or_group} owner.'), link_to: link_to, project_or_group: project_or_group)
+ else
+ _('For additional information, review your %{project_or_group} membership: %{url} or contact your %{project_or_group} owner.') % { project_or_group: project_or_group, url: url }
+ end
+ end
+
def group_membership_expiration_changed_text(member, group)
if member.expires?
days = (member.expires_at - Date.today).to_i