Пример #1
0
 /**
  * Deletes all new user invitations corresponding to a group.
  *
  * @param GroupDao $group
  * @throws Zend_Exception
  */
 public function deleteByGroup($group)
 {
     if (!$group instanceof GroupDao) {
         throw new Zend_Exception('Must pass a group dao');
     }
     Zend_Registry::get('dbAdapter')->delete($this->_name, 'group_id = ' . $group->getKey());
 }
Пример #2
0
 /**
  * Deletes all folderpolicygroup rows associated with the passed in group.
  *
  * @param GroupDao $group
  * @throws Zend_Exception
  */
 public function deleteGroupPolicies($group)
 {
     if (!$group instanceof GroupDao) {
         throw new Zend_Exception('Should be a group.');
     }
     $clause = 'group_id = ' . $group->getKey();
     Zend_Registry::get('dbAdapter')->delete($this->_name, $clause);
 }
 /**
  * Create an invitation record for the user into the given group.
  *
  * @param GroupDao $groupDao The group to invite the user to
  * @param UserDao $userDao The user performing the invitation (typically the session user)
  * @param UserDao $invitedUserDao The user being invited to the group
  * @return false|CommunityInvitationDao
  * @throws Zend_Exception
  */
 public function createInvitation($groupDao, $userDao, $invitedUserDao)
 {
     $communityDao = $groupDao->getCommunity();
     $invitations = $invitedUserDao->getInvitations();
     foreach ($invitations as $invitation) {
         if ($invitation->getCommunityId() == $communityDao->getKey()) {
             return false;
         }
     }
     /** @var CommunityInvitationDao $invitationDao */
     $invitationDao = MidasLoader::newDao('CommunityInvitationDao');
     $invitationDao->setCommunityId($communityDao->getKey());
     $invitationDao->setGroupId($groupDao->getKey());
     $invitationDao->setUserId($invitedUserDao->getKey());
     $this->save($invitationDao);
     /** @var FeedModel $feedModel */
     $feedModel = MidasLoader::loadModel('Feed');
     /** @var FeedpolicyuserModel $feedpolicyuserModel */
     $feedpolicyuserModel = MidasLoader::loadModel('Feedpolicyuser');
     $feed = $feedModel->createFeed($userDao, MIDAS_FEED_COMMUNITY_INVITATION, $invitationDao, $communityDao);
     $feedpolicyuserModel->createPolicy($invitedUserDao, $feed, MIDAS_POLICY_ADMIN);
     return $invitationDao;
 }