/** * @param array $users * @param string $mode * @return \Orm\Entity\OptIn */ public function create(array $users, $mode) { $entityManager = $this->getEntityManager(); $entityManager->beginTransaction(); $optins = array(); foreach ($users as $user) { $optin = new OptIn(); $optin->setUser($user); $optin->setUserid($user->getId()); $optin->setTimestamp(new \DateTime()); $optin->setMode($mode); $optin->setCode(OptinCode::generate()); try { $entityManager->persist($optin); $entityManager->flush(); } catch (Exception $e) { $entityManager->rollback(); throw new CmsException(1004, __METHOD__, __LINE__, null, $e); } $optins[] = $optin; } $entityManager->commit(); return $optins; }
/** * {@inheritDoc} */ public function setUserid($userid) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'setUserid', array($userid)); return parent::setUserid($userid); }