示例#1
0
 public function actionSynchronize()
 {
     set_time_limit(7200);
     $idNameGroup = array();
     $criteria = new CDbCriteria();
     $mSubG = SubscriberGroup::model()->findAll($criteria);
     if (count($mSubG) > 0) {
         foreach ($mSubG as $i) {
             $idNameGroup[$i->id] = $i->name;
         }
     }
     $criteria = new CDbCriteria();
     $criteria->addCondition('subscriber_group_id = 1 OR subscriber_group_id = 2');
     $mSubscriber = Subscriber::model()->findAll($criteria);
     //var_dump($mSubscriber);
     $test = array();
     if (count($mSubscriber) > 0) {
         Yii::import('ext.MailChimp.MailChimp', true);
         foreach ($mSubscriber as $item) {
             $mailChimp = new MailChimp();
             //                    $mailChimp->removeSubscriber('*****@*****.**');
             //                    die;
             $sGroupName = Yii::app()->params['mailchimp_title_groups'];
             $sGroup = strtolower($idNameGroup[$item->subscriber_group_id]);
             $merge_vars = array('GROUPINGS' => array(array('name' => $sGroupName, 'groups' => $sGroup)));
             if ($item->status == 1) {
                 //                        echo '<pre>';
                 //echo print_r($merge_vars);
                 //echo '</pre>';
                 //echo $item->email;
                 //die();
                 $test[] = $mailChimp->addSubscriber($item->email, $merge_vars);
             } else {
                 $mailChimp->removeSubscriber($item->email);
             }
         }
     }
     Yii::app()->user->setFlash('mailchimp', "Synchronize Mailling list successfully!");
     $this->redirect(Yii::app()->createAbsoluteUrl("admin/setting/mailchimp"));
 }
示例#2
0
 public function mailchimp()
 {
     set_time_limit(7200);
     $idNameGroup = array();
     $criteria = new CDbCriteria();
     //            $criteria->compare('t.status',1);
     $mSubG = SubscriberGroup::model()->findAll($criteria);
     if (count($mSubG) > 0) {
         foreach ($mSubG as $i) {
             $idNameGroup[$i->id] = $i->name;
         }
     }
     $criteria = new CDbCriteria();
     $mSubscriber = Subscriber::model()->findAll($criteria);
     $test = array();
     if (count($mSubscriber) > 0) {
         Yii::import('ext.MailChimp.MailChimp', true);
         foreach ($mSubscriber as $item) {
             $mailChimp = new MailChimp();
             //                    $mailChimp->removeSubscriber('*****@*****.**');
             //                    die;
             $sGroupName = Yii::app()->params['mailchimp_title_groups'];
             $sGroup = strtolower($idNameGroup[$item->subscriber_group_id]);
             $merge_vars = array('GROUPINGS' => array(array('name' => $sGroupName, 'groups' => $sGroup)));
             if ($item->status == 1) {
                 $test[] = $mailChimp->addSubscriber($item->email, $merge_vars);
             } else {
                 $mailChimp->removeSubscriber($item->email);
             }
         }
     }
 }