class AdministratorNotifications::AccountNotificationMailer < AdministratorNotifications::BaseMailer def account_deletion(account, reason = 'manual_deletion') subject = 'Your account has been marked for deletion' action_url = settings_url('general') meta = { 'account_name' => account.name, 'deletion_date' => account.custom_attributes['marked_for_deletion_at'], 'reason' => reason } send_notification(subject, action_url: action_url, meta: meta) end def contact_import_complete(resource) subject = 'Contact Import Completed' action_url = if resource.failed_records.attached? Rails.application.routes.url_helpers.rails_blob_url(resource.failed_records) else "#{ENV.fetch('FRONTEND_URL', nil)}/app/accounts/#{resource.account.id}/contacts" end meta = { 'failed_contacts' => resource.total_records - resource.processed_records, 'imported_contacts' => resource.processed_records } send_notification(subject, action_url: action_url, meta: meta) end def contact_import_failed subject = 'Contact Import Failed' send_notification(subject) end def contact_export_complete(file_url, email_to) subject = "Your contact's export file is available to download." send_notification(subject, to: email_to, action_url: file_url) end def automation_rule_disabled(rule) subject = 'Automation rule disabled due to validation errors.' action_url = settings_url('automation/list') meta = { 'rule_name' => rule.name } send_notification(subject, action_url: action_url, meta: meta) end end