예제 #1
0
 /**
  * Creates a new campaign and send it immediately.
  *
  * @since	3.7
  * @access	public
  */
 public function notify($emailTitle, $emailData, &$blog)
 {
     JFactory::getLanguage()->load('com_easyblog', JPATH_ROOT);
     $config = EasyBlogHelper::getConfig();
     if (!function_exists('curl_init')) {
         echo JText::_('COM_EASYBLOG_CURL_DOES_NOT_EXIST');
     }
     if (!$config->get('subscription_mailchimp')) {
         return;
     }
     $listId = $config->get('subscription_mailchimp_listid');
     if (!$listId) {
         return;
     }
     require_once EBLOG_CLASSES . '/MCAPI.class.php';
     $api = new MCAPI($this->key);
     $type = 'regular';
     $jConfig = EasyBlogHelper::getJConfig();
     $defaultEmailFrom = EasyBlogHelper::getJoomlaVersion() >= '1.6' ? $jConfig->get('mailfrom') : $jConfig->get('mailfrom');
     $defaultFromName = EasyBlogHelper::getJoomlaVersion() >= '1.6' ? $jConfig->get('fromname') : $jConfig->get('fromname');
     $fromEmail = $config->get('mailchimp_from_email', $defaultEmailFrom);
     $fromName = $config->get('mailchimp_from_name', $defaultFromName);
     $opts = array();
     $opts['list_id'] = $listId;
     $opts['from_email'] = $fromEmail;
     $opts['from_name'] = $fromName;
     $opts['subject'] = $emailTitle;
     $opts['tracking'] = array('opens' => true, 'html_clicks' => true, 'text_clicks' => false);
     $opts['authenticate'] = true;
     $opts['title'] = $blog->title;
     $content = array('html' => self::getTemplateContents('email.blog.new', $emailData, 'html'), 'text' => self::getTemplateContents('email.blog.new', $emailData, 'text'));
     $cid = $api->campaignCreate($type, $opts, $content);
     // Send this now!
     if (!$api->errorCode) {
         $api->campaignSendNow($cid);
     }
 }
예제 #2
0
$opts['tracking'] = array('opens' => true, 'html_clicks' => true, 'text_clicks' => false);
$opts['authenticate'] = true;
$opts['analytics'] = array('google' => 'my_google_analytics_key');
$opts['title'] = 'Eur 5,- Rabatt MyGassi (Aktion)!';
$message = 'Herzlichen Glückwunsch zu Ihrem persönlichen Eur 5,- Aktions-Rabatt-Coupon, einzulösen mit dem Gutschein "' . $code . '" bei Ihrem nächsten Einkauf im MyGassi Shop! ';
$content = array('html' => $message, 'text' => $message);
/** OR we could use this:
$content = array('html_main'=>'some pretty html content',
		 'html_sidecolumn' => 'this goes in a side column',
		 'html_header' => 'this gets placed in the header',
		 'html_footer' => 'the footer with an *|UNSUB|* message', 
		 'text' => 'text content text content *|UNSUB|*'
		);
$opts['template_id'] = "1";
**/
$campaignId = $api->campaignCreate($type, $opts, $content);
if ($api->errorCode) {
    echo "Unable to Create New Campaign!";
    echo "\n\tCode=" . $api->errorCode;
    echo "\n\tMsg=" . $api->errorMessage . "\n";
} else {
    echo "New Campaign ID:" . $campaignId . "\n";
}
// on could do this;
// it is probably a good idea
// to click on that "send" button
// in the  mailchimp panel
$retval = $api->campaignSendNow($campaignId);
if ($api->errorCode) {
    echo "Unable to Send Campaign!";
    echo "\n\tCode=" . $api->errorCode;
예제 #3
0
This Example shows how to create a basic campaign via the MCAPI class.
**/
require_once 'inc/MCAPI.class.php';
$api = new MCAPI($apikey);
$type = 'regular';
$opts['list_id'] = 'f9ee6d8616';
$opts['subject'] = 'Test Newsletter Subject';
$opts['from_email'] = '*****@*****.**';
$opts['from_name'] = 'ACME, Inc.';
$opts['tracking'] = array('opens' => true, 'html_clicks' => true, 'text_clicks' => false);
$opts['authenticate'] = true;
$opts['analytics'] = array('google' => 'my_google_analytics_key');
$opts['title'] = 'Test Newsletter Title';
$content = array('html' => 'some pretty html content *|UNSUB|* message', 'text' => 'text text text *|UNSUB|*');
/** OR we could use this:
$content = array('html_main'=>'some pretty html content',
		 'html_sidecolumn' => 'this goes in a side column',
		 'html_header' => 'this gets placed in the header',
		 'html_footer' => 'the footer with an *|UNSUB|* message', 
		 'text' => 'text content text content *|UNSUB|*'
		);
$opts['template_id'] = "1";
**/
$retval = $api->campaignCreate($type, $opts, $content);
if ($api->errorCode) {
    echo "Unable to Create New Campaign!";
    echo "\n\tCode=" . $api->errorCode;
    echo "\n\tMsg=" . $api->errorMessage . "\n";
} else {
    echo "New Campaign ID:" . $retval . "\n";
}
예제 #4
0
 public function send_test()
 {
     $host = $this->host;
     $api_key = $this->get_setting('api_key');
     $html = $this->get_file("{$host}?lang=en&production");
     $campaign_type = $this->get_setting('type');
     $conditions = $this->settings['test_matrix'];
     $opts = $this->get_setting('options');
     $title = $this->get_setting('campaign_name_human_readable');
     $edm_checker = strtoupper($this->get_setting('edm_checker'));
     $opts['analytics'] = array('google' => '');
     $opts['list_id'] = $this->get_setting('test_list');
     $opts['title'] = $title . ' TEST';
     $opts['subject'] = "[TEST - REPORT ERRORS TO {$edm_checker}] " . $this->extract_html_subject($html);
     $opts['authenticate'] = true;
     $segment_opts = array('match' => 'all', 'conditions' => $conditions);
     $api = new MCAPI($api_key);
     $campaign_id = $api->campaignCreate($campaign_type, $opts, array('html' => $html), $segment_opts);
     if ($api->errorCode) {
         $this->send_json(array('fail' => $api->errorMessage));
     } else {
         $this->set_cache($campaign_id);
         $this->send_json(array('success' => $campaign_id));
     }
     exit;
 }