From 2f3694c4d62bdf354feb81d0ee35a68d1bcb68bc Mon Sep 17 00:00:00 2001 From: wangyidong Date: Sun, 6 Nov 2016 19:10:32 +0800 Subject: [PATCH] * fix for doclib priv. --- module/project/model.php | 8 ++++++-- module/upgrade/model.php | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/module/project/model.php b/module/project/model.php index 212979b3d8..770c3083c3 100644 --- a/module/project/model.php +++ b/module/project/model.php @@ -275,7 +275,7 @@ class projectModel extends model $lib->main = '1'; $lib->acl = $project->acl == 'open' ? 'open' : 'custom'; if($project->acl == 'custom') $lib->groups = $project->whitelist; - if($project->acl == 'private') + if($project->acl == 'private' or $project->acl == 'custom') { $teams = $this->dao->select('account')->from(TABLE_TEAM)->where('project')->eq($projectID)->fetchPairs('account', 'account'); $lib->users = join(',', $teams); @@ -342,7 +342,11 @@ class projectModel extends model { $this->dao->update(TABLE_DOCLIB)->set('acl')->eq($project->acl == 'open' ? 'open' : 'custom')->where('project')->eq($projectID)->exec(); if($project->acl == 'open') $this->dao->update(TABLE_DOCLIB)->set('groups')->eq('')->set('users')->eq('')->where('project')->eq($projectID)->exec(); - if($project->acl == 'custom') $this->dao->update(TABLE_DOCLIB)->set('groups')->eq($project->whitelist)->where('project')->eq($projectID)->exec(); + if($project->acl == 'custom') + { + $teams = $this->dao->select('account')->from(TABLE_TEAM)->where('project')->eq($projectID)->fetchPairs('account', 'account'); + $this->dao->update(TABLE_DOCLIB)->set('groups')->eq($project->whitelist)->set('users')->eq(join(',', $teams))->where('project')->eq($projectID)->exec(); + } if($project->acl == 'private') { $teams = $this->dao->select('account')->from(TABLE_TEAM)->where('project')->eq($projectID)->fetchPairs('account', 'account'); diff --git a/module/upgrade/model.php b/module/upgrade/model.php index 7017e83c51..d2ae654bf8 100644 --- a/module/upgrade/model.php +++ b/module/upgrade/model.php @@ -1215,9 +1215,9 @@ class upgradeModel extends model $lib->project = $projectID; $lib->name = $project->name; $lib->main = 1; - $lib->acl = $project->acl; + $lib->acl = $project->acl == 'open' ? 'open' : 'custom'; if($project->acl == 'custom') $lib->groups = $project->whitelist; - if($project->acl == 'private') + if($project->acl == 'private' or $project->acl == 'custom') { $teams = $this->dao->select('project, account')->from(TABLE_TEAM)->where('project')->eq($projectID)->fetchPairs('account', 'account'); $lib->users = join(',', $teams);