| Server IP : 89.108.64.180 / Your IP : 216.73.217.92 Web Server : Apache/2.4.41 (Ubuntu) System : Linux 89-108-64-180.cloudvps.regruhosting.ru 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-root ( 1010) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/aravanatula.ru/wp-content/plugins/google-maps-easy/classes/ |
Upload File : |
<?php
class validatorGmp {
static public $errors = array();
static public function validate($field, $label = '', $validate = array()) {
self::$errors = array();
if(is_object($field) && get_class($field) != 'fieldGmp') {
$value = $field;
$field = new fieldGmpGmp('noMatter');
$field->label = $label;
$field->setValue($value);
$field->setValidation($validate);
}
if(!empty($field->validate)) {
foreach($field->validate as $v) {
if(method_exists('validatorGmp', $v))
self::$v($field);
}
}
if(method_exists('validatorGmp', $field->type)) {
$validate = $field->type;
self::$validate($field);
}
if($field->maxlen) {
self::validLen($field);
}
return self::$errors;
}
static public function validLen($field, $label = '', $validate = array()) {
if( !(bool) (strlen($field->value) <= $field->maxlen)) {
self::addError(sprintf(__('Invalid length for %s, max length is %s'), $field->label, $field->maxlen), $field->name);
return false;
}
return true;
}
static public function _($field) {
return self::validate($field);
}
static public function getErrors() {
return self::$errors;
}
static public function numeric($field) {
if(!is_numeric($field->value) && !empty($field->value)) {
self::addError(sprintf(__('Invalid numeric value for %s'), $field->label), $field->name);
return false;
}
return true;
}
static public function int($field) {
return self::numeric($field);
}
static public function float($field) {
return self::numeric($field);
}
static public function double($field) {
return self::numeric($field);
}
static protected function _notEmpty($value) {
if(is_array($value)) {
foreach($value as $v) {
if(self::_notEmpty($v)) { //If at least 1 element of array are not empty - all array will be not empty
$res = true;
break;
}
}
} else
$res = !empty($value);
return $res;
}
static public function notEmpty($field) {
if(!self::_notEmpty($field->value)) {
self::addError(sprintf(__('Please enter %s'), $field->label), $field->name);
return false;
}
return true;
}
static public function selectNotEmpty($field) {
if(empty($field->value)) {
self::addError(sprintf(__('Please select %s'), $field->label), $field->name);
return false;
}
return true;
}
static public function email($field) {
if(!is_email($field->value)) {
self::addError(sprintf(__('Invalid %s'), $field->label), $field->name);
return false;
} elseif(email_exists($field->value)) {
self::addError(sprintf(__('%s is already registered'), $field->label), $field->name);
return false;
}
return true;
}
static public function addError($error, $key = '') {
if($key)
self::$errors[$key] = $error;
else
self::$errors[] = $error;
}
static public function string($field) {
if (preg_match('/([0-9].*)/', $field->value)) {
self::addError(sprintf(__('Invalid %s'), $field->label), $field->name);
return false;
}
return true;
}
/**
* Fective method
*/
/*static public function none($fileld) {
return true;
}*/
static public function getProductValidationMethods() {
$res = array();
$all = get_class_methods('validatorGmp');
foreach($all as $m) {
if(in_array($m, array('int', 'none', 'string'))) {
$res[$m] = __($m);
}
}
return $res;
}
static public function getUserValidationMethods() {
// here validation for user fields
$res = array();
$all = get_class_methods('validatorGmp');
foreach($all as $m) {
if(in_array($m, array('int', 'none', 'string', 'email', 'validLen'))) {
$res[$m] = __($m);
}
}
return $res;
}
static public function prepareInput($input) {
global $wpdb;
if(is_array($input)) {
return array_map(array(validator, 'prepareInput'), $input);
} else
return $wpdb->_real_escape($input);
}
}