PluginProbe
weForms – Easy Drag & Drop Contact Form Builder For WordPress / 1.6.14
weForms – Easy Drag & Drop Contact Form Builder For WordPress v1.6.14
1.6.7 1.6.8 1.6.9 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.18 1.6.19 1.6.2 1.6.20 1.6.21 1.6.22 1.6.23 1.6.24 1.6.25 1.6.26 1.6.27 1.6.28 1.6.3 1.6.4 1.6.5 1.6.6 All 74 releases
← All changes | includes/class-ajax.php +25 -51 1.6.211.6.14 View file →
@@ -108,12 +108,11 @@
108 108 $settings = array();
109 109 $integrations = array();
110 110
111 111 if ( isset( $post_data['settings'] ) ) {
112 - $settings = json_decode( $post_data['settings'], true );
113 - $settings['message'] = sanitize_text_field( $settings['message'] );
114 - $settings['url'] = sanitize_url( $settings['url'] );
115 - $settings['limit_message'] = sanitize_text_field( $settings['limit_message'] );
112 + $settings = (array) json_decode( $post_data['settings'] );
113 + $settings['message'] = sanitize_text_field( $settings['message'] );
114 + error_log(print_r($settings, true));
116 115 } else {
117 116 $settings = isset( $form_data['wpuf_settings'] ) ? $form_data['wpuf_settings'] : [];
118 117 }
119 118
@@ -142,14 +141,9 @@
142 141 $form->maybe_update_entries( $form_fields );
143 142
144 143 do_action( 'weforms_update_form', $form_data['wpuf_form_id'], $form_fields, $settings );
145 144
146 - wp_send_json_success(
147 - array(
148 - 'form_fields' => $form_fields,
149 - 'settings' => $settings,
150 - )
151 - );
145 + wp_send_json_success( [ 'form_fields' => $form_fields ] );
152 146 }
153 147
154 148 /**
155 149 * Get all contact forms
@@ -581,9 +575,9 @@
581 575 }
582 576 }
583 577 } elseif ( empty( $field['value'] ) ) {
584 578 $has_empty = true;
585 - continue;
579 + break;
586 580 } else {
587 581 $field = WeForms_Form_Entry_Manager::format_entry_value( $field );
588 582 array_push( $fields_formatted, $field );
589 583 }
@@ -708,24 +702,13 @@
708 702 * @return void
709 703 */
710 704 public function handle_frontend_submission() {
711 705 check_ajax_referer( 'wpuf_form_add' );
706 +
712 707 $form_id = isset( $_POST['form_id'] ) ? intval( $_POST['form_id'] ) : 0;
713 708 $page_id = isset( $_POST['page_id'] ) ? intval( $_POST['page_id'] ) : 0;
709 +
714 710 $form = weforms()->form->get( $form_id );
715 -
716 - /**
717 - * Check if form submission is open. This resolves broken access control with unauthenticated users.
718 - * Access is now checked on frontend form rendering and submission.
719 - */
720 - $form_submission_status = $form->is_submission_open();
721 - if ( is_wp_error( $form_submission_status ) ) {
722 - wp_send_json( [
723 - 'success' => false,
724 - 'error' => __( 'Login Required for submission.', 'weforms' ),
725 - ] );
726 - }
727 -
728 711 $form_settings = $form->get_settings();
729 712 $form_fields = $form->get_fields();
730 713 $entry_fields = $form->prepare_entries();
731 714 $form_entries = weforms_get_form_entries( $form_id, [ 'number' => '', 'offset' => '' ] );
@@ -779,36 +762,28 @@
779 762 $this->validate_submission( $entry_fields, $form, $form_settings, $form_fields );
780 763
781 764 $entry_fields = apply_filters( 'weforms_before_entry_submission', $entry_fields, $form, $form_settings, $form_fields );
782 765
783 - //check for entry_fields for a return error
784 - if ( is_wp_error( $entry_fields ) ) {
785 - wp_send_json( [
786 - 'success' => false,
787 - 'error' => $entry_fields->get_error_message(),
788 - ] );
789 - } else {
790 - $entry_id = 1;
791 - $global_settings = weforms_get_settings();
792 - if ( empty( $form_settings['after_submission'] ) ) {
793 - $entry_id = weforms_insert_entry( [
794 - 'form_id' => $form_id,
795 - ], $entry_fields );
796 - if ( is_wp_error( $entry_id ) ) {
797 - wp_send_json( [
798 - 'success' => false,
799 - 'error' => $entry_id->get_error_message(),
800 - ] );
801 - }
802 - // Fire a hook for integration
803 - do_action( 'weforms_entry_submission', $entry_id, $form_id, $page_id, $form_settings );
804 - $notification = new WeForms_Notification( [
805 - 'form_id' => $form_id,
806 - 'page_id' => $page_id,
807 - 'entry_id' => $entry_id,
766 + $entry_id = 1;
767 + $global_settings = weforms_get_settings();
768 + if ( empty( $form_settings['after_submission'] ) ) {
769 + $entry_id = weforms_insert_entry( [
770 + 'form_id' => $form_id,
771 + ], $entry_fields );
772 + if ( is_wp_error( $entry_id ) ) {
773 + wp_send_json( [
774 + 'success' => false,
775 + 'error' => $entry_id->get_error_message(),
808 776 ] );
809 - $notification->send_notifications();
810 777 }
778 + // Fire a hook for integration
779 + do_action( 'weforms_entry_submission', $entry_id, $form_id, $page_id, $form_settings );
780 + $notification = new WeForms_Notification( [
781 + 'form_id' => $form_id,
782 + 'page_id' => $page_id,
783 + 'entry_id' => $entry_id,
784 + ] );
785 + $notification->send_notifications();
811 786 }
812 787 // redirect URL
813 788 $show_message = false;
814 789 $redirect_to = false;
@@ -843,9 +818,8 @@
843 818 'form_id' => $form_id,
844 819 'entry_id' => $entry_id,
845 820 'entry_fields' =>$entry_fields,
846 821 ] );
847 -
848 822 weforms_clear_buffer();
849 823 wp_send_json( $response );
850 824 }
851 825