Clear Javascript

add_filter(‘frm_validate_field_entry’, ‘my_custom_validation’, 10, 2); function my_custom_validation($errors, $posted_field){ if(!current_user_can(‘administrator’)){ //don’t strip javascript submitted by administrators if(!is_array($_POST[‘item_meta’][$posted_field->id])){ $_POST[‘item_meta’][$posted_field->id] = wp_kses_post($_POST[‘item_meta’][$posted_field->id]); }else{ foreach($_POST[‘item_meta’][$posted_field->id] as $k => $v){ if(!is_array($v)) $_POST[‘item_meta’][$posted_field->id][$k] = wp_kses_post($v); } } } return $errors; }Continue reading

Require minimum age

add_filter(‘frm_validate_field_entry’, ‘my_custom_validation’, 10, 3); function my_custom_validation($errors, $posted_field, $posted_value){ if($posted_field->id == 25){ //change 25 to the ID of the field to validate //check the $posted_value here if(strtotime(“-18 years“) < strtotime($posted_value)){ //if birthday is less than 18 years ago //if it doesn’t…Continue reading

Capitalize all text fields

add_filter(‘frm_validate_field_entry’, ‘field_caps_validation’, 8, 3); function field_caps_validation($errors, $posted_field, $posted_value){ if($posted_field->type == ‘text’){ $_POST[‘item_meta’][$posted_field->id] = mb_strtoupper($posted_value); } return $errors; }Continue reading

Force field value back to previous

add_filter(‘frm_validate_field_entry’, ‘my_custom_validation’, 10, 3); function my_custom_validation($errors, $posted_field, $posted_value){ $featured_field = 25; //change 25 to the ID of the featured field if ( ! current_user_can(‘administrator’) && $posted_field->id == $featured_field ) { if ( isset( $_POST[‘id’] ) && $_POST[‘id’] ) { $force_val…Continue reading

Verify dropdown/radio options

add_filter(‘frm_validate_field_entry’, ‘frm_check_radio_option’, 10, 3); function frm_check_radio_option( $errors, $posted_field, $posted_value ) { $field_ids = array( 25, 26 ); // set your field ids here if ( in_array( $posted_field->id, $field_ids ) && ! empty( $_POST[‘item_meta’][ $posted_field->id ] ) ) { $options =…Continue reading

Save the date in a different format

add_filter(‘frm_validate_field_entry’, ‘copy_my_field’, 10, 3); function copy_my_field($errors, $posted_field, $posted_value){ if ( $posted_field->id == 25 ) { //change 25 to the ID of the hidden field to change $oDate = $_POST[‘item_meta’][77]; // change 77 to the ID of your date field $_POST[‘item_meta’][$posted_field->id]…Continue reading

Limit the number of times a date can be selected

add_filter(‘frm_validate_field_entry’, ‘my_custom_validation’, 10, 3); function my_custom_validation($errors, $posted_field, $posted_value){ if($posted_field->id == 125 and !is_admin()){ //change 125 to the ID of the date field $frmpro_settings = FrmProAppHelper::get_settings(); $selected_date = FrmProAppHelper::convert_date($posted_value, $frmpro_settings->date_format, ‘Y-m-d’); //get all the entries for that date $entries_for_date = FrmEntryMeta::get_entry_metas_for_field(125,…Continue reading

Limit responses for a set time period

add_filter(‘frm_validate_field_entry’, ‘my_custom_validation’, 10, 3); function my_custom_validation($errors, $posted_field, $posted_value){ if($posted_field->id == 25 and !is_admin()){ //change 25 to thema ID of the field to validate global $wpdb; $entry_id = (isset($_POST[‘id’])) ? $_POST[‘id’] : 0; $entries = $wpdb->get_col($wpdb->prepare(“SELECT item_id FROM ” . $wpdb->prefix…Continue reading

Change the value in a field

add_filter(‘frm_validate_field_entry’, ‘copy_my_field’, 10, 3); function copy_my_field($errors, $posted_field, $posted_value){ if ( $posted_field->id == 25 ) { //change 25 to the ID of the field to change $_POST[‘item_meta’][$posted_field->id] = $_POST[‘item_meta’][20]; //Change 20 to the ID of the field to copy } return…Continue reading

Require a minimum number of checked values

add_filter(‘frm_validate_field_entry’, ‘require_minimum_checkbox_number’, 10, 3); function require_minimum_checkbox_number( $errors, $field, $posted_value ){ if ( $field->id == 25 ) { $minimum = 4; if ( ! is_array ( $posted_value ) || ( is_array( $posted_value ) && count( $posted_value ) < $minimum ) )…Continue reading