From 2b099e3a2f6aaa4a1a56f87bae76f37ff676970d Mon Sep 17 00:00:00 2001 From: cyril lopez Date: Mon, 22 Jan 2018 12:25:50 +0100 Subject: [PATCH] Handle form errors for email-templates --- .../admin/src/components/PopUpForm/index.js | 8 ++++++-- .../containers/HomePage/checkFormValidity.js | 18 +++++++++++++++++- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js b/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js index ac87618188..f7ddf12d42 100644 --- a/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js +++ b/packages/strapi-plugin-users-permissions/admin/src/components/PopUpForm/index.js @@ -102,13 +102,15 @@ class PopUpForm extends React.Component { // eslint-disable-line react/prefer-st ))}
@@ -116,6 +118,8 @@ class PopUpForm extends React.Component { // eslint-disable-line react/prefer-st ))} diff --git a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/checkFormValidity.js b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/checkFormValidity.js index 25414ff13b..5541a5cee5 100644 --- a/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/checkFormValidity.js +++ b/packages/strapi-plugin-users-permissions/admin/src/containers/HomePage/checkFormValidity.js @@ -1,4 +1,4 @@ -import { get, isEmpty } from 'lodash'; +import { get, isEmpty, isObject } from 'lodash'; export default function checkFormValidity(settingType, data) { const formErrors = []; @@ -15,6 +15,22 @@ export default function checkFormValidity(settingType, data) { }); break; } + case 'email-templates': { + Object.keys(data.options).map((value) => { + if (isObject(data.options[value])) { + Object.keys(data.options[value]).map(subValue => { + if (isEmpty(get(data, ['options', value, subValue]))) { + formErrors.push({ name: `options.${value}.${subValue}`, errors: [{ id: 'components.Input.error.validation.required' }] }); + } + }); + } + + if (value !== 'response_email' && isEmpty(get(data, ['options', value]))) { + formErrors.push({ name: `options.${value}`, errors: [{ id: 'components.Input.error.validation.required' }] }); + } + }); + break; + } default: }