public function import_subscriber($email, $fname, $lname)
 {
     if (!$email) {
         return false;
     }
     $oSbsSelection = new umiSelection();
     $oSbsSelection->setObjectTypeFilter();
     $iSbsHierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "subscriber")->getId();
     $iSbsTypeId = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($iSbsHierarchyTypeId);
     $oSbsType = umiObjectTypesCollection::getInstance()->getType($iSbsTypeId);
     $oSbsSelection->addObjectType($iSbsTypeId);
     $oSbsSelection->setNamesFilter();
     $oSbsSelection->addNameFilterEquals($email);
     $arrSbsSelResults = umiSelectionsParser::runSelection($oSbsSelection);
     if (sizeof($arrSbsSelResults)) {
         list($object_id) = $arrSbsSelResults;
     } else {
         $object_id = umiObjectsCollection::getInstance()->addObject($email, $iSbsTypeId);
     }
     if ($oSubscriber = umiObjectsCollection::getInstance()->getObject($object_id)) {
         $oSubscriber->setName($email);
         $oSubscriber->setValue('fname', $fname);
         $oSubscriber->setValue('lname', $lname);
         $oCurrDate = new umiDate(time());
         $oSubscriber->setValue('subscribe_date', $oCurrDate);
         $oSubscriber->setValue('subscriber_dispatches', $this->getAllDispatches());
         $oSubscriber->commit();
     } else {
         return false;
     }
     return $object_id;
 }
Exemplo n.º 2
0
 protected function getSubscriberByMail($sEmail)
 {
     $oSubscriber = null;
     $iSbsHierarchyTypeId = umiHierarchyTypesCollection::getInstance()->getTypeByName("dispatches", "subscriber")->getId();
     $iSbsTypeId = umiObjectTypesCollection::getInstance()->getTypeByHierarchyTypeId($iSbsHierarchyTypeId);
     $oSbsType = umiObjectTypesCollection::getInstance()->getType($iSbsTypeId);
     $oSbsSelection = new umiSelection();
     $oSbsSelection->setObjectTypeFilter();
     $oSbsSelection->addObjectType($iSbsTypeId);
     $oSbsSelection->setNamesFilter();
     $oSbsSelection->addNameFilterEquals($sEmail);
     $arrSbsSelResults = umiSelectionsParser::runSelection($oSbsSelection);
     if (is_array($arrSbsSelResults) && count($arrSbsSelResults)) {
         $iSbsId = $arrSbsSelResults[0];
         $oSubscriber = umiObjectsCollection::getInstance()->getObject($iSbsId);
     }
     return $oSubscriber;
 }