Start implementing board sharing

This commit is contained in:
Julius Haertl
2016-08-16 10:29:37 +02:00
parent 135d9c9cbc
commit 6a040f1470
10 changed files with 140 additions and 25 deletions

View File

@@ -8,18 +8,34 @@ use OCP\IRequest;
use OCP\AppFramework\Http\DataResponse;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Db\DoesNotExistException;
use OCP\IUserManager;
use OCP\IGroupManager;
class BoardController extends Controller {
private $userId;
private $boardService;
protected $userManager;
protected $groupManager;
public function __construct($appName,
IRequest $request,
IUserManager $userManager,
IGroupManager $groupManager,
BoardService $cardService,
$userId) {
parent::__construct($appName, $request);
$this->userId = $userId;
$this->userManager = $userManager;
$this->groupManager = $groupManager;
$this->boardService = $cardService;
$this->userInfo = $this->getBoardPrequisites();
}
private function getBoardPrequisites() {
$groups = $this->groupManager->getUserGroupIds($this->userManager->get($this->userId));
return [
'user' => $this->userId,
'groups' => $groups
];
}
/**
@@ -27,7 +43,7 @@ class BoardController extends Controller {
*/
public function index() {
return $this->boardService->findAll($this->userId);
return $this->boardService->findAll($this->userInfo);
}
/**

View File

@@ -12,14 +12,17 @@ class ShareController extends Controller {
protected $userManager;
protected $groupManager;
private $userId;
public function __construct($appName,
IRequest $request,
IUserManager $userManager,
IGroupManager $groupManager
IGroupManager $groupManager,
$userId
){
parent::__construct($appName, $request);
$this->userManager = $userManager;
$this->groupManager = $groupManager;
$this->userId = $userId;
}
/**
@@ -41,9 +44,11 @@ class ShareController extends Controller {
$result[] = $acl;
}
foreach ($this->userManager->searchDisplayName($search, $limit, $offset) as $idx => $user) {
if($user->getUID() === $this->userId)
continue;
$acl = new Acl();
$acl->setType('user');
$acl->setParticipant($user->getDisplayName());
$acl->setParticipant($user->getUID());
$acl->setPermissionWrite(true);
$acl->setPermissionInvite(true);
$acl->setPermissionManage(true);