/** * Defines the validator using the methods on Cake\Validation\Validator or * loads a pre-defined validator from a concrete class. * @param \Cake\Validation\Validator $validator Validator instance * @return \MeCms\Model\Validation\AppValidator */ protected function _buildValidator(\Cake\Validation\Validator $validator) { $validator = new \MeCms\Model\Validation\AppValidator(); //Filename $validator->requirePresence('filename')->remove('filename', 'validateUnique')->add('filename', 'validExtension', ['rule' => function ($value, $context) { $extensions = array_map(function ($v) { return preg_quote($v, '/'); }, ['sql', 'sql.gz', 'sql.bz2']); return (bool) preg_match(sprintf('/\\.(%s)$/i', implode('|', $extensions)), $value); }, 'message' => __d('me_cms', 'Valid extensions: {0}', 'sql, sql.gz, sql.bz2')])->add('filename', ['lengthBetween' => ['message' => __d('me_cms', 'Must be between {0} and {1} chars', 3, 100), 'rule' => ['lengthBetween', 3, 100]]]); return $validator; }
/** * Defines the validator using the methods on Cake\Validation\Validator or * loads a pre-defined validator from a concrete class. * @param \Cake\Validation\Validator $validator Validator instance * @return \MeCms\Model\Validation\AppValidator */ protected function _buildValidator(\Cake\Validation\Validator $validator) { $validator = new \MeCms\Model\Validation\AppValidator(); //First name $validator->requirePresence('first_name'); //Last name $validator->requirePresence('last_name'); //Email $validator->requirePresence('email'); //Message $validator->requirePresence('message')->add('message', ['lengthBetween' => ['message' => __d('me_cms', 'Must be between {0} and {1} chars', 10, 1000), 'rule' => ['lengthBetween', 10, 1000]]]); return $validator; }