/** * @see 0011504: deactivated user is removed from group when group is saved */ public function testBlockedUserGroupSave() { // deactivate user $userArray = $this->testSaveAccount(); $userArray['lastLoginFailure'] = Tinebase_DateTime::now()->toString(); $userArray['loginFailures'] = 10; // save group // TODO generalize $group = Tinebase_Group::getInstance()->getGroupByName('tine20phpunit'); $groupArray = $this->_json->getGroup($group->getId()); $this->assertEquals(1, $groupArray['groupMembers']['totalcount']); $groupArray['container_id'] = $groupArray['container_id']['id']; $savedGroup = $this->_json->saveGroup($groupArray, array($userArray['accountId'])); // check group memberships $this->assertEquals(1, $savedGroup['groupMembers']['totalcount']); }
/** * creates the groups if not created already */ protected function _createGroups() { $fe = new Admin_Frontend_Json(); $internalAddressbook = Tinebase_Container::getInstance()->getContainerByName('Addressbook', 'Internal Contacts', Tinebase_Model_Container::TYPE_SHARED); foreach ($this->_groups as $groupArray) { $groupArray['container_id'] = $internalAddressbook->getId(); $members = array(); foreach ($groupArray['groupMembers'] as $member) { $members[] = $this->_personas[$member]->getId(); } try { $this->_groups[$groupArray['groupData']['name']] = $fe->saveGroup($groupArray['groupData'], $members); } catch (Exception $e) { Tinebase_Exception::log($e); echo 'Group "' . $groupArray['groupData']['name'] . '" already exists. Skipping...' . PHP_EOL; $gr = Tinebase_Group::getInstance()->getGroupByName($groupArray['groupData']['name']); $this->_groups[$groupArray['groupData']['name']] = $fe->getGroup($gr->getId()); } } }