fields-pre-process.php 1.3 KB

123456789101112131415161718192021222324252627282930313233
  1. <?php if ( ! defined( 'ABSPATH' ) ) exit;
  2. add_action('init', 'ninja_forms_register_fields_pre_process');
  3. function ninja_forms_register_fields_pre_process(){
  4. add_action( 'ninja_forms_pre_process', 'ninja_forms_fields_pre_process', 9 );
  5. }
  6. function ninja_forms_fields_pre_process(){
  7. global $ninja_forms_fields, $ninja_forms_processing;
  8. $form_id = $ninja_forms_processing->get_form_ID();
  9. $field_results = $ninja_forms_processing->get_all_fields();
  10. if( is_array( $field_results ) AND !empty( $field_results ) ){
  11. foreach( $field_results as $field_id => $user_value ){
  12. $field = $ninja_forms_processing->get_field_settings( $field_id );
  13. $field_id = $field['id'];
  14. $field_type = $field['type'];
  15. $field_data = $field['data'];
  16. if( isset( $ninja_forms_fields[$field_type] ) ){
  17. $reg_field = $ninja_forms_fields[$field_type];
  18. //if( $reg_field['process_field'] ){
  19. $pre_process_function = $reg_field['pre_process'];
  20. if($pre_process_function != ''){
  21. $arguments = array();
  22. $arguments['field_id'] = $field_id;
  23. $user_value = apply_filters( 'ninja_forms_field_pre_process_user_value', $user_value, $field_id );
  24. $arguments['user_value'] = $user_value;
  25. call_user_func_array($pre_process_function, $arguments);
  26. }
  27. //}
  28. }
  29. }
  30. }
  31. }