/** * @param form_persistentdocument_file $field * @param block_BlockRequest $request * @param validation_Errors $errors * @return void */ public function validate($field, $request, &$errors) { $fileInfo = $request->getUploadedFileInformation($field->getFieldName()); $errCount = $errors->count(); if ($field->getRequired() || !empty($fileInfo['name'])) { if ($field->getRequired()) { validation_ValidatorHelper::validate(new validation_Property($field->getLabel(), $fileInfo['name']), 'blank:false', $errors); } if ($errors->count() == $errCount) { $ext = strtolower(f_util_FileUtils::getFileExtension($fileInfo['name'])); if ($field->getAllowedExtensions()) { $allowedExt = explode(",", $field->getAllowedExtensions()); if (!empty($allowedExt) && !in_array($ext, $allowedExt)) { $errors->append(f_Locale::translate('&modules.form.frontoffice.File-must-have-one-of-these-extensions;', array('file' => $field->getLabel(), 'extensions' => join(", ", $allowedExt)))); } } } } }
/** * @param form_persistentdocument_field $field * @param block_BlockRequest $request * @param validation_Errors $errors * @return void */ public function validate($field, $request, &$errors) { $value = $request->getParameter($field->getFieldName()); if (is_array($value)) { $isEmpty = f_util_ArrayUtils::isEmpty($value); } else { $isEmpty = f_util_StringUtils::isEmpty($value); } $data = $request->getParameters(); if ($field->getRequired() && $isEmpty) { if ($this->isConditionValid($field, $data)) { $errors->append(f_Locale::translate("&framework.validation.validator.Blank.message;", array('field' => $field->getLabel()))); } } else { if ($field->getRequired() || !$isEmpty) { validation_ValidatorHelper::validate(new validation_Property($field->getLabel(), f_util_Convert::fixDataType($value)), $field->getValidators(), $errors); } } }