-
{{_ "account_details"}}
+
+ {{_ "account_details"}}
+
{{> updatePassword}}
@@ -15,29 +17,20 @@
{{_ "account_details"}}
diff --git a/users/client/account/account.js b/users/client/account/account.js
index b02ffbca51..0793b21ef5 100644
--- a/users/client/account/account.js
+++ b/users/client/account/account.js
@@ -1,5 +1,8 @@
+import { Template } from 'meteor/templating';
+
Template.account.events({
- 'click .js-delete-account': function () {
- return Meteor.call('deleteAccount', Meteor.userId());
+ 'click #delete-account-button': function () {
+ // Show the delete account modal
+ Modal.show('deleteAccount');
},
});
diff --git a/users/client/account/delete/delete.html b/users/client/account/delete/delete.html
new file mode 100644
index 0000000000..03fdc32b98
--- /dev/null
+++ b/users/client/account/delete/delete.html
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+ {{_ "deleteAccount_confirm_text"}}
+
+
+
+
+
+
diff --git a/users/client/account/delete/delete.js b/users/client/account/delete/delete.js
new file mode 100644
index 0000000000..2b460a202a
--- /dev/null
+++ b/users/client/account/delete/delete.js
@@ -0,0 +1,25 @@
+import { Meteor } from 'meteor/meteor';
+import { Template } from 'meteor/templating';
+import { TAPi18n } from 'meteor/tap:i18n';
+
+Template.deleteAccount.events({
+ 'click #delete-account-confirm': function () {
+ // Get user ID
+ const userId = Meteor.userId();
+
+ // Delete user account
+ Meteor.call('deleteAccount', userId, () => {
+ // Dismiss the delete account modal
+ Modal.hide('deleteAccount');
+
+ // Route to home page
+ Router.go('home');
+
+ // Get deletion message success translation
+ const message = TAPi18n.__('deleteAccount_success_message');
+
+ // Alert user of successful deletion
+ sAlert.success(message);
+ });
+ },
+});