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; }
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; }