This commit is contained in:
Julius Haertl 2017-01-19 11:03:04 +01:00
Родитель 5f9e65aa96
Коммит f936afd972
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4C614C6ED2CDE6DF
15 изменённых файлов: 93 добавлений и 95 удалений

Просмотреть файл

@ -331,12 +331,12 @@
<length>64</length>
</field>
<field>
<name>permission_write</name>
<name>permission_edit</name>
<type>boolean</type>
<default>false</default>
</field>
<field>
<name>permission_invite</name>
<name>permission_share</name>
<type>boolean</type>
<default>false</default>
</field>

Просмотреть файл

@ -130,25 +130,25 @@ class BoardController extends Controller {
* @param $boardId
* @param $type
* @param $participant
* @param $write
* @param $invite
* @param $edit
* @param $share
* @param $manage
* @return \OCP\AppFramework\Db\Entity
*/
public function addAcl($boardId, $type, $participant, $write, $invite, $manage) {
return $this->boardService->addAcl($boardId, $type, $participant, $write, $invite, $manage);
public function addAcl($boardId, $type, $participant, $edit, $share, $manage) {
return $this->boardService->addAcl($boardId, $type, $participant, $edit, $share, $manage);
}
/**
* @NoAdminRequired
* @param $id
* @param $permissionWrite
* @param $permissionInvite
* @param $permissionEdit
* @param $permissionShare
* @param $permissionManage
* @return \OCP\AppFramework\Db\Entity
*/
public function updateAcl($id, $permissionWrite, $permissionInvite, $permissionManage) {
return $this->boardService->updateAcl($id, $permissionWrite, $permissionInvite, $permissionManage);
public function updateAcl($id, $permissionEdit, $permissionShare, $permissionManage) {
return $this->boardService->updateAcl($id, $permissionEdit, $permissionShare, $permissionManage);
}
/**

Просмотреть файл

@ -60,8 +60,8 @@ class ShareController extends Controller {
$acl = new Acl();
$acl->setType('group');
$acl->setParticipant($group->getGID());
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionEdit(true);
$acl->setPermissionShare(true);
$acl->setPermissionManage(true);
$result[] = $acl;
}
@ -72,8 +72,8 @@ class ShareController extends Controller {
$acl = new Acl();
$acl->setType('user');
$acl->setParticipant($user->getUID());
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionEdit(true);
$acl->setPermissionShare(true);
$acl->setPermissionManage(true);
$result[] = $acl;
}

Просмотреть файл

@ -34,21 +34,21 @@ class Acl extends Entity implements \JsonSerializable {
protected $participant;
protected $type;
protected $boardId;
protected $permissionWrite;
protected $permissionInvite;
protected $permissionEdit;
protected $permissionShare;
protected $permissionManage;
protected $owner;
public function __construct() {
$this->addType('id','integer');
$this->addType('boardId','integer');
$this->addType('permissionWrite', 'boolean');
$this->addType('permissionInvite', 'boolean');
$this->addType('permissionEdit', 'boolean');
$this->addType('permissionShare', 'boolean');
$this->addType('permissionManage', 'boolean');
$this->addType('owner', 'boolean');
$this->addRelation('owner');
$this->setPermissionWrite(false);
$this->setPermissionInvite(false);
$this->setPermissionEdit(false);
$this->setPermissionShare(false);
$this->setPermissionManage(false);
}
@ -57,9 +57,9 @@ class Acl extends Entity implements \JsonSerializable {
case Acl::PERMISSION_READ:
return true;
case Acl::PERMISSION_EDIT:
return $this->getPermissionWrite();
return $this->getPermissionEdit();
case Acl::PERMISSION_SHARE:
return $this->getPermissionInvite();
return $this->getPermissionShare();
case Acl::PERMISSION_MANAGE:
return $this->getPermissionManage();
}
@ -72,8 +72,8 @@ class Acl extends Entity implements \JsonSerializable {
'participant' => $this->participant,
'type' => $this->type,
'boardId' => $this->boardId,
'permissionWrite' => $this->permissionWrite,
'permissionInvite' => $this->permissionInvite,
'permissionEdit' => $this->permissionEdit,
'permissionShare' => $this->permissionShare,
'permissionManage' => $this->permissionManage,
'owner' => $this->owner
];

Просмотреть файл

@ -33,7 +33,7 @@ class AclMapper extends DeckMapper implements IPermissionMapper {
}
public function findAll($boardId, $limit=null, $offset=null) {
$sql = 'SELECT id, board_id, type, participant, permission_write, permission_invite, permission_manage FROM `*PREFIX*deck_board_acl` WHERE `board_id` = ? ';
$sql = 'SELECT id, board_id, type, participant, permission_edit, permission_share, permission_manage FROM `*PREFIX*deck_board_acl` WHERE `board_id` = ? ';
return $this->findEntities($sql, [$boardId], $limit, $offset);
}

Просмотреть файл

@ -5,20 +5,20 @@
* @author Julius Härtl <jus@bitgrid.net>
*
* @license GNU AGPL version 3 or any later version
*
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*
*/
namespace OCA\Deck\Db;
@ -35,9 +35,9 @@ class Stack extends Entity implements JsonSerializable {
protected $order;
public function __construct() {
$this->addType('id','integer');
$this->addType('boardId','integer');
$this->addType('order','integer');
$this->addType('id', 'integer');
$this->addType('boardId', 'integer');
$this->addType('order', 'integer');
}
public function setCards($cards) {
@ -45,22 +45,20 @@ class Stack extends Entity implements JsonSerializable {
}
public function jsonSerialize() {
if(!empty($this->cards)) {
return [
'id' => $this->id,
'title' => $this->title,
'order' => $this->order,
'boardId' => $this->boardId,
'cards' => $this->cards
];
} else {
return [
'id' => $this->id,
'title' => $this->title,
'order' => $this->order,
'boardId' => $this->boardId
];
}
if (!empty($this->cards)) {
return [
'id' => $this->id,
'title' => $this->title,
'order' => $this->order,
'boardId' => $this->boardId,
'cards' => $this->cards
];
}
return [
'id' => $this->id,
'title' => $this->title,
'order' => $this->order,
'boardId' => $this->boardId
];
}
}

Просмотреть файл

@ -104,23 +104,23 @@ class BoardService {
}
public function addAcl($boardId, $type, $participant, $write, $invite, $manage) {
public function addAcl($boardId, $type, $participant, $edit, $share, $manage) {
$this->permissionService->checkPermission($this->boardMapper, $boardId, Acl::PERMISSION_SHARE);
$acl = new Acl();
$acl->setBoardId($boardId);
$acl->setType($type);
$acl->setParticipant($participant);
$acl->setPermissionWrite($write);
$acl->setPermissionInvite($invite);
$acl->setPermissionEdit($edit);
$acl->setPermissionShare($share);
$acl->setPermissionManage($manage);
return $this->aclMapper->insert($acl);
}
public function updateAcl($id, $write, $invite, $manage) {
public function updateAcl($id, $edit, $share, $manage) {
$this->permissionService->checkPermission($this->boardMapper, $id, Acl::PERMISSION_SHARE);
$acl = $this->aclMapper->find($id);
$acl->setPermissionWrite($write);
$acl->setPermissionInvite($invite);
$acl->setPermissionEdit($edit);
$acl->setPermissionShare($share);
$acl->setPermissionManage($manage);
return $this->aclMapper->update($acl);
}

Просмотреть файл

@ -46,11 +46,11 @@
<span class="has-tooltip username">
{{ acl.participant }}</span>
<span class="shareOption" ng-if="boardservice.canManage()">
<input type="checkbox" class="permissions checkbox" id="checkbox-permission-{{ acl.id }}-share" ng-model="acl.permissionInvite" ng-change="aclUpdate(acl)" />
<input type="checkbox" class="permissions checkbox" id="checkbox-permission-{{ acl.id }}-share" ng-model="acl.permissionShare" ng-change="aclUpdate(acl)" />
<label for="checkbox-permission-{{ acl.id }}-share"><?php p($l->t('Share')); ?></label>
</span>
<span class="shareOption"ng-if="boardservice.canManage()">
<input type="checkbox" class="permissions checkbox" id="checkbox-permission-{{ acl.id }}-edit" ng-model="acl.permissionWrite" ng-change="aclUpdate(acl)" />
<input type="checkbox" class="permissions checkbox" id="checkbox-permission-{{ acl.id }}-edit" ng-model="acl.permissionEdit" ng-change="aclUpdate(acl)" />
<label for="checkbox-permission-{{ acl.id }}-edit"><?php p($l->t('Edit')); ?></label>
</span>
<span class="shareOption"ng-if="boardservice.canManage()">

Просмотреть файл

@ -66,12 +66,12 @@ class AclMapperTest extends MapperTestUtility {
}
}
/** @return Acl */
public function getAcl($type='user', $participant='admin', $write=false, $invite=false, $manage=false, $boardId=123) {
public function getAcl($type='user', $participant='admin', $edit=false, $share=false, $manage=false, $boardId=123) {
$acl = new Acl();
$acl->setParticipant($participant);
$acl->setType('user');
$acl->setPermissionWrite($write);
$acl->setPermissionInvite($invite);
$acl->setPermissionEdit($edit);
$acl->setPermissionShare($share);
$acl->setPermissionManage($manage);
$acl->setBoardId($boardId);
return $acl;

Просмотреть файл

@ -30,8 +30,8 @@ class AclTest extends \PHPUnit_Framework_TestCase {
$acl->setParticipant("admin");
$acl->setType("user");
$acl->setBoardId(1);
$acl->setPermissionWrite(1);
$acl->setPermissionInvite(1);
$acl->setPermissionEdit(1);
$acl->setPermissionShare(1);
$acl->setPermissionManage(1);
return $acl;
}
@ -41,8 +41,8 @@ class AclTest extends \PHPUnit_Framework_TestCase {
$acl->setParticipant("administrators");
$acl->setType("group");
$acl->setBoardId(1);
$acl->setPermissionWrite(1);
$acl->setPermissionInvite(1);
$acl->setPermissionEdit(1);
$acl->setPermissionShare(1);
$acl->setPermissionManage(1);
return $acl;
}
@ -53,8 +53,8 @@ class AclTest extends \PHPUnit_Framework_TestCase {
'participant' => 'admin',
'type' => 'user',
'boardId' => 1,
'permissionWrite' => 1,
'permissionInvite' => 1,
'permissionEdit' => 1,
'permissionShare' => 1,
'permissionManage' => 1,
'owner' => 0
], $acl->jsonSerialize());
@ -64,8 +64,8 @@ class AclTest extends \PHPUnit_Framework_TestCase {
'participant' => 'administrators',
'type' => 'group',
'boardId' => 1,
'permissionWrite' => 1,
'permissionInvite' => 1,
'permissionEdit' => 1,
'permissionShare' => 1,
'permissionManage' => 1,
'owner' => 0
], $acl->jsonSerialize());
@ -78,8 +78,8 @@ class AclTest extends \PHPUnit_Framework_TestCase {
'participant' => 'admin',
'type' => 'user',
'boardId' => 1,
'permissionWrite' => 1,
'permissionInvite' => 1,
'permissionEdit' => 1,
'permissionShare' => 1,
'permissionManage' => 1,
'owner' => 1
], $acl->jsonSerialize());
@ -92,8 +92,8 @@ class AclTest extends \PHPUnit_Framework_TestCase {
$this->assertEquals(true, $acl->getPermission(Acl::PERMISSION_EDIT));
$this->assertEquals(true, $acl->getPermission(Acl::PERMISSION_MANAGE));
$this->assertEquals(true, $acl->getPermission(Acl::PERMISSION_SHARE));
$acl->setPermissionWrite(0);
$acl->setPermissionInvite(0);
$acl->setPermissionEdit(0);
$acl->setPermissionShare(0);
$acl->setPermissionManage(0);
$this->assertEquals(true, $acl->getPermission(Acl::PERMISSION_READ));
$this->assertEquals(false, $acl->getPermission(Acl::PERMISSION_EDIT));

Просмотреть файл

@ -71,12 +71,12 @@ class BoardMapperTest extends MapperTestUtility {
}
}
/** @return Acl */
public function getAcl($type='user', $participant='admin', $write=false, $invite=false, $manage=false, $boardId=123) {
public function getAcl($type='user', $participant='admin', $edit=false, $share=false, $manage=false, $boardId=123) {
$acl = new Acl();
$acl->setParticipant($participant);
$acl->setType('user');
$acl->setPermissionWrite($write);
$acl->setPermissionInvite($invite);
$acl->setPermissionEdit($edit);
$acl->setPermissionShare($share);
$acl->setPermissionManage($manage);
$acl->setBoardId($boardId);
return $acl;

Просмотреть файл

@ -144,8 +144,8 @@ class BoardServiceTest extends \PHPUnit_Framework_TestCase {
$acl->setBoardId(123);
$acl->setType('user');
$acl->setParticipant('admin');
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionEdit(true);
$acl->setPermissionShare(true);
$acl->setPermissionManage(true);
$this->aclMapper->expects($this->once())
->method('insert')
@ -161,8 +161,8 @@ class BoardServiceTest extends \PHPUnit_Framework_TestCase {
$acl->setBoardId(123);
$acl->setType('user');
$acl->setParticipant('admin');
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionEdit(true);
$acl->setPermissionShare(true);
$acl->setPermissionManage(true);
$this->aclMapper->expects($this->once())
@ -178,8 +178,8 @@ class BoardServiceTest extends \PHPUnit_Framework_TestCase {
123, false, false, false
);
$this->assertFalse($result->getPermissionWrite());
$this->assertFalse($result->getPermissionInvite());
$this->assertFalse($result->getPermissionEdit());
$this->assertFalse($result->getPermissionShare());
$this->assertFalse($result->getPermissionManage());
}
@ -189,8 +189,8 @@ class BoardServiceTest extends \PHPUnit_Framework_TestCase {
$acl->setBoardId(123);
$acl->setType('user');
$acl->setParticipant('admin');
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionEdit(true);
$acl->setPermissionShare(true);
$acl->setPermissionManage(true);
$this->aclMapper->expects($this->once())
->method('find')

Просмотреть файл

@ -88,8 +88,8 @@ class PermissionServiceTest extends \PHPUnit_Framework_TestCase {
$aclUser = new Acl();
$aclUser->setType('user');
$aclUser->setParticipant('admin');
$aclUser->setPermissionWrite(true);
$aclUser->setPermissionInvite(true);
$aclUser->setPermissionEdit(true);
$aclUser->setPermissionShare(true);
$aclUser->setPermissionManage(true);
$this->aclMapper->expects($this->once())
->method('findAll')
@ -150,8 +150,8 @@ class PermissionServiceTest extends \PHPUnit_Framework_TestCase {
$aclUser = new Acl();
$aclUser->setType($type);
$aclUser->setParticipant($participant);
$aclUser->setPermissionWrite($edit);
$aclUser->setPermissionInvite($share);
$aclUser->setPermissionEdit($edit);
$aclUser->setPermissionShare($share);
$aclUser->setPermissionManage($manage);
$acls = [
$aclUser
@ -257,13 +257,13 @@ class PermissionServiceTest extends \PHPUnit_Framework_TestCase {
$this->service->checkPermission($mapper, 1234, Acl::PERMISSION_READ);
}
private function generateAcl($boardId, $type, $participant, $write, $manage, $share) {
private function generateAcl($boardId, $type, $participant, $edit, $manage, $share) {
$acl = new Acl();
$acl->setParticipant($participant);
$acl->setBoardId($boardId);
$acl->setType($type);
$acl->setPermissionWrite($write);
$acl->setPermissionInvite($share);
$acl->setPermissionEdit($edit);
$acl->setPermissionShare($share);
$acl->setPermissionManage($manage);
return $acl;
}

Просмотреть файл

@ -108,7 +108,7 @@ class CardControllerTest extends \PHPUnit_Framework_TestCase {
$this->cardService->expects($this->once())->method('reorder');
$this->controller->reorder(1, 2, 3);
}
public function testRename() {
$this->cardService->expects($this->once())->method('rename');
$this->controller->rename(1, 'test');

Просмотреть файл

@ -96,8 +96,8 @@ class ShareControllerTest extends \PHPUnit_Framework_TestCase {
$acl = new Acl();
$acl->setType('group');
$acl->setParticipant('foo');
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionEdit(true);
$acl->setPermissionShare(true);
$acl->setPermissionManage(true);
$this->assertEquals([$acl], $actual);
}
@ -122,8 +122,8 @@ class ShareControllerTest extends \PHPUnit_Framework_TestCase {
$acl = new Acl();
$acl->setType('user');
$acl->setParticipant('foo');
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionEdit(true);
$acl->setPermissionShare(true);
$acl->setPermissionManage(true);
$this->assertEquals([$acl], $actual);
}