mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-05-15 06:01:19 +00:00
add field for access restrictions by document status
This commit is contained in:
parent
7a84ffee5e
commit
0511d06d63
|
@ -44,6 +44,13 @@ class SeedDMS_Core_Role { /* {{{ */
|
||||||
*/
|
*/
|
||||||
var $_role;
|
var $_role;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var array list of status without access
|
||||||
|
*
|
||||||
|
* @access protected
|
||||||
|
*/
|
||||||
|
var $_noaccess;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var object reference to the dms instance this user belongs to
|
* @var object reference to the dms instance this user belongs to
|
||||||
*
|
*
|
||||||
|
@ -55,10 +62,11 @@ class SeedDMS_Core_Role { /* {{{ */
|
||||||
const role_admin = '1';
|
const role_admin = '1';
|
||||||
const role_guest = '2';
|
const role_guest = '2';
|
||||||
|
|
||||||
function SeedDMS_Core_Role($id, $name, $role) { /* {{{ */
|
function SeedDMS_Core_Role($id, $name, $role, $noaccess=array()) { /* {{{ */
|
||||||
$this->_id = $id;
|
$this->_id = $id;
|
||||||
$this->_name = $name;
|
$this->_name = $name;
|
||||||
$this->_role = $role;
|
$this->_role = $role;
|
||||||
|
$this->_noaccess = $noaccess;
|
||||||
$this->_dms = $role;
|
$this->_dms = $role;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
@ -91,7 +99,7 @@ class SeedDMS_Core_Role { /* {{{ */
|
||||||
|
|
||||||
$resArr = $resArr[0];
|
$resArr = $resArr[0];
|
||||||
|
|
||||||
$role = new self($resArr["id"], $resArr["name"], $resArr["role"]);
|
$role = new self($resArr["id"], $resArr["name"], $resArr["role"], $resArr['noaccess'] ? explode(',', $resArr['noaccess']) : array());
|
||||||
$role->setDMS($dms);
|
$role->setDMS($dms);
|
||||||
return $role;
|
return $role;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
@ -111,7 +119,7 @@ class SeedDMS_Core_Role { /* {{{ */
|
||||||
$roles = array();
|
$roles = array();
|
||||||
|
|
||||||
for ($i = 0; $i < count($resArr); $i++) {
|
for ($i = 0; $i < count($resArr); $i++) {
|
||||||
$role = new self($resArr[$i]["id"], $resArr[$i]["name"], $resArr[$i]["role"]);
|
$role = new self($resArr[$i]["id"], $resArr[$i]["name"], $resArr[$i]["role"], explode(',', $resArr[$i]['noaccess']));
|
||||||
$role->setDMS($dms);
|
$role->setDMS($dms);
|
||||||
$roles[$i] = $role;
|
$roles[$i] = $role;
|
||||||
}
|
}
|
||||||
|
@ -156,6 +164,19 @@ class SeedDMS_Core_Role { /* {{{ */
|
||||||
return true;
|
return true;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
function getNoAccess() { return $this->_noaccess; }
|
||||||
|
|
||||||
|
function setNoAccess($noaccess) { /* {{{ */
|
||||||
|
$db = $this->_dms->getDB();
|
||||||
|
|
||||||
|
$queryStr = "UPDATE tblRoles SET noaccess = " . $db->qstr(implode(',',$noaccess)) . " WHERE id = " . $this->_id;
|
||||||
|
if (!$db->getResult($queryStr))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
$this->_noaccess = $noaccess;
|
||||||
|
return true;
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete role
|
* Delete role
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue
Block a user