Plugin Directory

Changeset 2302163


Ignore:
Timestamp:
05/10/2020 05:36:27 PM (6 years ago)
Author:
emfluencekc
Message:

Update plugin to 2.8.1

Location:
wp-emfluence/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • wp-emfluence/trunk/emfluence.php

    r2225635 r2302163  
    55Description: Easily add forms to your website for contacts to add or update their details in your emfluence Marketing Platform account.
    66Author: emfluence Digital Marketing
    7 Version: 2.8
     7Version: 2.8.1
    88Author URI: https://www.emfluence.com
    99Text Domain: emfl_form
  • wp-emfluence/trunk/readme.txt

    r2225635 r2302163  
    22Tags: email, email marketing, emailmarketing, emfluence, api, marketing automation, widget, email widget, email signup, mailing list, newsletter, form, automation
    33Requires at least: 4.0
    4 Tested up to: 5.3.2
    5 Stable tag: 2.8
     4Tested up to: 5.4.1
     5Stable tag: 2.8.1
    66Requires PHP: 5.6
    77Contributors: emfluencekc, mightyturtle
     
    5656
    5757== Changelog ==
     58
     59= 2.8.1 =
     60* Resolve some PHP notices.
     61* Only submit one form per page.
    5862
    5963= 2.8 =
  • wp-emfluence/trunk/widget.php

    r2225635 r2302163  
    5454        $groups[$group->groupID] = $group;
    5555      }
    56       if( !$response->data->paging->nextUrl ){
     56      if( empty($response->data->paging['next']) ){
    5757        $more = FALSE;
    5858      } else {
     
    182182
    183183  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      */
    190184    $values = array();
    191185
     
    204198     */
    205199
    206     if( !empty($_POST) && $_POST['action'] == 'email_signup' ){
     200    if( !empty($_POST) && ($_POST['action'] == 'email_signup') && ($_POST['form-id'] === $args['widget_id']) ){
    207201      $defaults = $this->form_get_defaults();
    208202
     
    210204      foreach( $_POST as $key => $value ){
    211205        if(!is_string($value)) continue;
     206        if('form-id' === $key) continue;
    212207        $values[$key] = htmlentities( trim( $value ) );
    213208      }
     
    340335
    341336    $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;
    342338    $output .= '<input type="hidden" name="action" value="email_signup" />' . "\n";
    343339    $output .= '<input type="hidden" name="source" value="' . $current_page_url . '" />' . "\n";
     
    367363       * Allows rendering of custom form parts that aren't directly attached to a contact field.
    368364       */
    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);
    370367      if(is_string($before_field_html)) $output .= $before_field_html;
    371368
     
    381378          }
    382379          $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";
    384381          $output .= '</div>' . "\n";
    385382          break;
     
    391388          }
    392389          $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";
    394391          $output .= '</div>' . "\n";
    395392          break;
     
    410407          break;
    411408        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);
    413410          if(is_string($custom_field_html)) $output .= $custom_field_html;
    414411          break;
Note: See TracChangeset for help on using the changeset viewer.