Changeset 2302163
- Timestamp:
- 05/10/2020 05:36:27 PM (6 years ago)
- Location:
- wp-emfluence/trunk
- Files:
-
- 3 edited
-
emfluence.php (modified) (1 diff)
-
readme.txt (modified) (2 diffs)
-
widget.php (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wp-emfluence/trunk/emfluence.php
r2225635 r2302163 5 5 Description: Easily add forms to your website for contacts to add or update their details in your emfluence Marketing Platform account. 6 6 Author: emfluence Digital Marketing 7 Version: 2.8 7 Version: 2.8.1 8 8 Author URI: https://www.emfluence.com 9 9 Text Domain: emfl_form -
wp-emfluence/trunk/readme.txt
r2225635 r2302163 2 2 Tags: email, email marketing, emailmarketing, emfluence, api, marketing automation, widget, email widget, email signup, mailing list, newsletter, form, automation 3 3 Requires at least: 4.0 4 Tested up to: 5. 3.25 Stable tag: 2.8 4 Tested up to: 5.4.1 5 Stable tag: 2.8.1 6 6 Requires PHP: 5.6 7 7 Contributors: emfluencekc, mightyturtle … … 56 56 57 57 == Changelog == 58 59 = 2.8.1 = 60 * Resolve some PHP notices. 61 * Only submit one form per page. 58 62 59 63 = 2.8 = -
wp-emfluence/trunk/widget.php
r2225635 r2302163 54 54 $groups[$group->groupID] = $group; 55 55 } 56 if( !$response->data->paging->nextUrl){56 if( empty($response->data->paging['next']) ){ 57 57 $more = FALSE; 58 58 } else { … … 182 182 183 183 function widget( $args, $instance ) { 184 /* TODO: Support more than one widget form per page.185 * Currently this plugin works by rendering the form and submitting to the same page.186 * It assumes that the form has been submitted by this instance of the widget.187 * So multiple forms on the same page would try to all process the submission at the same time.188 * We could probably resolve this by identifying the instance ID in the form.189 */190 184 $values = array(); 191 185 … … 204 198 */ 205 199 206 if( !empty($_POST) && $_POST['action'] == 'email_signup'){200 if( !empty($_POST) && ($_POST['action'] == 'email_signup') && ($_POST['form-id'] === $args['widget_id']) ){ 207 201 $defaults = $this->form_get_defaults(); 208 202 … … 210 204 foreach( $_POST as $key => $value ){ 211 205 if(!is_string($value)) continue; 206 if('form-id' === $key) continue; 212 207 $values[$key] = htmlentities( trim( $value ) ); 213 208 } … … 340 335 341 336 $current_page_url = remove_query_arg('sucess', $this->get_current_page_url()); 337 $output .= '<input type="hidden" name="form-id" value="' . esc_attr($args['widget_id']) . '" />' . PHP_EOL; 342 338 $output .= '<input type="hidden" name="action" value="email_signup" />' . "\n"; 343 339 $output .= '<input type="hidden" name="source" value="' . $current_page_url . '" />' . "\n"; … … 367 363 * Allows rendering of custom form parts that aren't directly attached to a contact field. 368 364 */ 369 $before_field_html = apply_filters('emfl_widget_before_field', $field, $key, $values[$field['field_name']], $instance, $this); 365 $field_value = empty($values[$field['field_name']]) ? '' : $values[$field['field_name']]; 366 $before_field_html = apply_filters('emfl_widget_before_field', $field, $key, $field_value, $instance, $this); 370 367 if(is_string($before_field_html)) $output .= $before_field_html; 371 368 … … 381 378 } 382 379 $output .= '</label>' . "\n"; 383 $output .= '<input placeholder="' . esc_attr($placeholder) . '" type="' . $field['type'] . '" name="' . $field['field_name'] . '" id="emfluence_' . $key . '" value="' . esc_attr($ values[$field['field_name']]) . '" ' . $required . ' />' . "\n";380 $output .= '<input placeholder="' . esc_attr($placeholder) . '" type="' . $field['type'] . '" name="' . $field['field_name'] . '" id="emfluence_' . $key . '" value="' . esc_attr($field_value) . '" ' . $required . ' />' . "\n"; 384 381 $output .= '</div>' . "\n"; 385 382 break; … … 391 388 } 392 389 $output .= '</label>' . "\n"; 393 $output .= '<textarea placeholder="' . esc_attr($placeholder) . '" name="' . $field['field_name'] . '" id="emfluence_' . $key . '" ' . $required . '>' . esc_html($ values[$field['field_name']]) . '</textarea>' . "\n";390 $output .= '<textarea placeholder="' . esc_attr($placeholder) . '" name="' . $field['field_name'] . '" id="emfluence_' . $key . '" ' . $required . '>' . esc_html($field_value) . '</textarea>' . "\n"; 394 391 $output .= '</div>' . "\n"; 395 392 break; … … 410 407 break; 411 408 default: 412 $custom_field_html = apply_filters('emfl_widget_render_custom_field_type', $field, $key, $ values[$field['field_name']]);409 $custom_field_html = apply_filters('emfl_widget_render_custom_field_type', $field, $key, $field_value); 413 410 if(is_string($custom_field_html)) $output .= $custom_field_html; 414 411 break;
Note: See TracChangeset
for help on using the changeset viewer.