From 047f5695b468e519adc798d481434c05c88feb52 Mon Sep 17 00:00:00 2001 From: Kevin Ansfield Date: Thu, 7 Mar 2019 13:40:21 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Fixed=20vague=20upload=20error?= =?UTF-8?q?=20messages=20on=20General=20and=20Labs=20setting=20screens?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit no issue - API now returns the "useful" error message in `error.context` rather than `error.message` - updated `{{gh-uploader}}` to expose `context` on errors - updated error display to try using `context` with a fallback to `message` --- ghost/admin/app/components/gh-uploader.js | 4 +++- ghost/admin/app/templates/settings/general.hbs | 6 +++--- ghost/admin/app/templates/settings/labs.hbs | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/ghost/admin/app/components/gh-uploader.js b/ghost/admin/app/components/gh-uploader.js index 15cd7777de..6b802b7a29 100644 --- a/ghost/admin/app/components/gh-uploader.js +++ b/ghost/admin/app/components/gh-uploader.js @@ -275,7 +275,8 @@ export default Component.extend({ return true; } catch (error) { // grab custom error message if present - let message = error.payload.errors && error.payload.errors[0].message; + let message = error.payload.errors && error.payload.errors[0].message || ''; + let context = error.payload.errors && error.payload.errors[0].context || ''; // fall back to EmberData/ember-ajax default message for error type if (!message) { @@ -284,6 +285,7 @@ export default Component.extend({ let result = { message, + context, fileName: file.name }; diff --git a/ghost/admin/app/templates/settings/general.hbs b/ghost/admin/app/templates/settings/general.hbs index 07fbf6fbf2..1298a0619b 100644 --- a/ghost/admin/app/templates/settings/general.hbs +++ b/ghost/admin/app/templates/settings/general.hbs @@ -103,7 +103,7 @@
Publication icon
A square, social icon used in the UI of your publication, at least 60x60px
{{#each uploader.errors as |error|}} -
{{error.message}}
+
{{or error.context error.message}}
{{/each}}
@@ -135,7 +135,7 @@
Publication logo
The primary logo for your brand displayed across your theme, should be transparent and at least 600px x 72px
{{#each uploader.errors as |error|}} -
{{error.message}}
+
{{or error.context error.message}}
{{/each}}
@@ -167,7 +167,7 @@
Publication cover
An optional large background image for your site
{{#each uploader.errors as |error|}} -
{{error.message}}
+
{{or error.context error.message}}
{{/each}}
diff --git a/ghost/admin/app/templates/settings/labs.hbs b/ghost/admin/app/templates/settings/labs.hbs index e569dbe404..cb436f87b3 100644 --- a/ghost/admin/app/templates/settings/labs.hbs +++ b/ghost/admin/app/templates/settings/labs.hbs @@ -239,7 +239,7 @@
Redirects
Configure redirects for old or moved content, more info in the docs
{{#each uploader.errors as |error|}} -
{{error.message}}
+
{{or error.context error.message}}
{{/each}}
@@ -284,7 +284,7 @@
Routes
Configure dynamic routing by modifying the routes.yaml file
{{#each uploader.errors as |error|}} -
{{error.message}}
+
{{or error.context error.message}}
{{/each}}