<?php // Init owncloud require_once '../../lib/base.php'; OC_JSON::checkAdminUser(); OCP\JSON::callCheck(); $username = $_POST["username"]; $group = OC_Util::sanitizeHTML($_POST["group"]); // Toggle group if (OC_SubAdmin::isSubAdminofGroup($username, $group)) { OC_SubAdmin::deleteSubAdmin($username, $group); } else { OC_SubAdmin::createSubAdmin($username, $group); } OC_JSON::success();
public function testRemoveSubAdmin() { $user1 = $this->generateUsers(); $user2 = $this->generateUsers(); self::loginAsUser($user1); \OC_Group::addToGroup($user1, 'admin'); $group1 = $this->getUniqueID(); \OC_Group::createGroup($group1); \OC_SubAdmin::createSubAdmin($user2, $group1); $result = \OCA\provisioning_api\Users::removeSubAdmin(array('userid' => $user2, '_delete' => array('groupid' => $group1))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertTrue($result->succeeded()); $this->assertTrue(!\OC_SubAdmin::isSubAdminofGroup($user2, $group1)); \OC_Group::deleteGroup($group1); $user1 = $this->generateUsers(); self::loginAsUser($user1); \OC_Group::addToGroup($user1, 'admin'); $result = \OCA\provisioning_api\Users::removeSubAdmin(array('userid' => $this->getUniqueID(), '_delete' => array('groupid' => $group1))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertEquals(101, $result->getStatusCode()); $this->assertFalse($result->succeeded()); $this->resetParams(); $user1 = $this->generateUsers(); $user2 = $this->generateUsers(); self::loginAsUser($user1); \OC_Group::addToGroup($user1, 'admin'); $group1 = $this->getUniqueID(); \OC_Group::createGroup($group1); $_POST['groupid'] = $group1; $result = \OCA\provisioning_api\Users::removeSubAdmin(array('userid' => $user2, '_delete' => array('groupid' => $group1))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertFalse($result->succeeded()); $this->assertEquals(102, $result->getStatusCode()); \OC_Group::deleteGroup($group1); }
public function testRemoveSubAdmin() { $user1 = $this->generateUsers(); $user2 = $this->generateUsers(); $this->userSession->setUser($user1); $this->groupManager->get('admin')->addUser($user1); $group1 = $this->getUniqueID(); $group1 = $this->groupManager->createGroup($group1); \OC_SubAdmin::createSubAdmin($user2->getUID(), $group1->getGID()); $result = $this->api->removeSubAdmin(array('userid' => $user2->getUID(), '_delete' => array('groupid' => $group1->getGID()))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertTrue($result->succeeded()); $this->assertTrue(!\OC_SubAdmin::isSubAdminofGroup($user2->getUID(), $group1->getGID())); $group1->delete(); $user1 = $this->generateUsers(); $this->userSession->setUser($user1); $this->groupManager->get('admin')->addUser($user1); $result = $this->api->removeSubAdmin(array('userid' => $this->getUniqueID(), '_delete' => array('groupid' => $group1->getGID()))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertEquals(101, $result->getStatusCode()); $this->assertFalse($result->succeeded()); $this->resetParams(); $user1 = $this->generateUsers(); $user2 = $this->generateUsers(); $this->userSession->setUser($user1); $this->groupManager->get('admin')->addUser($user1); $group1 = $this->getUniqueID(); $group1 = $this->groupManager->createGroup($group1); $_POST['groupid'] = $group1->getGID(); $result = $this->api->removeSubAdmin(array('userid' => $user2->getUID(), '_delete' => array('groupid' => $group1->getGID()))); $this->assertInstanceOf('OC_OCS_Result', $result); $this->assertFalse($result->succeeded()); $this->assertEquals(102, $result->getStatusCode()); $group1->delete(); }