Plugin Directory

Changeset 1664073


Ignore:
Timestamp:
05/24/2017 03:09:45 PM (9 years ago)
Author:
Moridrin
Message:

3.1.5

Location:
ssv-mailchimp/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • ssv-mailchimp/trunk/functions.php

    r1659850 r1664073  
    2424#endregion
    2525
     26#region Update Member From User
     27/**
     28 * @param User|int $user
     29 */
     30function mp_ssv_mailchimp_register_member_from_user($user)
     31{
     32    $user = $user instanceof User ? $user : User::getByID($user);
     33    $listID = get_option(SSV_MailChimp::OPTION_USERS_LIST);
     34    mp_ssv_mailchimp_update_member($user, $listID, true);
     35}
     36#endregion
     37
    2638#region Update Member From Registration
    2739/**
     
    4254 * @param string $listID
    4355 */
    44 function mp_ssv_mailchimp_update_member($user, $listID)
     56function mp_ssv_mailchimp_update_member($user, $listID, $createOnly = false)
    4557{
    4658    $mailchimpMember = array();
    4759    $mergeFields     = array();
    48     $links           = get_option(SSV_MailChimp::OPTION_MERGE_TAG_LINKS, array());
    49     foreach ($links as $link) {
    50         $link                            = json_decode($link, true);
    51         $mailchimpMergeTag               = strtoupper($link["tagName"]);
    52         $memberField                     = $link["fieldName"];
    53         $value                           = $user->getMeta($memberField);
    54         $mergeFields[$mailchimpMergeTag] = $value;
     60    if (!$createOnly) {
     61        $links = get_option(SSV_MailChimp::OPTION_MERGE_TAG_LINKS, array());
     62        foreach ($links as $link) {
     63            $link                            = json_decode($link, true);
     64            $mailchimpMergeTag               = strtoupper($link["tagName"]);
     65            $memberField                     = $link["fieldName"];
     66            $value                           = $user->getMeta($memberField);
     67            $mergeFields[$mailchimpMergeTag] = $value;
     68        }
    5569    }
    5670    $mailchimpMember["email_address"] = $user->user_email;
     
    5973
    6074    $apiKey       = get_option(SSV_MailChimp::OPTION_API_KEY);
     75    if (empty($apiKey)) {
     76        return;
     77    }
    6178    $memberId     = md5(strtolower($mailchimpMember['email_address']));
    6279    $memberCenter = substr($apiKey, strpos($apiKey, '-') + 1);
     
    7289        'method'  => 'PUT',
    7390    );
    74     $response = json_decode(wp_remote_request($url, $args)['body'], true);
    75     if (array_key_exists('merge_fields', $response)) {
    76         foreach ($links as $link) {
    77             $link                            = json_decode($link, true);
    78             $mailchimpMergeTag               = strtoupper($link["tagName"]);
    79             $memberField                     = $link["fieldName"];
    80             $value                           = $user->getMeta($memberField);
    81             $mergeFields[$mailchimpMergeTag] = $value;
    82         }
    83     }
    84 }
    85 
    86 add_action('user_register', 'mp_ssv_mailchimp_update_member_from_user');
     91    wp_remote_request($url, $args);
     92}
     93
     94add_action('user_register', 'mp_ssv_mailchimp_register_member_from_user');
    8795add_action(SSV_General::HOOK_USERS_SAVE_MEMBER, 'mp_ssv_mailchimp_update_member_from_user');
    8896add_action(SSV_General::HOOK_EVENTS_NEW_REGISTRATION, 'mp_ssv_mailchimp_update_member_from_registration');
     
    120128
    121129        $apiKey       = get_option(SSV_MailChimp::OPTION_API_KEY);
     130        if (empty($apiKey)) {
     131            return;
     132        }
    122133        $memberCenter = substr($apiKey, strpos($apiKey, '-') + 1);
    123134        $url          = 'https://' . $memberCenter . '.api.mailchimp.com/3.0/lists/';
     
    177188    $member       = User::getByID($user_id);
    178189    $apiKey       = get_option(SSV_Mailchimp::OPTION_API_KEY);
     190    if (empty($apiKey)) {
     191        return $user_id;
     192    }
    179193    $listID       = get_option(SSV_Mailchimp::OPTION_USERS_LIST);
    180194    $memberId     = md5(strtolower($member->user_email));
  • ssv-mailchimp/trunk/general/js/mp-ssv-input-field-selector.js

    r1656576 r1664073  
    989989    removeField(document.getElementById(fieldID + "_default_value_td"));
    990990    removeField(document.getElementById(fieldID + "_default_checked_td"));
     991    removeField(document.getElementById(fieldID + "_date_range_td"));
    991992    removeField(document.getElementById(fieldID + "_placeholder_td"));
    992993    removeField(document.getElementById(fieldID + "_class_td"));
     
    10321033    removeField(document.getElementById(fieldID + "_default_value_td"));
    10331034    removeField(document.getElementById(fieldID + "_default_checked_td"));
     1035    removeField(document.getElementById(fieldID + "_date_range_td"));
    10341036    removeField(document.getElementById(fieldID + "_placeholder_td"));
    10351037    removeField(document.getElementById(fieldID + "_class_td"));
     
    10761078}
    10771079function createMultiSelect(fieldID, fieldNameExtension, options, selected) {
    1078     console.log(selected);
    10791080    if (selected === null) {
    10801081        selected = [];
  • ssv-mailchimp/trunk/readme.txt

    r1656576 r1664073  
    3131
    3232== Changelog ==
     33= 3.1.5 =
     34* Not trying to make requests without API Key
     35* Register only functionality (without metadata links)
     36
    3337= 3.1.4 =
    3438* Successful Code Inspection
  • ssv-mailchimp/trunk/ssv-mailchimp.php

    r1659850 r1664073  
    44 * Plugin URI: http://bosso.nl/ssv-mailchimp/
    55 * Description: SSV MailChimp is an add-on for both the SSV Events and the SSV Frontend Members plugin.
    6  * Version: 3.1.4
     6 * Version: 3.1.5
    77 * Author: moridrin
    88 * Author URI: http://nl.linkedin.com/in/jberkvens/
Note: See TracChangeset for help on using the changeset viewer.