Framework  3.9
RequiredIfCheckedValidator Class Reference
+ Inheritance diagram for RequiredIfCheckedValidator:
+ Collaboration diagram for RequiredIfCheckedValidator:

Public Member Functions

 RequiredIfCheckedValidator ($field, $checkbox, $title, $checkboxTitle, $message="")
 
 writeClient ()
 
 validate ()
 
- Public Member Functions inherited from AbstractValidator
 AbstractValidator ($field, $title)
 

Public Attributes

 $message
 
 $checkbox
 
- Public Attributes inherited from AbstractValidator
 $field
 
 $title
 

Detailed Description

Definition at line 278 of file validation.inc.

Member Function Documentation

◆ RequiredIfCheckedValidator()

RequiredIfCheckedValidator::RequiredIfCheckedValidator (   $field,
  $checkbox,
  $title,
  $checkboxTitle,
  $message = "" 
)

Definition at line 283 of file validation.inc.

284  {
286  $this->checkbox = $checkbox;
287 
288  $this->message = $message ? $message : "{$title} is a required field. Please supply a value or uncheck {$checkboxTitle}.";
289 
290  trace("RequiredIfCheckedValidator($field,$title,$checkboxTitle, $message)", 4);
291  }
AbstractValidator($field, $title)
Definition: validation.inc:53
trace($msg, $lvl=3, $callStack=null)
Send output to the trace log.
Definition: functions.inc:1010

◆ validate()

RequiredIfCheckedValidator::validate ( )

Reimplemented from AbstractValidator.

Definition at line 310 of file validation.inc.

311  {
312 
313  if ($this->readOnly) return "";
314 
315  if (!isset($_POST[$this->field]) && isset($_POST[$this->checkbox]))
316  {
317  return $this->message;
318  }
319  else
320  {
321  return "";
322  }
323  }

◆ writeClient()

RequiredIfCheckedValidator::writeClient ( )

Reimplemented from AbstractValidator.

Definition at line 293 of file validation.inc.

294  {
295  if ($this->readOnly) return "";
296 
297  $msg = jsSafe($this->message, true);
298  $script = <<<ENDSCRIPT
299 
300  if (form["{$this->field}"].style.display != "none" && form["{$this->checkbox}"].checked && form["{$this->field}"].value == "{$this->empty}")
301  {
302  alert("{$msg}");
303  return false;
304  }
305 ENDSCRIPT;
306 
307  return $script;
308  }
jsSafe($str, $escapeEntities=false)
Utility function to escape a string correctly for use in a Javascript client-side call.
Definition: functions.inc:434

Member Data Documentation

◆ $checkbox

RequiredIfCheckedValidator::$checkbox

Definition at line 281 of file validation.inc.

◆ $message

RequiredIfCheckedValidator::$message

Definition at line 280 of file validation.inc.


The documentation for this class was generated from the following file: