'%d/%m/%Y', 'min' =>array(21,1,1900), 'max' =>array(21,1,2050) )); return $ret; } function notInFuture ($value,$oldData=false) { // blank is OK if (!trim(strlen($value))) { return true; } $ret = validate::date($value,array( 'format' =>'%d/%m/%Y', 'min' =>array(date('d'),date('m'),date('Y')) )); return $ret; } function isEmpty ($value,$oldData=false) { if (!strlen(trim($value))) { return false; } return true; return $ret; } function hkidLength ($value,$oldData=false) { $ret = validate::string($value,array( 'format' =>'A-Za-z0-9() ', 'min_length' =>6, 'max_length' =>9 )); return $ret; } function memberFindRule ($value,$oldData=false) { if (!strlen(trim($value))) { return true; } if (preg_match('/[A-Z]-[0-9]{0,3}/i',$value)) { return true; } return false; return $ret; } function dateNotValidWhenNotEmpty ($value,$oldData=false) { if (!$this->empty($value)) { return true; } return $this->dateNotValid($value); return $ret; } function printedCopies ($value,$oldData=false) { $ret = validate::number($value,array( 'min' =>1, 'max' =>5 )); return $ret; } function MonthYearNotValid ($value,$oldData=false) { $ret = validate::date($value,array( 'format' =>'%m/%Y', )); return $ret; } function feeInvalid ($value,$oldData=false) { $ret = validate::number($value,array( 'decimal' =>'.', 'dec_prec' =>2, 'min' =>-200000, 'max' =>200000 )); return $ret; } function noValidActiveMember ($value,$oldData=false) { require_once 'DataObjects/Members.php'; $lookup = DataObjects_Members::staticGet($value); if (!$lookup) { return false; } return true; return $ret; } function notInFutureMonth ($value,$oldData=false) { $ret = validate::date($value,array( 'format' =>'%m/%Y', 'min' =>array(date('d'),date('m'),date('Y')) )); return $ret; } function notInPast ($value,$oldData=false) { // blank is OK if (!trim(strlen($value))) { return true; } $ret = validate::date($value,array( 'format' =>'%d/%m/%Y', 'max' =>array(date('d'),date('m'),date('Y')) )); return $ret; } function photoNotJpeg ($value,$oldData=false) { if (isset($_FILES['photo']) && $_FILES['photo']['type'] && $_FILES['photo']['type'] != 'image/jpeg') { return false; } return true; return $ret; } function moreTwoChars ($value,$oldData=false) { if ($value && (strlen($value) > 2)) { return false; } return true; return $ret; } function notValidMemberCode ($value,$oldData=false) { require_once 'DataObjects/Members.php'; $lookup = DataObjects_Members::staticGet('code',$value); if (!$lookup) { return false; } return true; return $ret; } function notValidTransactionCode ($value,$oldData=false) { require_once 'DataObjects/Account_code.php'; $lookup = DataObjects_Account_code::staticGet('name',$value); if (!$lookup) { return false; } return true; return $ret; } function transactionValueInvalid ($value,$oldData=false) { $ret = validate::number($value,array( 'decimal' =>'.', 'dec_prec' =>2, 'min' => -200000, 'max' =>200000 )); return $ret; } function invalidMemberCodeFormat ($value,$oldData=false) { if (preg_match('/[A-Z]\-[0-9]{3}/',$value)) { return true; } return false; return $ret; } function memberExistsAlready ($value,$oldData=false) { require_once 'DataObjects/Members.php'; $lookup = DataObjects_Members::staticGet('code',$value); if (!$lookup) { return true; } return false; return $ret; } function invalidCountry ($value,$oldData=false) { require_once 'I18N/Country.php'; $i18n = new I18N_Country; $codes = $i18n->getAllCodes(); if (isset($codes[$value])) { return true; } return false; return $ret; } function notValidBoat ($value,$oldData=false) { require_once 'DataObjects/Boats.php'; $lookup = DataObjects_Boats::staticGet($value); if (!$lookup) { return false; } return true; return $ret; } function notInPastOrNearFuture ($value,$oldData=false) { // blank is OK if (!trim(strlen($value))) { return true; } require_once 'DB/DataObject/Cast.php'; $d = DB_DataObject_Cast::date(date('Y'),date('m')+6,date('d')); //print_r($d); $ret = validate::date($value,array( 'format' =>'%d/%m/%Y', 'max' =>array($d->day,$d->month,$d->year) )); return $ret; } function optionalMoneyInvalid ($value,$oldData=false) { if (!strlen(trim($value))) { return true; // empty ok } $ret = validate::number($value,array( 'decimal' =>'.', 'dec_prec' =>2, 'min' =>0, 'max' =>200000 )); return $ret; } } ?>