/** * validate the form * * @param string $formvars the array of submitted for variables * @param string $form the name of the form being validated */ function is_valid(&$formvars, $form = SMARTY_VALIDATE_DEFAULT_FORM) { static $_is_valid = array(); if(isset($_is_valid[$form])) { // already validated the form return $_is_valid[$form]; } $_smarty_obj =& SmartyValidate::_object_instance('Smarty', $_dummy); if(!SmartyValidate::is_valid_smarty_object($_smarty_obj)) { trigger_error("SmartyValidate: [is_valid] No valid smarty object, call connect() first."); return false; } if(!SmartyValidate::is_registered_form($form)) { trigger_error("SmartyValidate: [is_valid] form '$form' is not registered."); return false; } elseif ($_SESSION['SmartyValidate'][$form]['is_init']) { // first run, skip validation return false; } elseif (count($_SESSION['SmartyValidate'][$form]['validators']) == 0) { // nothing to validate return true; } // check for failed fields $_failed_fields = SmartyValidate::_failed_fields($formvars, $form); $_ret = is_array($_failed_fields) && count($_failed_fields) == 0; // set validation state of form $_SESSION['SmartyValidate'][$form]['is_error'] = !$_ret; $_is_valid[$form] = $_ret; return $_ret; }
function get_errors(&$formvars, $form = SMARTY_VALIDATE_DEFAULT_FORM) { $_ret = NULL; $_failed_fields = SmartyValidate::_failed_fields($formvars, $form); if (!empty($_failed_fields)) { foreach ($_failed_fields as $failed) { $_ret[$failed] = true; } } return $_ret; }