diff --git a/pkg/vtiger/modules/Webforms/settings/actions/Save.php b/pkg/vtiger/modules/Webforms/settings/actions/Save.php index 4b0e0019787ef0c04491047f8cdf69153434a3a9..7ae864e1c61a60e25c5c03b8d88afa3e65d4ee2e 100644 --- a/pkg/vtiger/modules/Webforms/settings/actions/Save.php +++ b/pkg/vtiger/modules/Webforms/settings/actions/Save.php @@ -35,11 +35,17 @@ class Settings_Webforms_Save_Action extends Settings_Vtiger_Index_Action { } $fieldsList = $recordModel->getModule()->getFields(); + $supportedModules = Settings_Webforms_Module_Model::getSupportedModulesList(); foreach ($fieldsList as $fieldName => $fieldModel) { $fieldValue = $request->get($fieldName); if (!$fieldValue) { $fieldValue = $fieldModel->get('defaultvalue'); } + if($fieldModel->isMandatory() && empty(trim($fieldValue))) { + throw new AppException(vtranslate('LBL_MANDATORY_FIELD_MISSING')); + }else if($fieldName == 'targetmodule' && !array_key_exists($fieldValue,$supportedModules)){ + throw new Exception('Target module is not supported to create webform'); + } $recordModel->set($fieldName, $fieldValue); }