PluginProbe
weForms – Easy Drag & Drop Contact Form Builder For WordPress / 1.0.0-beta.3
weForms – Easy Drag & Drop Contact Form Builder For WordPress v1.0.0-beta.3
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-frontend-form.php +139 -182 1.6.81.0.0-beta.3 View file →
@@ -1,182 +1,139 @@
1 -<?php
2 -
3 -/**
4 - * The frontend form class
5 - */
6 -class WeForms_Frontend_Form {
7 -
8 - public function __construct() {
9 - add_shortcode( 'weforms', [ $this, 'render_shortcode' ] );
10 - }
11 -
12 - /**
13 - * Show form error
14 - *
15 - * @param string $message
16 - * @param string $type
17 - *
18 - * @return string
19 - */
20 - public function show_error( $message, $type = 'info' ) {
21 - return sprintf( '<div class="wpuf-%s">%s</div>', $type, $message );
22 - }
23 -
24 - /**
25 - * Render contact form shortcode
26 - *
27 - * @param array $atts
28 - * @param string $contents
29 - *
30 - * @return string
31 - */
32 - public function render_shortcode( $atts, $contents = '' ) {
33 - extract( shortcode_atts( [ 'id' => 0 ], $atts ) );
34 -
35 - weforms()->scripts->register_frontend();
36 - weforms()->scripts->enqueue_frontend();
37 -
38 - ob_start();
39 -
40 - $form = weforms()->form->get( $id );
41 -
42 - if ( !$form->id ) {
43 - return $this->show_error( __( 'The form couldn\'t be found.', 'weforms' ) );
44 - }
45 -
46 - $is_open = $form->is_submission_open();
47 -
48 - if ( is_wp_error( $is_open ) ) {
49 - return $this->show_error( $is_open->get_error_message() );
50 - }
51 -
52 - $this->render_form( $form, $atts );
53 -
54 - return ob_get_clean();
55 - }
56 -
57 - /**
58 - * Render the form
59 - *
60 - * @param \WeForms_Form $form
61 - *
62 - * @return void
63 - */
64 - public function render_form( $form, $atts ) {
65 - $form_fields = $form->get_fields();
66 - $form_settings = $form->get_settings();
67 - $show_credit = weforms_get_settings( 'credit', false );
68 - $formid = 'weforms-' . $form->id;
69 - $use_theme_css = isset( $form_settings['use_theme_css'] ) ? $form_settings['use_theme_css'] : 'wpuf-style';
70 -
71 - if ( isset( $atts['modal'] ) && 'true' == $atts['modal'] ) {
72 - wp_enqueue_script( 'weforms-modal-js', WEFORMS_ASSET_URI . '/modal/jquery.modal.js', [ 'jquery', 'weforms-form' ], false, false );
73 - wp_enqueue_style( 'weforms_modal_styles', WEFORMS_ASSET_URI . '/modal/jquery.modal.css' );
74 -
75 - $modal_class = 'modal';
76 - $modal_id = 'modal-form';
77 - $modal_style = 'style="display:none"';
78 - } else {
79 - $modal_class = $modal_id = $modal_style = '';
80 - } ?>
81 -
82 - <?php
83 - $script = "if ( typeof wpuf_conditional_items === 'undefined' ) {
84 - window.wpuf_conditional_items = [];
85 - }
86 - if ( typeof wpuf_plupload_items === 'undefined' ) {
87 - window.wpuf_plupload_items = [];
88 - }
89 - if ( typeof wpuf_map_items === 'undefined' ) {
90 - window.wpuf_map_items = [];
91 - }
92 - ";
93 - wp_add_inline_script( 'wpuf-form', $script );
94 - ?>
95 -
96 - <form class="wpuf-form-add <?php echo esc_attr( $formid ); ?> <?php echo esc_attr( $modal_class ); ?> <?php echo
97 - esc_attr( $use_theme_css ); ?>" action="" method="post" <?php echo esc_attr( $modal_style ); ?> id="<?php echo
98 - esc_attr($modal_id); ?>">
99 -
100 - <ul class="wpuf-form form-label-<?php echo esc_attr( $form_settings['label_position'] ); ?>">
101 -
102 - <?php
103 - /**
104 - * @since 1.1.0
105 - */
106 - do_action( 'weforms_form_fields_top', $form, $form_fields );
107 -
108 - weforms()->fields->render_fields( $form_fields, $form->id, $atts );
109 -
110 - /*
111 - * @since 1.1.1
112 - */
113 - do_action( 'weforms_form_fields_before_submit_button', $form, $form_fields, $form_settings );
114 -
115 - $this->submit_button( $form->id, $form_settings );
116 -
117 - /*
118 - * @since 1.1.0
119 - */
120 - do_action( 'weforms_form_fields_bottom', $form, $form_fields ); ?>
121 - </ul>
122 -
123 - </form>
124 -
125 - <?php
126 - if ( isset( $atts['modal'] ) && 'true' == esc_attr( $atts['modal'] ) ) {
127 - if ( isset( $atts['link'] ) ) {
128 - printf( wp_kses_post( '<p><a href="#modal-form" rel="modal:open">%s</a></p>', $atts['link'] ) );
129 - } else {
130 - if ( isset( $atts['button'] ) ) {
131 - $button_text = $atts['button'];
132 - } else {
133 - $button_text = esc_html_e( 'Open Form', 'weforms' );
134 - }
135 - printf( wp_kses_post( '<p><button><a href="#modal-form" rel="modal:open">%s</a></button></p>', $button_text ) );
136 - }
137 - }
138 -
139 - if ( $show_credit ) {
140 - printf( '<em>' . wp_kses_post( 'Powered by <a href="%s" target="_blank">weForms</a>', 'weforms' ) . '</em>', 'https://wordpress.org/plugins/weforms/' );
141 - }
142 -
143 - weforms_track_form_view( $form->id );
144 - }
145 -
146 - /**
147 - * Render submit button
148 - *
149 - * @param int $form_id
150 - * @param array $form_settings
151 - *
152 - * @return void
153 - */
154 - public function submit_button( $form_id, $form_settings ) {
155 - ?>
156 - <li class="wpuf-submit">
157 - <div class="wpuf-label">
158 - &nbsp;
159 - </div>
160 -
161 - <?php esc_attr( wp_nonce_field( 'wpuf_form_add' ) ); ?>
162 -
163 - <input type="hidden" name="form_id" value="<?php echo esc_attr( $form_id ); ?>">
164 - <input type="hidden" name="page_id" value="<?php echo get_the_ID(); ?>">
165 - <input type="hidden" name="action" value="weforms_frontend_submit">
166 -
167 - <?php
168 - if ( isset( $form_settings['show_frontend_report'] ) && $form_settings['show_frontend_report'] ) { ?>
169 - <input type="hidden" name="weforms-front-report" value="yes">
170 - <?php } else { ?>
171 - <input type="hidden" name="weforms-front-report" value="no">
172 - <?php } ?>
173 -
174 - <?php do_action( 'weforms_submit_btn', $form_id, $form_settings ); ?>
175 -
176 - <input type="submit" class="weforms_submit_btn wpuf_submit_<?php echo esc_attr( $form_id ); ?>" name="submit" value="<?php echo
177 - esc_attr( $form_settings['submit_text'] ); ?>" />
178 -
179 - </li>
180 - <?php
181 - }
182 -}
1 +<?php
2 +
3 +/**
4 + * The frontend form class
5 + */
6 +class WeForms_Frontend extends WPUF_Render_Form {
7 +
8 + public function __construct() {
9 + add_shortcode( 'weforms', array( $this, 'render_shortcode' ) );
10 + }
11 +
12 + /**
13 + * Render contact form shortcode
14 + *
15 + * @param array $atts
16 + * @param string $contents
17 + *
18 + * @return string
19 + */
20 + public function render_shortcode( $atts, $contents = '' ) {
21 + extract( shortcode_atts( array( 'id' => 0 ), $atts ) );
22 + ob_start();
23 +
24 + $is_open = wpuf_is_form_submission_open( $id );
25 +
26 + if ( is_wp_error( $is_open ) ) {
27 + return '<div class="wpuf-info">' . $is_open->get_error_message() . '</div>';
28 + }
29 +
30 + $form_settings = wpuf_get_form_settings( $id );
31 +
32 + // var_dump( $form_settings );
33 + $this->render_form( $id );
34 +
35 + return ob_get_clean();
36 + }
37 +
38 + /**
39 + * Handles the add post shortcode
40 + *
41 + * @param $atts
42 + */
43 + function render_form( $form_id, $post_id = NULL, $preview = false ) {
44 + $form_vars = wpuf_get_form_fields( $form_id );
45 + $form_settings = wpuf_get_form_settings( $form_id );
46 + ?>
47 +
48 + <form class="wpuf-form-add" action="" method="post">
49 +
50 + <ul class="wpuf-form form-label-<?php echo $form_settings['label_position']; ?>">
51 + <?php
52 + $this->render_items( $form_vars, $post_id, 'contact_form', $form_id, $form_settings );
53 + $this->submit_button( $form_id, $form_settings, $post_id );
54 + ?>
55 + </ul>
56 +
57 + </form>
58 +
59 + <?php
60 + weforms_track_form_view( $form_id );
61 + }
62 +
63 + function submit_button( $form_id, $form_settings, $post_id ) {
64 + ?>
65 + <li class="wpuf-submit">
66 + <div class="wpuf-label">
67 + &nbsp;
68 + </div>
69 +
70 + <?php wp_nonce_field( 'wpuf_form_add' ); ?>
71 +
72 + <input type="hidden" name="form_id" value="<?php echo $form_id; ?>">
73 + <input type="hidden" name="page_id" value="<?php echo get_post() ? get_the_ID() : '0'; ?>">
74 + <input type="hidden" name="action" value="wpuf_submit_contact">
75 +
76 + <input type="submit" name="submit" value="<?php echo $form_settings['submit_text']; ?>" />
77 + </li>
78 + <?php
79 + }
80 +
81 + function field_name( $form_field, $post_id, $type, $form_id ) {
82 + // var_dump( $form_field );
83 + ?>
84 + <div class="wpuf-fields">
85 + <div class="wpuf-name-field-wrap format-<?php echo $form_field['format']; ?>">
86 + <div class="wpuf-name-field-first-name">
87 + <input
88 + name="<?php echo $form_field['name'] ?>[first]"
89 + type="text"
90 + placeholder="<?php echo esc_attr( $form_field['first_name']['placeholder'] ); ?>"
91 + value="<?php echo esc_attr( $form_field['first_name']['default'] ); ?>"
92 + size="40"
93 + data-required="<?php echo $form_field['required'] ?>"
94 + data-type="text"
95 + class="textfield wpuf_<?php echo $form_field['name']; ?>_<?php echo $form_id; ?>"
96 + >
97 +
98 + <?php if ( ! $form_field['hide_subs'] ) : ?>
99 + <label class="wpuf-form-sub-label"><?php _e( 'First', 'weforms' ); ?></label>
100 + <?php endif; ?>
101 + </div>
102 +
103 + <?php if ( $form_field['format'] != 'first-last' ) : ?>
104 + <div class="wpuf-name-field-middle-name">
105 + <input
106 + name="<?php echo $form_field['name'] ?>[middle]"
107 + type="text" class="textfield"
108 + placeholder="<?php echo esc_attr( $form_field['middle_name']['placeholder'] ); ?>"
109 + value="<?php echo esc_attr( $form_field['middle_name']['default'] ); ?>"
110 + size="40"
111 + >
112 +
113 + <?php if ( ! $form_field['hide_subs'] ) : ?>
114 + <label class="wpuf-form-sub-label"><?php _e( 'Middle', 'weforms' ); ?></label>
115 + <?php endif; ?>
116 + </div>
117 + <?php else: ?>
118 + <input type="hidden" name="<?php echo $form_field['name'] ?>[middle]" value="">
119 + <?php endif; ?>
120 +
121 + <div class="wpuf-name-field-last-name">
122 + <input
123 + name="<?php echo $form_field['name'] ?>[last]"
124 + type="text" class="textfield"
125 + placeholder="<?php echo esc_attr( $form_field['last_name']['placeholder'] ); ?>"
126 + value="<?php echo esc_attr( $form_field['last_name']['default'] ); ?>"
127 + size="40"
128 + >
129 + <?php if ( ! $form_field['hide_subs'] ) : ?>
130 + <label class="wpuf-form-sub-label"><?php _e( 'Last', 'weforms' ); ?></label>
131 + <?php endif; ?>
132 + </div>
133 + </div>
134 + </div>
135 + <?php
136 +
137 + $this->conditional_logic( $form_field, $form_id );
138 + }
139 +}