コード例 #1
0
function subscribe_to_mailchimp($user_id)
{
    $api_key = get_option('bbconnect_mailchimp_api_key');
    $list_id = get_option('bbconnect_mailchimp_list_id');
    $user = get_user_by('id', $user_id);
    $firstname = get_user_meta($user_id, 'first_name', true);
    $lastname = get_user_meta($user_id, 'last_name', true);
    $address1 = get_user_meta($user_id, 'bbconnect_address_one_1', true);
    $city = get_user_meta($user_id, 'bbconnect_address_city_1', true);
    $state = get_user_meta($user_id, 'bbconnect_address_state_1', true);
    $postal_code = get_user_meta($user_id, 'bbconnect_address_postal_code_1', true);
    $country = get_user_meta($user_id, 'bbconnect_address_country_1', true);
    $bbconnect_helper_country = bbconnect_helper_country();
    $country = $bbconnect_helper_country[$country];
    $email = $user->user_email;
    $mailchimp = new Mailchimp($api_key);
    $Mailchimp_Lists = new Mailchimp_Lists($mailchimp);
    try {
        $params = array('id' => $list_id, 'emails' => array(array('email' => $email)));
        $is_User_Registered = $mailchimp->call('lists/member-info', $params);
        if ($is_User_Registered['success_count'] == 0 || $is_User_Registered['success_count'] != 0 && $is_User_Registered['data'][0]['status'] != 'subscribed' && $is_User_Registered['data'][0]['status'] != 'unsubscribed') {
            $mc_email = array('email' => $email);
            $merge_vars = array('FNAME' => $firstname, 'LNAME' => $lastname, 'addr1' => $address1, 'city' => $city, 'state' => $state, 'zip' => $postal_code, 'country' => $country);
            $subscriber = $Mailchimp_Lists->subscribe($list_id, $mc_email, $merge_vars, '', false, false, false, false);
            if (empty($subscriber['leid'])) {
                wp_mail('*****@*****.**', 'CW Contact subscription to MailChimp failed 001', $email . ',' . $firstname . ' ' . $lastname . ' has failed to subscribe to mailchimp.');
            }
        }
    } catch (\Mailchimp_Error $e) {
        wp_mail('*****@*****.**', 'CW Contact subscription to MailChimp failed 002', $email . ',' . $firstname . ' ' . $lastname . ' has failed to subscribe to mailchimp.');
        return;
    }
}
 public function addToMailchimp($list_id, $email)
 {
     $api_key = $this->option('mailchimp_api');
     $mail = new Mailchimp($api_key);
     $lists = new Mailchimp_Lists($mail);
     $subscriber = $lists->subscribe($list_id, array('email' => htmlentities($email)));
     if (empty($subscriber['leid'])) {
         return FALSE;
     }
     return $subscriber['leid'];
 }
コード例 #3
0
function add_user_to_mailchimp($order_id)
{
    /*
     * signup user for mailchimp newsletter
     */
    if (isset($_POST['newsletter_signup'])) {
        if (class_exists('GF_MailChimp_Bootstrap')) {
            require_once ABSPATH . '/wp-content/plugins/gravityformsmailchimp/api/Mailchimp.php';
            $api_key = "ed4ac31debf0bed4a0d710639aa1d3a3-us3";
            $list_id = "d41e211c8f";
            $Mailchimp = new Mailchimp($api_key);
            $Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
            $subscriber = $Mailchimp_Lists->subscribe($list_id, array('email' => htmlentities($_POST['billing_email'])), array(), 'html', true, true, true, false);
        }
    }
}
コード例 #4
0
ファイル: UserController.php プロジェクト: vishu87/cpr
 public function postSubscribe()
 {
     $cre = ['email' => Input::get('email')];
     $rules = ['email' => 'required|email'];
     $validator = Validator::make($cre, $rules);
     if ($validator->passes()) {
         include app_path() . '/includes/Mailchimp.php';
         $api_key = "caeff30696120d96d875bd3cfbc2b890-us10";
         $list_id = "80bbc474a1";
         // set up our mailchimp object, and list object
         $Mailchimp = new Mailchimp($api_key);
         $Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
         $email = Input::get('email');
         try {
             $subscriber = $Mailchimp_Lists->subscribe($list_id, array('email' => $email));
         } catch (Exception $e) {
             $response["success"] = false;
             $response["message"] = "can not add to list";
         }
         if (!empty($subscriber['leid'])) {
             $response["success"] = true;
             $response["message"] = "You have successfully subscribed to CorperLife";
         }
     } else {
         $response["success"] = false;
         $response["message"] = "Please fill a valid email";
     }
     return json_encode($response);
 }
コード例 #5
0
<?php

$api_key = "287b468abb599876d73131fc750d0baa-us9";
$list_id = "148b3facc9";
require 'Mailchimp.php';
$Mailchimp = new Mailchimp($api_key);
$Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
$subscriber = $Mailchimp_Lists->subscribe($list_id, array('email' => htmlentities($_POST['emailsuscripcion'])));
if (!empty($subscriber['leid'])) {
    echo "success";
} else {
    echo "fail";
}
コード例 #6
0
 $email = strip_tags($email);
 $phone = strip_tags($phone);
 $comp_name = strip_tags($comp_name);
 $website = strip_tags($website);
 $address = strip_tags($address);
 $address_2 = strip_tags($address_2);
 $city = strip_tags($city);
 $postal_code = strip_tags($postal_code);
 $country = strip_tags($country);
 $state = strip_tags($state);
 mysqli_query($db, "\r\n\t\t\t\t\t\tINSERT INTO {$dbinfo[pre]}members \r\n\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\tumem_id,\r\n\t\t\t\t\t\t\tf_name,\r\n\t\t\t\t\t\t\tl_name,\r\n\t\t\t\t\t\t\temail,\r\n\t\t\t\t\t\t\tpassword,\r\n\t\t\t\t\t\t\tphone,\r\n\t\t\t\t\t\t\tcomp_name,\r\n\t\t\t\t\t\t\twebsite,\r\n\t\t\t\t\t\t\tmembership,\r\n\t\t\t\t\t\t\tsignup_date,\r\n\t\t\t\t\t\t\tip_signup,\r\n\t\t\t\t\t\t\treferrer,\r\n\t\t\t\t\t\t\tstatus,\r\n\t\t\t\t\t\t\ttrialed_memberships,\r\n\t\t\t\t\t\t\tms_end_date,\r\n\t\t\t\t\t\t\tlanguage\r\n\t\t\t\t\t\t) \r\n\t\t\t\t\t\tVALUES \r\n\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t'{$umem_id}',\r\n\t\t\t\t\t\t\t'{$f_name}',\r\n\t\t\t\t\t\t\t'{$l_name}',\r\n\t\t\t\t\t\t\t'{$email}',\r\n\t\t\t\t\t\t\t'{$passwordEnc}',\r\n\t\t\t\t\t\t\t'{$phone}',\r\n\t\t\t\t\t\t\t'{$comp_name}',\r\n\t\t\t\t\t\t\t'{$website}',\r\n\t\t\t\t\t\t\t'{$membershipID}',\r\n\t\t\t\t\t\t\t'{$signupDate}',\r\n\t\t\t\t\t\t\t'{$ipsignup}',\r\n\t\t\t\t\t\t\t'{$_SESSION['initReferrerURL']}',\r\n\t\t\t\t\t\t\t'{$accountStatus}',\r\n\t\t\t\t\t\t\t'{$trialMembership}',\r\n\t\t\t\t\t\t\t'{$trialEndDate}',\r\n\t\t\t\t\t\t\t'{$selectedLanguage}'\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t");
 // Save member
 $saveID = mysqli_insert_id($db);
 $Mailchimp = new Mailchimp($mailchimp_api_key);
 $Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
 $Mailchimp_Lists->subscribe($mailchimp_list_id, array('email' => $email));
 mysqli_query($db, "\r\n\t\t\t\t\t\tINSERT INTO {$dbinfo[pre]}members_address  \r\n\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\tmember_id,\r\n\t\t\t\t\t\t\taddress,\r\n\t\t\t\t\t\t\taddress_2,\r\n\t\t\t\t\t\t\tcity,\r\n\t\t\t\t\t\t\tstate,\r\n\t\t\t\t\t\t\tpostal_code,\r\n\t\t\t\t\t\t\tcountry\r\n\t\t\t\t\t\t) \r\n\t\t\t\t\t\tVALUES \r\n\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t'{$saveID}',\r\n\t\t\t\t\t\t\t'{$address}',\r\n\t\t\t\t\t\t\t'{$address_2}',\r\n\t\t\t\t\t\t\t'{$city}',\r\n\t\t\t\t\t\t\t'{$state}',\r\n\t\t\t\t\t\t\t'{$postal_code}',\r\n\t\t\t\t\t\t\t'{$country}'\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t");
 // Save member address
 $signupGroups = explode(",", $config['settings']['signup_groups']);
 // Assign any signup groups
 if ($signupGroups) {
     foreach ($signupGroups as $key => $value) {
         mysqli_query($db, "INSERT INTO {$dbinfo[pre]}groupids (mgrarea,item_id,group_id) VALUES ('members','{$saveID}','{$value}')");
     }
 }
 //$_SESSION['testing']['step3'] = '3';
 try {
     $memberObj = new memberTools($saveID);
     $member = $memberObj->getMemberInfoFromDB($umem_id);
     // Get all the member info from the database
     $member['primaryAddress'] = $memberObj->getPrimaryAddress();
コード例 #7
0
ファイル: functions.php プロジェクト: ponderdj/grcential
function et_pb_submit_subscribe_form()
{
    if (!wp_verify_nonce($_POST['et_load_nonce'], 'et_load_nonce')) {
        die(json_encode(array('error' => __('Configuration error', 'Divi'))));
    }
    $service = sanitize_text_field($_POST['et_service']);
    $list_id = sanitize_text_field($_POST['et_list_id']);
    $email = array('email' => sanitize_email($_POST['et_email']));
    $firstname = sanitize_text_field($_POST['et_firstname']);
    if ('' === $firstname) {
        die(json_encode(array('error' => __('Please enter first name', 'Divi'))));
    }
    if (!is_email(sanitize_email($_POST['et_email']))) {
        die(json_encode(array('error' => __('Incorrect email', 'Divi'))));
    }
    if ('' == $list_id) {
        die(json_encode(array('error' => __('Configuration error: List is not defined', 'Divi'))));
    }
    $success_message = __('<h2 class="et_pb_subscribed">Subscribed - look for the confirmation email!</h2>', 'Divi');
    switch ($service) {
        case 'mailchimp':
            $lastname = sanitize_text_field($_POST['et_lastname']);
            if (!class_exists('Mailchimp')) {
                require_once get_template_directory() . '/includes/subscription/mailchimp/Mailchimp.php';
            }
            $mailchimp_api_key = et_get_option('divi_mailchimp_api_key');
            if ('' === $mailchimp_api_key) {
                die(json_encode(array('error' => __('Configuration error: api key is not defined', 'Divi'))));
            }
            try {
                $mailchimp = new Mailchimp($mailchimp_api_key);
                $mailchimp_lists = new Mailchimp_Lists($mailchimp);
                $merge_vars = array('FNAME' => $firstname, 'LNAME' => $lastname);
                $retval = $mailchimp_lists->subscribe($list_id, $email, $merge_vars);
                $result = json_encode(array('success' => $success_message));
            } catch (Exception $e) {
                if ($e == 'List_AlreadySubscribed') {
                    $error_code = $e->code;
                }
                if ($error_code = '214') {
                    $error_message = str_replace('Click here to update your profile.', '', $e->getMessage());
                    $result = json_encode(array('success' => $error_message));
                } else {
                    $result = json_encode(array('success' => $e->getMessage()));
                }
            }
            die($result);
            break;
        case 'aweber':
            if (!class_exists('AWeberAPI')) {
                require_once get_template_directory() . '/includes/subscription/aweber/aweber_api.php';
            }
            $account = et_pb_get_aweber_account();
            try {
                $list_url = "/accounts/{$account->id}/lists/{$list_id}";
                $list = $account->loadFromUrl($list_url);
                $new_subscriber = $list->subscribers->create(array('email' => $email, 'name' => $firstname));
                echo $success_message;
            } catch (Exception $exc) {
                die($exc);
            }
            break;
    }
    die;
}
コード例 #8
0
 function mailchimp_subscribe()
 {
     $ret = array('success' => false, 'message' => '');
     $email = isset($_POST['mailchimp_email']) ? trim($_POST['mailchimp_email']) : '';
     $nonce = isset($_POST['_wpnonce']) ? trim($_POST['_wpnonce']) : '';
     $mc_api_key = null;
     $mc_list_id = null;
     $error_message = '';
     $widget_id = isset($_POST['widget_id']) ? trim($_POST['widget_id']) : '';
     if ($widget_settings = $this->get_widget_settings($widget_id)) {
         $mc_api_key = isset($widget_settings['mailchimp_api_key']) ? $widget_settings['mailchimp_api_key'] : null;
         $mc_list_id = isset($widget_settings['mailchimp_list_id']) ? $widget_settings['mailchimp_list_id'] : null;
         $error_message = isset($widget_settings['error_message']) ? $widget_settings['error_message'] : '';
         $double_optin = !empty($widget_settings['mailchimp_double_optin']) ? true : false;
     }
     if ($email && $widget_settings && $mc_api_key != null && $mc_list_id != null && wp_verify_nonce($nonce, 'wp-subscribe-mailchimp')) {
         try {
             $list = new Mailchimp_Lists(new Mailchimp($mc_api_key));
             $resp = $list->subscribe($mc_list_id, array('email' => $email), null, 'html', (bool) $double_optin, true);
             if ($resp) {
                 $ret['success'] = true;
                 $ret['message'] = $widget_settings['success_message'];
             } else {
                 $ret['message'] = $widget_settings['error_message'];
             }
         } catch (Exception $ex) {
             $ret['message'] = $widget_settings['error_message'];
         }
     } else {
         $ret['message'] = $error_message;
     }
     return $ret;
 }
コード例 #9
0
ファイル: check.php プロジェクト: jyotiprava/45serverbackup
<?php

$api_key = "b730af8a90fd17c7ff8dbfebdd896745-us11";
$list_id = "32c9514d22";
require 'Mailchimp.php';
$Mailchimp = new Mailchimp($api_key);
$Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
$subscriber = $Mailchimp_Lists->subscribe($list_id, array('email' => htmlentities($_POST['email']), 'merge_vars' => array('FNAME' => 'Davy', 'LNAME' => 'Jones')));
if (!empty($subscriber['leid'])) {
    echo "success";
} else {
    echo "fail";
}
コード例 #10
0
 static function subscribeOrUnsubsribeToMailchimpList($groupDetails, $contactID, $action)
 {
     CRM_Mailchimp_Utils::checkDebug('Start-CRM_Mailchimp_Utils subscribeOrUnsubsribeToMailchimpList $groupDetails', $groupDetails);
     CRM_Mailchimp_Utils::checkDebug('Start-CRM_Mailchimp_Utils subscribeOrUnsubsribeToMailchimpList $contactID', $contactID);
     CRM_Mailchimp_Utils::checkDebug('Start-CRM_Mailchimp_Utils subscribeOrUnsubsribeToMailchimpList $action', $action);
     if (empty($groupDetails) || empty($contactID) || empty($action)) {
         return NULL;
     }
     // We need to get contact's email before subscribing in Mailchimp
     $contactParams = array('version' => 3, 'id' => $contactID);
     $contactResult = civicrm_api('Contact', 'get', $contactParams);
     // This is the primary email address of the contact
     $email = $contactResult['values'][$contactID]['email'];
     if (empty($email)) {
         // Its possible to have contacts in CiviCRM without email address
         // and add to group offline
         return;
     }
     // Optional merges for the email (FNAME, LNAME)
     $merge = array('FNAME' => $contactResult['values'][$contactID]['first_name'], 'LNAME' => $contactResult['values'][$contactID]['last_name']);
     $listID = $groupDetails['list_id'];
     $grouping_id = $groupDetails['grouping_id'];
     $group_id = $groupDetails['group_id'];
     if (!empty($grouping_id) and !empty($group_id)) {
         $merge_groups[$grouping_id] = array('id' => $groupDetails['grouping_id'], 'groups' => array());
         $merge_groups[$grouping_id]['groups'][] = CRM_Mailchimp_Utils::getMCGroupName($listID, $grouping_id, $group_id);
         // remove the significant array indexes, in case Mailchimp cares.
         $merge['groupings'] = array_values($merge_groups);
     }
     // Send Mailchimp Lists API Call.
     $list = new Mailchimp_Lists(CRM_Mailchimp_Utils::mailchimp());
     switch ($action) {
         case "subscribe":
             // http://apidocs.mailchimp.com/api/2.0/lists/subscribe.php
             try {
                 $result = $list->subscribe($listID, array('email' => $email), $merge, $email_type = 'html', $double_optin = FALSE, $update_existing = FALSE, $replace_interests = TRUE, $send_welcome = FALSE);
             } catch (Exception $e) {
                 // Don't display if the error is that we're already subscribed.
                 $message = $e->getMessage();
                 if ($message !== $email . ' is already subscribed to the list.') {
                     CRM_Core_Session::setStatus($message);
                 }
             }
             break;
         case "unsubscribe":
             // https://apidocs.mailchimp.com/api/2.0/lists/unsubscribe.php
             try {
                 $result = $list->unsubscribe($listID, array('email' => $email), $delete_member = false, $send_goodbye = false, $send_notify = false);
             } catch (Exception $e) {
                 CRM_Core_Session::setStatus($e->getMessage());
             }
             break;
     }
     CRM_Mailchimp_Utils::checkDebug('End-CRM_Mailchimp_Utils subscribeOrUnsubsribeToMailchimpList $groupDetails', $groupDetails);
     CRM_Mailchimp_Utils::checkDebug('End-CRM_Mailchimp_Utils subscribeOrUnsubsribeToMailchimpList $contactID', $contactID);
     CRM_Mailchimp_Utils::checkDebug('End-CRM_Mailchimp_Utils subscribeOrUnsubsribeToMailchimpList $action', $action);
 }
コード例 #11
0
 public function createUserNewsletter($email)
 {
     try {
         $sql = "INSERT INTO " . $this->_TABLES['public']['UserNewsletter'] . " (email) VALUES (:email)";
         $req = $this->bdd->prepare($sql);
         $req->bindValue('email', $email, PDO::PARAM_STR);
         $req->execute();
     } catch (PDOException $e) {
         error_log($sql);
         error_log($e->getMessage());
         die;
     }
     $Mailchimp = new Mailchimp($this->config->mailchimp->config->api_key);
     $Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
     $subscriber = $Mailchimp_Lists->subscribe($this->config->mailchimp->list->lid, array('email' => $email));
     if (!empty($subscriber['leid'])) {
         error_log("Subscribe Mailchimp success");
     } else {
         error_log("Subscribe Mailchimp fail");
     }
 }
コード例 #12
0
ファイル: check.php プロジェクト: xXNoceboXx/WUS
<?php

$api_key = "e5d1d4797a2c82813cc7cf1b1ca8e6b3-us13";
$list_id = "5148a8524e";
require 'MailChimp.php';
$Mailchimp = new Mailchimp($api_key);
$Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
$merge_vars = array('FNAME' => 'Zelel', 'LNAME' => 'Quentin');
$subscriber = $Mailchimp_Lists->subscribe($list_id, array('email' => htmlentities($_POST['email'])), $merge_vars, 'html', true, true, true, false);
if (!empty($subscriber['leid'])) {
    echo "success";
} else {
    echo "fail";
}
コード例 #13
0
 /**
  * Batch update Mailchimp with new contacts that need to be subscribed, or have changed data.
  *
  * This also does the clean-up tasks of removing the temporary tables.
  */
 static function syncPushAdd(CRM_Queue_TaskContext $ctx, $listID)
 {
     CRM_Mailchimp_Utils::checkDebug('Start-CRM_Mailchimp_Form_Sync syncPushAdd $ctx= ', $ctx);
     CRM_Mailchimp_Utils::checkDebug('Start-CRM_Mailchimp_Form_Sync syncPushAdd $listID= ', $listID);
     // @todo take the remaining details from tmp_mailchimp_push_c
     // and construct a batchUpdate (do they need to be batched into 1000s? I can't recal).
     $dao = CRM_Core_DAO::executeQuery("SELECT * FROM tmp_mailchimp_push_c;");
     $stats = array();
     // Loop the $dao object to make a list of emails to subscribe/update
     $batch = array();
     while ($dao->fetch()) {
         $merge = array('FNAME' => $dao->first_name, 'LNAME' => $dao->last_name);
         // set the groupings.
         $groupings = unserialize($dao->groupings);
         // this is a array(groupingid=>array(groupid=>bool membership))
         $merge_groups = array();
         foreach ($groupings as $grouping_id => $groups) {
             // CRM_Mailchimp_Utils::checkDebug('get groups $groups= ', $groups);
             $merge_groups[$grouping_id] = array('id' => $grouping_id, 'groups' => array());
             CRM_Mailchimp_Utils::checkDebug('End-CRM_Mailchimp_Form_Sync $merge_groups[$grouping_id]', $merge_groups[$grouping_id]);
             foreach ($groups as $group_id => $is_member) {
                 if ($is_member) {
                     $merge_groups[$grouping_id]['groups'][] = CRM_Mailchimp_Utils::getMCGroupName($listID, $grouping_id, $group_id);
                 }
             }
         }
         // remove the significant array indexes, in case Mailchimp cares.
         $merge['groupings'] = array_values($merge_groups);
         $batch[$dao->email] = array('email' => array('email' => $dao->email), 'email_type' => 'html', 'merge_vars' => $merge);
         $stats[$listID]['added']++;
     }
     if (!$batch) {
         // Nothing to do
         return CRM_Queue_Task::TASK_SUCCESS;
     }
     // Log the batch subscribe details
     CRM_Core_Error::debug_var('Mailchimp  syncPushAdd batchUnsubscribe $listID= ', $listID);
     CRM_Core_Error::debug_var('Mailchimp syncPushAdd batchSubscribe $batch= ', $batch);
     // Send Mailchimp Lists API Call.
     // http://apidocs.mailchimp.com/api/2.0/lists/batch-subscribe.php
     $list = new Mailchimp_Lists(CRM_Mailchimp_Utils::mailchimp());
     $batchs = array_chunk($batch, 50, true);
     $batchResult = array();
     $result = array('errors' => array());
     foreach ($batchs as $id => $batch) {
         $batchResult[$id] = $list->batchSubscribe($listID, $batch, $double_optin = FALSE, $update = TRUE, $replace_interests = TRUE);
         $result['error_count'] += $batchResult[$id]['error_count'];
         // @TODO: updating stats for errors, create sql error "Data too long for column 'value'" (for long array)
         if ($batchResult[$id]['errors']) {
             foreach ($batchResult[$id]['errors'] as $errorDetails) {
                 // Resubscribe if email address is reported as unsubscribed
                 // they want to resubscribe.
                 if ($errorDetails['code'] == 212) {
                     $unsubscribedEmail = $errorDetails['email']['email'];
                     $list->subscribe($listID, $batch[$unsubscribedEmail]['email'], $batch[$unsubscribedEmail]['merge_vars'], $batch[$unsubscribedEmail]['email_type'], FALSE, TRUE, FALSE, FALSE);
                     $result['error_count'] -= 1;
                 } else {
                     $result['errors'][] = $errorDetails;
                 }
             }
         }
         CRM_Mailchimp_Utils::checkDebug('CRM_Mailchimp_Form_Sync syncPushAdd $result= ', $batchResult[$id]);
     }
     // debug: file_put_contents(DRUPAL_ROOT . '/logs/' . date('Y-m-d-His') . '-MC-push.log', print_r($result,1));
     $get_GroupId = CRM_Mailchimp_Utils::getGroupsToSync(array(), $listID);
     CRM_Mailchimp_Utils::checkDebug('$get_GroupId= ', $get_GroupId);
     // @todo check result (keys: error_count, add_count, update_count)
     $stats[$listID]['group_id'] = array_keys($get_GroupId);
     $stats[$listID]['error_count'] = $result['error_count'];
     $stats[$listID]['error_details'] = $result['errors'];
     static::updatePushStats($stats);
     // Finally, finish up by removing the two temporary tables
     CRM_Core_DAO::executeQuery("DROP TABLE tmp_mailchimp_push_m;");
     CRM_Core_DAO::executeQuery("DROP TABLE tmp_mailchimp_push_c;");
     CRM_Mailchimp_Utils::checkDebug('get groupsss $grouping_id= ', $grouping_id);
     CRM_Mailchimp_Utils::checkDebug('get groupssss $group_id= ', $group_id);
     CRM_Mailchimp_Utils::checkDebug('End-CRM_Mailchimp_Form_Sync syncPushAdd $result= ', $result);
     CRM_Mailchimp_Utils::checkDebug('End-CRM_Mailchimp_Form_Sync syncPushAdd $ctx= ', $ctx);
     CRM_Mailchimp_Utils::checkDebug('End-CRM_Mailchimp_Form_Sync syncPushAdd $listID= ', $listID);
     return CRM_Queue_Task::TASK_SUCCESS;
 }
コード例 #14
0
ファイル: Mailchimp.php プロジェクト: arrezende/Wgoldfinger
                }
            }
        }
        return false;
    }
    public function castError($result)
    {
        if ($result['status'] !== 'error' || !$result['name']) {
            throw new Mailchimp_Error('We received an unexpected error: ' . json_encode($result));
        }
        $class = isset(self::$error_map[$result['name']]) ? self::$error_map[$result['name']] : 'Mailchimp_Error';
        return new $class($result['error'], $result['code']);
    }
    public function log($msg)
    {
        if ($this->debug) {
            error_log($msg);
        }
    }
}
$form = $_POST;
if (!empty($form['email']) && !empty($form['city'])) {
    $mailchimp = new Mailchimp(MAILCHIMP_API_KEY);
    $lists = new Mailchimp_Lists($mailchimp);
    $email = ['email' => $form['email']];
    $merge = [MAILCHIMP_CITY_TAG => $form['city']];
    $lists->subscribe(MAILCHIMP_LIST_ID, $email, $merge, 'html', false);
    echo 'Newsletter assinada!';
} else {
    echo 'Por favor preencha os campos. <a href="newsletter.php">Voltar</a>';
}
コード例 #15
0
ファイル: index.php プロジェクト: markcameron/mum
function sendMailchimp($formData, $config)
{
    $validated = GUMP::is_valid($formData, array('newsletter-name' => 'required', 'newsletter-email' => 'required|valid_email'));
    if ($validated === true) {
        $Mailchimp = new Mailchimp($config['mailchimp_api_key']);
        $Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
        $email = $formData['newsletter-email'];
        //replace with a test email
        $name = $formData['newsletter-name'];
        //replace with a test email
        try {
            $subscriber = $Mailchimp_Lists->subscribe($config['mailchimp_list_id'], array('email' => $email, 'name' => $name));
            //pass the list id and email to mailchimp
        } catch (Exception $e) {
            $result = array('result' => 'error', 'msg' => $e->getMessage());
            return json_encode($result);
        }
        // check that we've succeded
        if (!empty($subscriber['leid'])) {
            $result = array('result' => 'success', 'msg' => array('Success! Thank you for signing up to our newsletter.'));
            return json_encode($result);
        }
    } else {
        $result = array('result' => 'error', 'msg' => $validated);
        return json_encode($result);
    }
}
コード例 #16
0
ファイル: functions.php プロジェクト: AllFamous/camella
function userSubscribe()
{
    $formDetails = $_REQUEST['formDetails'];
    $userEmail = $formDetails['subscribeEmail'];
    $api_key = '2b9d521c86de7f2ae79618eaffd95947-us10';
    $list_id = 'cd7b3dcefe';
    $Mailchimp = new Mailchimp($api_key);
    $Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
    $subscriber = $Mailchimp_Lists->subscribe($list_id, array('email' => htmlentities($userEmail)));
    if (!empty($subscriber['leid'])) {
        $result = 1;
    } else {
        $result = 0;
    }
    $result = json_encode($result, TRUE);
    echo $result;
    die;
}
コード例 #17
0
<?php

$api_key = "782b1ee199207e065daa9dcb0a2ce38e-us11";
$list_id = "b0d209edc3";
require './Mailchimp.php';
$Mailchimp = new Mailchimp($api_key);
$Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);
$subscriber = $Mailchimp_Lists->subscribe($list_id, array('email' => $_POST['email']));
if (!empty($subscriber['leid'])) {
    echo "success";
} else {
    echo "fail";
}