ID ){ $validations[$i+$off] = 1; // auto approved continue; } } ### captcha not for logged in users $jump = ($field_stat[1] == 'captcha') && is_user_logged_in() && $captchaopt['fo']<>'1'; $jump = $jump || ( ($field_stat[1] == 'verification') && is_user_logged_in() && $captchaopt['foqa']<>'1' ); if( $jump ) continue; ### if subscribe not shown, skip $isSubscribed==''; if ( class_exists('sg_subscribe') ){ global $sg_subscribe; sg_subscribe_start(); $isSubscribed = $sg_subscribe->current_viewer_subscription_status(); } if( in_array($field_type,array('subscribe')) && $isSubscribed<>'' ) continue; ### comment luv get_currentuserinfo(); global $user_level; if( in_array($field_type,array('luv')) && $user_level==10 ) continue; //input field names & label $custom_names = (get_option('cforms'.$no.'_customnames')=='1')?true:false; if ( $custom_names ){ preg_match('/^([^#\|]*).*/',$field_name,$input_name); if ( strpos($input_name[1],'[id:')!==false ){ $idPartA = strpos($input_name[1],'[id:'); $idPartB = strpos($input_name[1],']',$idPartA); $current_field = $_REQUEST[ cf_sanitize_ids( substr($input_name[1],$idPartA+4,($idPartB-$idPartA)-4) ) ]; $field_name = substr_replace($input_name[1],'',$idPartA,($idPartB-$idPartA)+1); } else $current_field = $_REQUEST[ cf_sanitize_ids($input_name[1]) ]; } else $current_field = $_REQUEST['cf'.$no.'_field_' . ((int)$i+(int)$off)]; if( in_array($field_type,array('luv','subscribe','comment','url','email','cauthor')) ) // WP comment field name exceptions $current_field = $_REQUEST[$field_type]; $current_field = is_array($current_field) ? $current_field : stripslashes($current_field); if( $field_emailcheck ) { // email field // special email field in WP Commente if ( $field_type=='email' ) $validations[$i+$off] = cforms_is_email( $_REQUEST['email']) || (!$field_required && $_REQUEST['email']==''); else $validations[$i+$off] = cforms_is_email( $current_field ) || (!$field_required && $current_field==''); if ( !$validations[$i+$off] && $err==0 ) $err=1; } else if( $field_required ) { // just required if( in_array($field_type,array('cauthor','url','comment','pwfield','textfield','datepicker','textarea','yourname','youremail','friendsname','friendsemail')) ){ $validations[$i+$off] = ($current_field=='')?false:true; }else if( $field_type=="checkbox" ) { $validations[$i+$off] = ($current_field=='')?false:true; }else if( $field_type=="selectbox" || $field_type=="emailtobox" ) { $validations[$i+$off] = !($current_field == '-' ); }else if( $field_type=="multiselectbox" ) { // how many multiple selects ? $all_options = $current_field; if ( count($all_options) <= 1 && $all_options[0]=='' ) $validations[$i+$off] = false; else $validations[$i+$off] = true; }else if( $field_type=="upload" ) { // prelim upload check $validations[$i+$off] = !($_FILES['cf_uploadfile'.$no][name][$filefield++]==''); if ( !$validations[$i+$off] && $err==0 ) { $err=3; $fileerr = get_option('cforms_upload_err2'); } }else if( in_array($field_type,array('cauthor','url','email','comment')) ) { // prelim upload check $validations[$i+$off] = ($_REQUEST[$field_type]=='')?false:true; // regexp set for textfields? $obj = explode('|', $c_err[0], 3); if ( $obj[2] <> '') { $reg_exp = str_replace('/','\/',stripslashes($obj[2]) ); if( !preg_match('/'.$reg_exp.'/',$_REQUEST[$field_type]) ) $validations[$i+$off] = false; } } if ( !$validations[$i+$off] && $err==0 ) $err=1; } else if( $field_type == 'verification' ){ // visitor verification code $validations[$i+$off] = 1; if ( $_REQUEST['cforms_a'.$no] <> md5(rawurlencode(strtolower($_REQUEST['cforms_q'.$no]))) ) { $validations[$i+$off] = 0; $err = !($err)?2:$err; } } else if( $field_type == 'captcha' ){ // captcha verification $captcha = get_option('cforms_captcha_def'); $validations[$i+$off] = 1; $a = explode('+',$_COOKIE['turing_string_'.$no]); $a = $a[1]; $b = md5( ($captcha['i'] == 'i')?strtolower($_REQUEST['cforms_captcha'.$no]):$_REQUEST['cforms_captcha'.$no]); if ( $a <> $b ) { $validations[$i+$off] = 0; $err = !($err)?2:$err; } } else $validations[$i+$off] = 1; // REGEXP now outside of 'is required' if( in_array($field_type,array('cauthor','url','comment','pwfield','textfield','datepicker','textarea','yourname','youremail','friendsname','friendsemail')) ){ // regexp set for textfields? $obj = explode('|', $c_err[0], 3); if ( $obj[2] <> '') { // check against other field! if ( isset($_REQUEST[$obj[2]]) && $_REQUEST[$obj[2]]<>'' ){ if( $current_field <> $_REQUEST[$obj[2]] ) $validations[$i+$off] = false; } else { // classic regexp $reg_exp = str_replace('/','\/',stripslashes($obj[2]) ); if( $current_field<>'' && !preg_match('/'.$reg_exp.'/', $current_field) ){ $validations[$i+$off] = false; } } } if ( !$validations[$i+$off] && $err==0 ) $err=1; } $all_valid = $all_valid && $validations[$i+$off]; if ( $c_err[1] <> '' && $validations[$i+$off] == false ){ $c_errflag=4; if ( get_option('cforms_liID')=='1' ){ $custom_error .= '