From a7bb783d33c0e8dd749f8e7598694a9762f694bb Mon Sep 17 00:00:00 2001 From: Naz Date: Tue, 27 Jul 2021 16:19:26 +0400 Subject: [PATCH] Added special error modal copy on email freeze closes https://github.com/TryGhost/Team/issues/913 - When an error is returned from the server during a CSV import and it's because of the email freeze the import modal error has to show a special header along with error message --- ghost/admin/app/components/modal-import-members.hbs | 2 +- ghost/admin/app/components/modal-import-members.js | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ghost/admin/app/components/modal-import-members.hbs b/ghost/admin/app/components/modal-import-members.hbs index d43d87e9ba..7da7187209 100644 --- a/ghost/admin/app/components/modal-import-members.hbs +++ b/ghost/admin/app/components/modal-import-members.hbs @@ -35,7 +35,7 @@ {{#if (eq this.state 'ERROR')}} {{/if}} diff --git a/ghost/admin/app/components/modal-import-members.js b/ghost/admin/app/components/modal-import-members.js index 27c3e2ae1d..ffd1d5fbf3 100644 --- a/ghost/admin/app/components/modal-import-members.js +++ b/ghost/admin/app/components/modal-import-members.js @@ -27,6 +27,7 @@ export default ModalComponent.extend({ paramName: 'membersfile', importResponse: null, errorMessage: null, + errorHeader: null, showMappingErrors: false, // Allowed actions @@ -83,6 +84,7 @@ export default ModalComponent.extend({ reset() { this.set('showMappingErrors', false); this.set('errorMessage', null); + this.set('errorHeader', null); this.set('file', null); this.set('mapping', null); this.set('state', 'INIT'); @@ -194,6 +196,7 @@ export default ModalComponent.extend({ _uploadError(error) { let message; + let header = 'Import error'; if (isVersionMismatchError(error)) { this.notifications.showAPIError(error); @@ -205,11 +208,16 @@ export default ModalComponent.extend({ message = 'The file you uploaded was larger than the maximum file size your server allows.'; } else if (error.payload && error.payload.errors && !isBlank(error.payload.errors[0].message)) { message = htmlSafe(error.payload.errors[0].message); + + if (error.payload.errors[0].message.match(/list of that size/gi)) { + header = 'Woah there cowboy, that\'s a big list'; + } } else { console.error(error); // eslint-disable-line message = 'Something went wrong :('; } this.set('errorMessage', message); + this.set('errorHeader', header); } });