* Finish task #61169.

This commit is contained in:
tianshujie
2022-07-18 17:51:05 +08:00
parent c11d07e84e
commit 8dff584576
+60
View File
@@ -2235,6 +2235,18 @@ class kanbanModel extends model
$this->loadModel('file')->saveUpload('kanban', $kanbanID);
$this->file->updateObjectID($this->post->uid, $kanbanID, 'kanban');
if(isset($_POST['team']))
{
$kanbanMembers = empty($kanban->team) ? array() : explode(',', $kanban->team);
$type = 'team';
}
elseif(isset($_POST['whitelist']))
{
$kanbanMembers = empty($kanban->whitelist) ? array() : explode(',', $kanban->whitelist);
$type = 'whitelist';
}
$this->addSpaceMembers($kanban->space, $type, $kanbanMembers);
return $kanbanID;
}
}
@@ -2283,6 +2295,19 @@ class kanbanModel extends model
$this->loadModel('file')->saveUpload('kanban', $kanbanID);
$this->file->updateObjectID($this->post->uid, $kanbanID, 'kanban');
if(isset($_POST['team']))
{
$kanbanMembers = empty($kanban->team) ? array() : explode(',', $kanban->team);
$type = 'team';
}
elseif(isset($_POST['whitelist']))
{
$kanbanMembers = empty($kanban->whitelist) ? array() : explode(',', $kanban->whitelist);
$type = 'whitelist';
}
$this->addSpaceMembers($kanban->space, $type, $kanbanMembers);
return common::createChanges($oldKanban, $kanban);
}
}
@@ -2559,6 +2584,41 @@ class kanbanModel extends model
}
}
/**
* Add space members.
*
* @param int $spaceID
* @param array $type team|whitelist
* @param array $kanbanMembers
* @access public
* @return void
*/
public function addSpaceMembers($spaceID, $type, $kanbanMembers = array())
{
$space = $this->getSpaceById($spaceID);
$members = '';
if($type == 'team')
{
$spaceMembers = empty($space->team) ? array() : explode(',', $space->team);
$members = $space->team;
}
elseif($type == 'whitelist')
{
$spaceMembers = empty($space->whitelist) ? array() : explode(',', $space->whitelist);
$members = $space->whitelist;
}
$addMembers = array_diff($kanbanMembers, $spaceMembers);
if(!empty($addMembers))
{
$addMembers = implode(',', $addMembers);
$members .= ',' . trim($addMembers, ',');
$this->dao->update(TABLE_KANBANSPACE)->set($type)->eq($members)->where('id')->eq($spaceID)->exec();
}
}
/**
* Remove kanban cell.
*