Hi!
Here is solution.
file: ... components\com_chronocontact\chronocontact.php
if( trim($paramsvalues->validate) == 'Yes'){
// Easy Validation //
$pattern = '/<[input|textarea|select].*?(name=["|\'](.*?)["|\']).*?>/i';
preg_match_all($pattern, $htmlstring, $matches);
//echo '<pre>';print_r ($matches);die;
$arr_required = explode(",", str_replace(" ","",$paramsvalues->val_required));
$arr_validate_number = explode(",", str_replace(" ","",$paramsvalues->val_validate_number));
$arr_validate_digits = explode(",", str_replace(" ","",$paramsvalues->val_validate_digits));
$arr_validate_alpha = explode(",", str_replace(" ","",$paramsvalues->val_validate_alpha));
$arr_validate_alphanum = explode(",", str_replace(" ","",$paramsvalues->val_validate_alphanum));
$arr_validate_date = explode(",", str_replace(" ","",$paramsvalues->val_validate_date));
$arr_validate_email = explode(",", str_replace(" ","",$paramsvalues->val_validate_email));
$arr_validate_url = explode(",", str_replace(" ","",$paramsvalues->val_validate_url));
$arr_validate_date_au = explode(",", str_replace(" ","",$paramsvalues->val_validate_date_au));
$arr_validate_currency_dollar = explode(",", str_replace(" ","",$paramsvalues->val_validate_currency_dollar));
$arr_validate_selection = explode(",", str_replace(" ","",$paramsvalues->val_validate_selection));
$arr_validate_one_required = explode(",", str_replace(" ","",$paramsvalues->val_validate_one_required));
$arr_all = array_merge($arr_required, $arr_validate_number, $arr_validate_digits, $arr_validate_alpha, $arr_validate_alphanum, $arr_validate_date, $arr_validate_email, $arr_validate_url, $arr_validate_date_au,
$arr_validate_currency_dollar, $arr_validate_selection, $arr_validate_one_required);
$i = 0;
$used_names = array ();
foreach ($matches[0] as $match)
{
$full_name = $matches[1][$i]; // with quotes and attribute 'name', for example: name="asdasd"
$name = $matches[2][$i]; // name value only
$i++;
// needed to avoid class attribute duplication in a radios or a checkboxes which has a same name
if (in_array($name,$used_names)) {
continue;
}
else {
$used_names[] = $name;
}
//searchng for the class-attributes into our controls
//as result we have array specified class-attributess
//case when class-attribute is after name-attribute
preg_match('/'.$name.'.*? class=["|\'](.*?)["|\']/i', $match, $class_matches);
$class_array = array();
if ($class_matches[0]!=''){
$class_array[] = $class_matches[1];
}
else {
//before name-attribute
preg_match('/class=["|\'](.*?)["|\'].*?'.$name.'/i', $match, $class_matches2);
if ($class_matches2[0]!=''){
$class_array[] = $class_matches2[1];
}
}
if(in_array($name,$arr_all)){
if(in_array($name,$arr_required)){
$class_array[] = "required";
}
if(in_array($name,$arr_validate_number)){
$class_array[] = "validate-number";
}
if(in_array($name,$arr_validate_digits)){
$class_array[] = "validate-digits";
}
if(in_array($name,$arr_validate_alpha)){
$class_array[] = "validate-alpha";
}
if(in_array($name,$arr_validate_alphanum)){
$class_array[] = "validate-alphanum";
}
if(in_array($name,$arr_validate_date)){
$class_array[] = "validate-date";
}
if(in_array($name,$arr_validate_email)){
$class_array[] = "validate-email";
}
if(in_array($name,$arr_validate_url)){
$class_array[] = "validate-url";
}
if(in_array($name,$arr_validate_date_au)){
$class_array[] = "validate-date-au";
}
if(in_array($name,$arr_validate_currency_dollar)){
$class_array[] = "validate-currency-dollar";
}
if(in_array($name,$arr_validate_selection)){
$class_array[] = "validate-selection";
}
if(in_array($name,$arr_validate_one_required)){
$class_array[] = "validate-one-required";
}
$class_array = array_reverse($class_array);
$class_string = implode(" ",$class_array);
if ($class_matches[0]!='') {
$htmlstring = preg_replace('/(name=["|\']'.$name.'["|\'].*?)(class=["|\'].*?["|\'])/i','$1class="'.$class_string.'"', $htmlstring);
}
elseif ($class_matches2[0]!='') {
$htmlstring = preg_replace('/(class=["|\'].*?["|\'])(.*?name=["|\']'.$name.'["|\'])/i','class="'.$class_string.'"$2', $htmlstring);
}
else {
$htmlstring = str_replace($full_name,$full_name.' class="'.$class_string.'"',$htmlstring);
}
}
}
$rows[0]->html = $htmlstring;
}
/// end validation //