$a_formRules[] = new FormRule(FormRuleType::minimumValue, $o_fe_age, 18);
$a_formRules[] = new FormRule(FormRuleType::maximumValue, $o_fe_age, 100);
//additional rules for DOB
$a_formRules[] = new FormRule(FormRuleType::date, $o_fe_dob, 'dd/mm/yyyy');
//A unique case, when checking if passwords match pass the two fields as an array into the second argument.
$a_formRules[] = new FormRule(FormRuleType::minimumLength, $o_fe_userPass, 8);
//You could also specify "user_pass" for the 3rd paramater. This string would attempt to map back to the form matching that id.
$a_formRules[] = new FormRule(FormRuleType::fieldMatch, $o_fe_userPass2, $o_fe_userPass, 'Passwords do not match');
/*----------------------------*/
/*CREATE FORM AND ADD ELEMENTS*/
/*----------------------------*/
$o_form = new JsonFormBuilder($modx, 'myContactForm');
$o_form->setRedirectDocument(3);
$o_form->addRules($a_formRules);
//Specify to and from email addresses, also see replyTo, CC and BCC options.
$o_form->setEmailToName('To Name');
$o_form->setEmailToAddress($modx->getOption('emailsender'));
//You can set CC or BCC options
//$o_form->setEmailCCAddress('*****@*****.**');
//$o_form->setEmailBCCAddress('*****@*****.**');
//or you can use an array of addresses like so.
//$o_form->setEmailToAddress(array('*****@*****.**','*****@*****.**'));
$o_form->setEmailFromAddress($o_form->postVal('email_address'));
$o_form->setEmailFromName($o_form->postVal('name_full'));
$o_form->setEmailSubject('MyCompany Contact Form Submission - From: ' . $o_form->postVal('name_full'));
$o_form->setEmailHeadHtml('<p>This is a response sent by ' . $o_form->postVal('name_full') . ' using the contact us form:</p>');
$o_form->setJqueryValidation(true);
$o_form->setPlaceholderJavascript('JsonFormBuilder_myForm');
//Set extra classes on your form elements (adds to the wrapper and the inner element).
$a_els = array($o_fe_name, $o_fe_age, $o_fe_dob, $o_fe_attend, $o_fe_username, $o_fe_email, $o_fe_userPass, $o_fe_userPass2, $o_fe_address, $o_fe_city, $o_fe_usstates, $o_fe_postcode, $o_fe_staff);
foreach ($a_els as $e) {