diff --git a/app/controllers/clients_controller.rb b/app/controllers/clients_controller.rb
index 00291872e..49f96fb3c 100644
--- a/app/controllers/clients_controller.rb
+++ b/app/controllers/clients_controller.rb
@@ -31,7 +31,7 @@ def index
elsif params[:ids].present?
response = Client.find_by_ids(params[:ids], page: page, sort: sort)
else
- response = Client.query(params[:query], year: params[:year], provider_id: params[:provider_id], include_deleted: params[:include_deleted], fields: params[:fields], page: page, sort: sort)
+ response = Client.query(params[:query], year: params[:year], provider_id: params[:provider_id], fields: params[:fields], page: page, sort: sort)
end
total = response.results.total
diff --git a/app/controllers/providers_controller.rb b/app/controllers/providers_controller.rb
index 0e0da3419..ed173c0b7 100644
--- a/app/controllers/providers_controller.rb
+++ b/app/controllers/providers_controller.rb
@@ -30,7 +30,7 @@ def index
elsif params[:ids].present?
response = Provider.find_by_ids(params[:ids], page: page, sort: sort)
else
- response = Provider.query(params[:query], year: params[:year], region: params[:region], organization_type: params[:organization_type], focus_area: params[:focus_area], include_deleted: params[:include_deleted], fields: params[:fields], page: page, sort: sort)
+ response = Provider.query(params[:query], year: params[:year], region: params[:region], organization_type: params[:organization_type], focus_area: params[:focus_area], fields: params[:fields], page: page, sort: sort)
end
total = response.results.total
diff --git a/app/models/client.rb b/app/models/client.rb
index 774d533e3..83730ecc4 100644
--- a/app/models/client.rb
+++ b/app/models/client.rb
@@ -51,6 +51,7 @@ class Client < ActiveRecord::Base
before_save { self.updated = Time.zone.now.utc.iso8601 }
after_create :send_welcome_email, unless: Proc.new { Rails.env.test? }
+ before_delete :send_delete_email, unless: Proc.new { Rails.env.test? }
attr_accessor :target_id
diff --git a/app/models/concerns/mailable.rb b/app/models/concerns/mailable.rb
index 01ea88e24..b75d05867 100644
--- a/app/models/concerns/mailable.rb
+++ b/app/models/concerns/mailable.rb
@@ -33,6 +33,24 @@ def send_welcome_email
response = User.send_message(name: contact_name, email: contact_email, subject: subject, text: text, html: html)
+ fields = [
+ { title: "Account ID", value: symbol},
+ { title: "Contact name", value: contact_name, short: true },
+ { title: "Contact email", value: contact_email, short: true }
+ ]
+ User.send_notification_to_slack(nil, title: subject, level: "warning", fields: fields)
+
+ response
+ end
+
+ def send_delete_email
+ title = Rails.env.stage? ? "DataCite DOI Fabrica Test" : "DataCite DOI Fabrica"
+ subject = "#{title}: Account Deleted"
+ text = User.format_message_text(template: "users/delete.text.erb", title: title, contact_name: contact_name, name: symbol)
+ html = User.format_message_html(template: "users/delete.html.erb", title: title, contact_name: contact_name, name: symbol)
+
+ response = User.send_message(name: contact_name, email: contact_email, subject: subject, text: text, html: html)
+
fields = [
{ title: "Account ID", value: symbol},
{ title: "Contact name", value: contact_name, short: true },
diff --git a/app/models/provider.rb b/app/models/provider.rb
index ccb8cea59..7e51cddb7 100644
--- a/app/models/provider.rb
+++ b/app/models/provider.rb
@@ -54,6 +54,7 @@ class Provider < ActiveRecord::Base
before_save { self.updated = Time.zone.now.utc.iso8601 }
after_create :send_welcome_email, unless: Proc.new { Rails.env.test? }
+ before_delete :send_delete_email, unless: Proc.new { Rails.env.test? }
accepts_nested_attributes_for :prefixes
diff --git a/app/views/users/delete.html.erb b/app/views/users/delete.html.erb
new file mode 100644
index 000000000..77bbd185b
--- /dev/null
+++ b/app/views/users/delete.html.erb
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+ <%= @title %>
+ |
+
+
+
+
+
+
+
+
+ Dear <%= @contact_name %>,
+ The <%= @title %> account named <%= @name %> has been deleted. If this was done in error, please
+ reach out to DataCite Support and we can re-enable the <%= @name %> account.
+
+ |
+
+
+ |
+
+
+
+
+ |
+
+
+ |
+
+
diff --git a/app/views/users/delete.text.erb b/app/views/users/delete.text.erb
new file mode 100644
index 000000000..612b434da
--- /dev/null
+++ b/app/views/users/delete.text.erb
@@ -0,0 +1,17 @@
+Dear <%= @contact_name %>,
+
+The <%= @title %> account named <%= @name %>
+has been deleted. If this was done in error, please
+reach out to DataCite Support and we can re-enable the
+<%= @name %> account.
+
+Thanks,
+
+The DataCite Support Team
+
+
+DataCite
+Am Welfengarten 1B
+30167 Hannover
+Germany
+Email: support@datacite.org