Exemplo n.º 1
0
 /**
  * @param  \Secretary\Entity\Key  $key
  * @param  \Secretary\Entity\User $user
  * @return \Secretary\Entity\Key
  */
 public function saveKey(KeyEntity $key, UserEntity $user, $pubKey)
 {
     $key->setPubKey($pubKey);
     $key->setUserId($user->getId());
     $key->setUser($user);
     $this->em->persist($key);
     $this->em->flush();
     return $key;
 }
Exemplo n.º 2
0
 /**
  * @param  Entity\User $user
  * @param  string     $groupname
  * @return Entity\Group
  */
 public function addUserGroup(Entity\User $user, $groupname)
 {
     $groupRecord = new Entity\Group();
     $groupRecord->setName($groupname)->setOwner($user->getId());
     $user->addGroup($groupRecord);
     $this->em->persist($user);
     $this->em->flush();
     return $groupRecord;
 }
 /**
  * {@inheritDoc}
  */
 public function getId()
 {
     if ($this->__isInitialized__ === false) {
         return (int) parent::getId();
     }
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'getId', array());
     return parent::getId();
 }
Exemplo n.º 4
0
 /**
  * @param array $users
  * @param Entity\Note $note
  * @param Entity\User $owner
  * @param array $encryptData
  * @return Entity\Note
  */
 public function saveUser2NoteRelations(array $users, Entity\Note $note, Entity\User $owner, array $encryptData)
 {
     $i = 0;
     // Save User2Note entries
     /** @var Entity\User $user */
     foreach ($users as $user) {
         $ownerCheck = false;
         if ($owner->getId() == $user->getId()) {
             $ownerCheck = true;
         }
         $user2Note = new Entity\User2Note();
         $user2Note->setUser($user)->setUserId($user->getId())->setNote($note)->setNoteId($note->getId())->setEKey($encryptData['ekeys'][$i])->setOwner($ownerCheck)->setReadPermission(true)->setWritePermission($ownerCheck);
         $note->addUser2Note($user2Note);
         $this->em->persist($note);
         $i++;
     }
     $this->em->flush();
     return $note;
 }
Exemplo n.º 5
0
 /**
  * @param  Entity\Note $note
  * @param  array $users
  * @param  Entity\User $owner
  * @param  string $subject
  * @param  string $title
  * @return void
  */
 protected function sendNoteGroupMail(Entity\Note $note, array $users, Entity\User $owner, $subject, $title)
 {
     /** @var Entity\User $user */
     foreach ($users as $user) {
         if ($user->getId() != $owner->getId() && true === $user->getNotifications()) {
             $this->translator->setLocale($user->getLanguage());
             $subject = $this->translator->translate($subject);
             $content = new ViewModel();
             $content->setTemplate('mail/note.phtml')->setVariable('title', $title)->setVariable('note', $note)->setVariable('host', $this->host);
             $message = $this->SxMail->compose($content);
             $message->addTo($user->getEmail());
             $message->addFrom($this->defaultFrom);
             $message->setSubject($subject);
             $this->SxMail->send($message);
         }
     }
     // @todo this will only work, as long owner is the only one with edit permissions
     $this->translator->setLocale($owner->getLanguage());
     return;
 }