HOR-374
HOR-374 HOR-374
This commit is contained in:
@@ -46,6 +46,7 @@
|
||||
|
||||
class RBAC
|
||||
{
|
||||
const SETUPERMISSIONUID= '00000000000000000000000000000002';
|
||||
/**
|
||||
*
|
||||
* @access private
|
||||
@@ -161,25 +162,73 @@ class RBAC
|
||||
*/
|
||||
public function loadPermissionAdmin()
|
||||
{
|
||||
$permissionsAdmin = array (array ("PER_UID" => "00000000000000000000000000000001","PER_CODE" => "PM_LOGIN"
|
||||
),array ("PER_UID" => "00000000000000000000000000000002","PER_CODE" => "PM_SETUP"
|
||||
),array ("PER_UID" => "00000000000000000000000000000003","PER_CODE" => "PM_USERS"
|
||||
),array ("PER_UID" => "00000000000000000000000000000004","PER_CODE" => "PM_FACTORY"
|
||||
),array ("PER_UID" => "00000000000000000000000000000005","PER_CODE" => "PM_CASES"
|
||||
),array ("PER_UID" => "00000000000000000000000000000006","PER_CODE" => "PM_ALLCASES"
|
||||
),array ("PER_UID" => "00000000000000000000000000000007","PER_CODE" => "PM_REASSIGNCASE"
|
||||
),array ("PER_UID" => "00000000000000000000000000000008","PER_CODE" => "PM_REPORTS"
|
||||
),array ("PER_UID" => "00000000000000000000000000000009","PER_CODE" => "PM_SUPERVISOR"
|
||||
),array ("PER_UID" => "00000000000000000000000000000010","PER_CODE" => "PM_SETUP_ADVANCE"
|
||||
),array ("PER_UID" => "00000000000000000000000000000011","PER_CODE" => "PM_DASHBOARD"
|
||||
),array ("PER_UID" => "00000000000000000000000000000012","PER_CODE" => "PM_WEBDAV"
|
||||
),array ("PER_UID" => "00000000000000000000000000000013","PER_CODE" => "PM_DELETECASE"
|
||||
),array ("PER_UID" => "00000000000000000000000000000014","PER_CODE" => "PM_EDITPERSONALINFO"
|
||||
),array ("PER_UID" => "00000000000000000000000000000015","PER_CODE" => "PM_FOLDERS_VIEW"
|
||||
),array ("PER_UID" => "00000000000000000000000000000016","PER_CODE" => "PM_FOLDERS_ADD_FOLDER"
|
||||
),array ("PER_UID" => "00000000000000000000000000000017","PER_CODE" => "PM_FOLDERS_ADD_FILE"
|
||||
),array ("PER_UID" => "00000000000000000000000000000018","PER_CODE" => "PM_CANCELCASE"
|
||||
),array ("PER_UID" => "00000000000000000000000000000019","PER_CODE" => "PM_FOLDER_DELETE"
|
||||
$permissionsAdmin = array(array("PER_UID" => "00000000000000000000000000000001", "PER_CODE" => "PM_LOGIN",
|
||||
"PER_NAME" => "Login"
|
||||
), array("PER_UID" => "00000000000000000000000000000002", "PER_CODE" => "PM_SETUP", "PER_NAME" => "Setup"
|
||||
), array("PER_UID" => "00000000000000000000000000000003", "PER_CODE" => "PM_USERS", "PER_NAME" => "Users"
|
||||
), array("PER_UID" => "00000000000000000000000000000004", "PER_CODE" => "PM_FACTORY", "PER_NAME" => "Design
|
||||
Process"
|
||||
), array("PER_UID" => "00000000000000000000000000000005", "PER_CODE" => "PM_CASES", "PER_NAME" => "Create Users"
|
||||
), array("PER_UID" => "00000000000000000000000000000006", "PER_CODE" => "PM_ALLCASES", "PER_NAME" => "All Cases"
|
||||
), array("PER_UID" => "00000000000000000000000000000007", "PER_CODE" => "PM_REASSIGNCASE", "PER_NAME" =>
|
||||
"Reassign case"
|
||||
), array("PER_UID" => "00000000000000000000000000000008", "PER_CODE" => "PM_REPORTS", "PER_NAME" => "PM reports"
|
||||
), array("PER_UID" => "00000000000000000000000000000009", "PER_CODE" => "PM_SUPERVISOR", "PER_NAME" =>
|
||||
"Supervisor"
|
||||
), array("PER_UID" => "00000000000000000000000000000010", "PER_CODE" => "PM_SETUP_ADVANCE", "PER_NAME" =>
|
||||
"Setup Advanced"
|
||||
), array("PER_UID" => "00000000000000000000000000000011", "PER_CODE" => "PM_DASHBOARD", "PER_NAME" => "Dashboard"
|
||||
), array("PER_UID" => "00000000000000000000000000000012", "PER_CODE" => "PM_WEBDAV", "PER_NAME" => "WebDav"
|
||||
), array("PER_UID" => "00000000000000000000000000000013", "PER_CODE" => "PM_DELETECASE", "PER_NAME" => "Cancel
|
||||
cases"
|
||||
), array("PER_UID" => "00000000000000000000000000000014", "PER_CODE" => "PM_EDITPERSONALINFO", "PER_NAME" =>
|
||||
"Edit Personal Info"
|
||||
), array("PER_UID" => "00000000000000000000000000000015", "PER_CODE" => "PM_FOLDERS_VIEW", "PER_NAME" => "View
|
||||
Folders"
|
||||
), array("PER_UID" => "00000000000000000000000000000016", "PER_CODE" => "PM_FOLDERS_ADD_FOLDER", "PER_NAME" =>
|
||||
"Delete folders"
|
||||
), array("PER_UID" => "00000000000000000000000000000017", "PER_CODE" => "PM_FOLDERS_ADD_FILE", "PER_NAME" =>
|
||||
"Delete folders"
|
||||
), array("PER_UID" => "00000000000000000000000000000018", "PER_CODE" => "PM_CANCELCASE", "PER_NAME" => "Cancel
|
||||
cases"
|
||||
), array("PER_UID" => "00000000000000000000000000000019", "PER_CODE" => "PM_FOLDER_DELETE", "PER_NAME" =>
|
||||
"Cancel cases"
|
||||
), array("PER_UID" => "00000000000000000000000000000020", "PER_CODE" => "PM_SETUP_LOGO", "PER_NAME" => "Setup
|
||||
Logo"
|
||||
), array("PER_UID" => "00000000000000000000000000000021", "PER_CODE" => "PM_SETUP_EMAIL", "PER_NAME" => "Setup
|
||||
Email"
|
||||
), array("PER_UID" => "00000000000000000000000000000022", "PER_CODE" => "PM_SETUP_CALENDAR", "PER_NAME" =>
|
||||
"Setup Calendar"
|
||||
), array("PER_UID" => "00000000000000000000000000000023", "PER_CODE" => "PM_SETUP_PROCESS_CATEGORIES",
|
||||
"PER_NAME" => "Setup Process Categories"
|
||||
), array("PER_UID" => "00000000000000000000000000000024", "PER_CODE" => "PM_SETUP_CLEAR_CACHE", "PER_NAME" =>
|
||||
"Setup Clear Cache"
|
||||
), array("PER_UID" => "00000000000000000000000000000025", "PER_CODE" => "PM_SETUP_HEART_BEAT", "PER_NAME" =>
|
||||
"Setup Heart Beat"
|
||||
), array("PER_UID" => "00000000000000000000000000000026", "PER_CODE" => "PM_SETUP_ENVIRONMENT", "PER_NAME" =>
|
||||
"Setup Environment"
|
||||
), array("PER_UID" => "00000000000000000000000000000027", "PER_CODE" => "PM_SETUP_PM_TABLES", "PER_NAME" =>
|
||||
"Setup PM Tables"
|
||||
), array("PER_UID" => "00000000000000000000000000000028", "PER_CODE" => "PM_SETUP_LOGIN", "PER_NAME" => "Setup
|
||||
Login"
|
||||
), array("PER_UID" => "00000000000000000000000000000029", "PER_CODE" => "PM_SETUP_DASHBOARDS", "PER_NAME" =>
|
||||
"Setup Dashboards"
|
||||
), array("PER_UID" => "00000000000000000000000000000030", "PER_CODE" => "PM_SETUP_LANGUAGE", "PER_NAME" =>
|
||||
"Setup Language"
|
||||
), array("PER_UID" => "00000000000000000000000000000031", "PER_CODE" => "PM_SETUP_SKIN", "PER_NAME" => "Setup
|
||||
Skin"
|
||||
), array("PER_UID" => "00000000000000000000000000000032", "PER_CODE" => "PM_SETUP_CASES_LIST_CACHE_BUILDER",
|
||||
"PER_NAME" => "Setup Case List Cache Builder"
|
||||
), array("PER_UID" => "00000000000000000000000000000033", "PER_CODE" => "PM_SETUP_PLUGINS", "PER_NAME" =>
|
||||
"Setup Plugins"
|
||||
), array("PER_UID" => "00000000000000000000000000000034", "PER_CODE" =>
|
||||
"PM_SETUP_USERS_AUTHENTICATION_SOURCES", "PER_NAME" => "Setup User Authentication Sources"
|
||||
), array("PER_UID" => "00000000000000000000000000000035", "PER_CODE" => "PM_SETUP_LOGS", "PER_NAME" => "Setup
|
||||
Logs"
|
||||
), array("PER_UID" => "00000000000000000000000000000036", "PER_CODE" => "DELETE_PROCESS_CASES", "PER_NAME" =>
|
||||
"Delete process cases"
|
||||
), array("PER_UID" => "00000000000000000000000000000037", "PER_CODE" => "PM_EDITPERSONALINFO_CALENDAR",
|
||||
"PER_NAME" => "Edit personal info Calendar"
|
||||
)
|
||||
);
|
||||
return $permissionsAdmin;
|
||||
@@ -400,7 +449,7 @@ class RBAC
|
||||
* @param string $uid id of user
|
||||
* @param string $system Code of System
|
||||
* @param string $perm id of Permissions
|
||||
* @return 1: If it is ok
|
||||
* @return int 1: If it is ok
|
||||
* -1: System doesn't exists
|
||||
* -2: The User has not a Role
|
||||
* -3: The User has not this Permission.
|
||||
@@ -827,6 +876,20 @@ class RBAC
|
||||
return $this->rolesObj->assignUserToRole( $aData );
|
||||
}
|
||||
|
||||
/**
|
||||
* this function gets role permission
|
||||
*
|
||||
*
|
||||
* @access public
|
||||
*
|
||||
* @param string $ROL_UID
|
||||
* @return $this->rolesObj->getRolePermissionsByRoleUid
|
||||
*/
|
||||
public function getRolePermissionsByRoleUid ($ROL_UID)
|
||||
{
|
||||
return $this->rolesObj->getRolePermissionsByRoleUid( $ROL_UID );
|
||||
}
|
||||
|
||||
/**
|
||||
* this function gets role permission
|
||||
*
|
||||
@@ -1134,6 +1197,9 @@ class RBAC
|
||||
return true;
|
||||
} else {
|
||||
switch ($access) {
|
||||
case - 3:
|
||||
G::pr(G::LoadTranslation("ID_GRID_PAGE_NO_PERMISSIONS_MESSAGE"));
|
||||
break;
|
||||
case - 2:
|
||||
G::SendTemporalMessage( 'ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels' );
|
||||
G::header( 'location: ../login/login' );
|
||||
@@ -1224,6 +1290,8 @@ class RBAC
|
||||
$aRow = $dataset->getRow();
|
||||
}
|
||||
foreach($listPermissions as $key => $item) {
|
||||
//Adding new permissions
|
||||
$data = array();
|
||||
$data['PER_UID'] = $item['PER_UID'];
|
||||
$data['PER_CODE'] = $item['PER_CODE'];
|
||||
$data['PER_CREATE_DATE'] = date('Y-m-d H:i:s');
|
||||
@@ -1233,6 +1301,33 @@ class RBAC
|
||||
$permission->fromArray($data, BasePeer::TYPE_FIELDNAME);
|
||||
$permission->save();
|
||||
$message[] = 'Add permission missing ' . $item['PER_CODE'];
|
||||
|
||||
//Adding new labels for new permissions
|
||||
$o = new RolesPermissions();
|
||||
$o->setPerUid($item['PER_UID']);
|
||||
$o->setPermissionName($item['PER_NAME']);
|
||||
|
||||
//Assigning new permissions
|
||||
$rolesWithPermissionSetup = $this->getRolePermissionsByRoleUid(self::SETUPERMISSIONUID);
|
||||
$rolesWithPermissionSetup->next();
|
||||
while ($aRow = $rolesWithPermissionSetup->getRow()) {
|
||||
$userRolePermission = $this->getRolePermissions($aRow['ROL_UID']);
|
||||
$userRolePermission->next();
|
||||
$valueNewPermissions = false;
|
||||
while ($aRowPermission = $userRolePermission->getRow()) {
|
||||
if ($item['PER_CODE'] === $aRowPermission['PER_CODE']) {
|
||||
$valueNewPermissions = true;
|
||||
}
|
||||
$userRolePermission->next();
|
||||
}
|
||||
$dataPermissions = array();
|
||||
if (!$valueNewPermissions) {
|
||||
$dataPermissions['ROL_UID'] = $aRow['ROL_UID'];
|
||||
$dataPermissions['PER_UID'] = $item['PER_UID'];
|
||||
$this->assignPermissionRole($dataPermissions);
|
||||
}
|
||||
$rolesWithPermissionSetup->next();
|
||||
}
|
||||
}
|
||||
return $message;
|
||||
}
|
||||
|
||||
@@ -545,6 +545,22 @@ class Roles extends BaseRoles {
|
||||
G::auditLog("DeleteUserToRole", "Delete user ".$user['USR_USERNAME']." (".$USR_UID.") to Role ".$rol['ROL_NAME']." (".$ROL_UID.") ");
|
||||
}
|
||||
|
||||
function getRolePermissionsByPerUid($roleUid){
|
||||
try {
|
||||
$criteria = new Criteria();
|
||||
$criteria->addSelectColumn(RolesPermissionsPeer::ROL_UID);
|
||||
$criteria->addSelectColumn(RolesPermissionsPeer::PER_UID);
|
||||
$criteria->add(RolesPermissionsPeer::PER_UID, $roleUid);
|
||||
|
||||
$oDataset = RolesPeer::doSelectRS($criteria);
|
||||
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
return $oDataset;
|
||||
|
||||
} catch( exception $e ) {
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
function getRolePermissions($ROL_UID, $filter='', $status=null) {
|
||||
try {
|
||||
$criteria = new Criteria();
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<parameter name="Comment" value="Permissions"/>
|
||||
</vendor>
|
||||
<column name="PER_UID" type="VARCHAR" size="32" required="true" primaryKey="true" default="" />
|
||||
<column name="PER_CODE" type="VARCHAR" size="32" required="true" default="" />
|
||||
<column name="PER_CODE" type="VARCHAR" size="64" required="true" default="" />
|
||||
<column name="PER_CREATE_DATE" type="TIMESTAMP" />
|
||||
<column name="PER_UPDATE_DATE" type="TIMESTAMP" />
|
||||
<column name="PER_STATUS" type="INTEGER" required="true" default="1" />
|
||||
|
||||
@@ -33,7 +33,7 @@ END
|
||||
CREATE TABLE [RBAC_PERMISSIONS]
|
||||
(
|
||||
[PER_UID] VARCHAR(32) default '' NOT NULL,
|
||||
[PER_CODE] VARCHAR(32) default '' NOT NULL,
|
||||
[PER_CODE] VARCHAR(64) default '' NOT NULL,
|
||||
[PER_CREATE_DATE] CHAR(19) default '0000-00-00 00:00:00' NOT NULL,
|
||||
[PER_UPDATE_DATE] CHAR(19) default '0000-00-00 00:00:00' NOT NULL,
|
||||
[PER_STATUS] INT default 1 NOT NULL,
|
||||
|
||||
@@ -17,7 +17,23 @@ INSERT INTO `RBAC_PERMISSIONS` VALUES
|
||||
('00000000000000000000000000000016','PM_FOLDERS_ADD_FOLDER','2009-10-12 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000017','PM_FOLDERS_ADD_FILE','2009-10-12 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000018','PM_CANCELCASE','2011-12-11 00:00:00','2011-12-11 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000019','PM_FOLDER_DELETE','2011-12-11 00:00:00','2011-12-11 00:00:00',1,'00000000000000000000000000000002');
|
||||
('00000000000000000000000000000019','PM_FOLDER_DELETE','2011-12-11 00:00:00','2011-12-11 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000020','PM_SETUP_LOGO','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000021','PM_SETUP_EMAIL','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'000000000000000000000000000000022'),
|
||||
('00000000000000000000000000000022','PM_SETUP_CALENDAR','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000023','PM_SETUP_PROCESS_CATEGORIES','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000024','PM_SETUP_CLEAR_CACHE','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000025','PM_SETUP_HEART_BEAT','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000026','PM_SETUP_ENVIRONMENT','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000027','PM_SETUP_PM_TABLES','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000028','PM_SETUP_LOGIN','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000029','PM_SETUP_DASHBOARDS','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000030','PM_SETUP_LANGUAGE','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000031','PM_SETUP_SKIN','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000032','PM_SETUP_CASES_LIST_CACHE_BUILDER','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000033','PM_SETUP_PLUGINS','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000034','PM_SETUP_USERS_AUTHENTICATION_SOURCES','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002'),
|
||||
('00000000000000000000000000000035','PM_SETUP_LOGS','2016-03-01 00:00:00','0000-00-00 00:00:00',1,'00000000000000000000000000000002');
|
||||
|
||||
INSERT INTO `RBAC_ROLES` VALUES
|
||||
('00000000000000000000000000000001','','00000000000000000000000000000001','RBAC_ADMIN','2007-07-31 19:10:22','2007-08-03 12:24:36',1),
|
||||
@@ -46,6 +62,24 @@ INSERT INTO `RBAC_ROLES_PERMISSIONS` VALUES
|
||||
('00000000000000000000000000000002','00000000000000000000000000000017'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000018'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000019'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000020'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000021'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000022'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000023'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000024'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000025'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000026'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000027'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000028'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000029'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000030'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000031'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000032'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000033'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000034'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000035'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000036'),
|
||||
('00000000000000000000000000000002','00000000000000000000000000000037'),
|
||||
('00000000000000000000000000000003','00000000000000000000000000000001'),
|
||||
('00000000000000000000000000000003','00000000000000000000000000000005'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000001'),
|
||||
@@ -62,7 +96,25 @@ INSERT INTO `RBAC_ROLES_PERMISSIONS` VALUES
|
||||
('00000000000000000000000000000004','00000000000000000000000000000016'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000017'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000018'),
|
||||
('00000000000000000000000000000004', '00000000000000000000000000000019');
|
||||
('00000000000000000000000000000004','00000000000000000000000000000019'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000020'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000021'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000022'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000023'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000024'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000025'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000026'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000027'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000028'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000029'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000030'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000031'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000032'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000033'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000034'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000035'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000036'),
|
||||
('00000000000000000000000000000004','00000000000000000000000000000037');
|
||||
|
||||
INSERT INTO `RBAC_SYSTEMS` VALUES ('00000000000000000000000000000001','RBAC','2007-07-31 19:10:22','2007-08-03 12:24:36',1),('00000000000000000000000000000002','PROCESSMAKER','2007-07-31 19:10:22','2007-08-03 12:24:36',1);
|
||||
INSERT INTO `RBAC_USERS` VALUES ('00000000000000000000000000000001','admin','21232f297a57a5a743894a0e4a801fc3','Administrator','','admin@processmaker.com','2020-01-01','2007-08-03 12:24:36','2008-02-13 07:24:07',1,'MYSQL','00000000000000000000000000000000','','');
|
||||
|
||||
@@ -13,7 +13,7 @@ DROP TABLE IF EXISTS `RBAC_PERMISSIONS`;
|
||||
CREATE TABLE `RBAC_PERMISSIONS`
|
||||
(
|
||||
`PER_UID` VARCHAR(32) default '' NOT NULL,
|
||||
`PER_CODE` VARCHAR(32) default '' NOT NULL,
|
||||
`PER_CODE` VARCHAR(64) default '' NOT NULL,
|
||||
`PER_CREATE_DATE` DATETIME,
|
||||
`PER_UPDATE_DATE` DATETIME,
|
||||
`PER_STATUS` INTEGER default 1 NOT NULL,
|
||||
|
||||
@@ -10,7 +10,7 @@ DROP TABLE "RBAC_PERMISSIONS" CASCADE CONSTRAINTS;
|
||||
CREATE TABLE "RBAC_PERMISSIONS"
|
||||
(
|
||||
"PER_UID" VARCHAR2(32) default '' NOT NULL,
|
||||
"PER_CODE" VARCHAR2(32) default '' NOT NULL,
|
||||
"PER_CODE" VARCHAR2(64) default '' NOT NULL,
|
||||
"PER_CREATE_DATE" DATE default '0000-00-00 00:00:00' NOT NULL,
|
||||
"PER_UPDATE_DATE" DATE default '0000-00-00 00:00:00' NOT NULL,
|
||||
"PER_STATUS" NUMBER default 1 NOT NULL
|
||||
|
||||
@@ -557,19 +557,7 @@ class workspaceTools
|
||||
//Update APP_DELEGATION.DEL_LAST_INDEX data
|
||||
$res = $appCache->updateAppDelegationDelLastIndex($lang, $flagRecreate);
|
||||
|
||||
CLI::logging("-> Verifying roles permissions in RBAC \n");
|
||||
//Update table RBAC permissions
|
||||
Bootstrap::LoadSystem( 'rbac' );
|
||||
$RBAC = & RBAC::getSingleton();
|
||||
$RBAC->initRBAC();
|
||||
$result = $RBAC->verifyPermissions();
|
||||
if (count($result) > 1) {
|
||||
foreach ($result as $item) {
|
||||
CLI::logging(" $item... \n");
|
||||
}
|
||||
} else {
|
||||
CLI::logging(" All roles permissions already updated \n");
|
||||
}
|
||||
|
||||
|
||||
CLI::logging("-> Creating triggers\n");
|
||||
|
||||
@@ -748,6 +736,7 @@ class workspaceTools
|
||||
$this->upgradeSchema($systemSchema);
|
||||
$this->upgradeSchema($systemSchemaRbac, false, true, $onedb); // perform Upgrade to Rbac
|
||||
$this->upgradeData();
|
||||
$this->checkRbacPermissions();//check or add new permissions
|
||||
|
||||
//There records in table "EMAIL_SERVER"
|
||||
$criteria = new Criteria("workflow");
|
||||
@@ -2280,6 +2269,7 @@ class workspaceTools
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Register system tables in a file
|
||||
*
|
||||
@@ -2298,4 +2288,23 @@ class workspaceTools
|
||||
throw (new Exception( G::LoadTranslation('ID_FILE_NOT_WRITEABLE', SYS_LANG, array($sysTablesIniFile) ) ));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*return void
|
||||
*/
|
||||
public function checkRbacPermissions(){
|
||||
CLI::logging("-> Verifying roles permissions in RBAC \n");
|
||||
//Update table RBAC permissions
|
||||
Bootstrap::LoadSystem('rbac');
|
||||
$RBAC = &RBAC::getSingleton();
|
||||
$RBAC->initRBAC();
|
||||
$result = $RBAC->verifyPermissions();
|
||||
if (count($result) > 1) {
|
||||
foreach ($result as $item) {
|
||||
CLI::logging(" $item... \n");
|
||||
}
|
||||
} else {
|
||||
CLI::logging(" All roles permissions already updated \n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -167,7 +167,7 @@ class Admin extends Controller
|
||||
public function pmLogo ($httpData)
|
||||
{
|
||||
global $RBAC;
|
||||
$RBAC->requirePermissions( 'PM_SETUP_ADVANCE' );
|
||||
$RBAC->requirePermissions( 'PM_SETUP_ADVANCE', 'PM_SETUP_LOGO');
|
||||
|
||||
G::LoadClass( 'configuration' );
|
||||
$c = new Configurations();
|
||||
|
||||
@@ -24,7 +24,7 @@ class pmTables extends Controller
|
||||
public function index ($httpData)
|
||||
{
|
||||
global $RBAC;
|
||||
$RBAC->requirePermissions( 'PM_SETUP_ADVANCE' );
|
||||
$RBAC->requirePermissions( 'PM_SETUP_ADVANCE', 'PM_SETUP_PM_TABLES' );
|
||||
|
||||
G::LoadClass( 'configuration' );
|
||||
$c = new Configurations();
|
||||
|
||||
@@ -11,6 +11,24 @@ SELECT 'PER_NAME','','00000000000000000000000000000016','en','Add Folders' UNION
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000017','en','Add file in folders' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000018','en','Cancel cases' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000019','en','Delete folders' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000020','en','Setup Logo' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000021','en','Setup Email' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000022','en','Setup Calendar' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000023','en','Setup Process Categories' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000024','en','Setup Clear Cache' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000025','en','Setup Heart Beat' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000026','en','Setup Environment' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000027','en','Setup PM Tables' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000028','en','Setup Login' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000029','en','Setup Dashborads' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000030','en','Setup Language' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000031','en','Setup Skin' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000032','en','Setup Case List Cache Builder' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000033','en','Setup Plugins' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000034','en','Setup User Authentication Sources' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000035','en','Setup Logs' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000036','en','Delete process cases' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000037','en','Edit personal info Calendar' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000013','en','Delete cases' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000012','en','WebDav' UNION ALL
|
||||
SELECT 'PER_NAME','','00000000000000000000000000000011','en','Dashboard' UNION ALL
|
||||
|
||||
@@ -11,6 +11,24 @@ INSERT INTO CONTENT (CON_CATEGORY,CON_PARENT,CON_ID,CON_LANG,CON_VALUE) VALUES
|
||||
('PER_NAME','','00000000000000000000000000000017','en','Add file in folders'),
|
||||
('PER_NAME','','00000000000000000000000000000018','en','Cancel cases'),
|
||||
('PER_NAME','','00000000000000000000000000000019','en','Delete folders'),
|
||||
('PER_NAME','','00000000000000000000000000000020','en','Setup Logo'),
|
||||
('PER_NAME','','00000000000000000000000000000021','en','Setup Email'),
|
||||
('PER_NAME','','00000000000000000000000000000022','en','Setup Calendar'),
|
||||
('PER_NAME','','00000000000000000000000000000023','en','Setup Process Categories'),
|
||||
('PER_NAME','','00000000000000000000000000000024','en','Setup Clear Cache'),
|
||||
('PER_NAME','','00000000000000000000000000000025','en','Setup Heart Beat'),
|
||||
('PER_NAME','','00000000000000000000000000000026','en','Setup Environment'),
|
||||
('PER_NAME','','00000000000000000000000000000027','en','Setup PM Tables'),
|
||||
('PER_NAME','','00000000000000000000000000000028','en','Setup Login'),
|
||||
('PER_NAME','','00000000000000000000000000000029','en','Setup Dashborads'),
|
||||
('PER_NAME','','00000000000000000000000000000030','en','Setup Language'),
|
||||
('PER_NAME','','00000000000000000000000000000031','en','Setup Skin'),
|
||||
('PER_NAME','','00000000000000000000000000000032','en','Setup Case List Cache Builder'),
|
||||
('PER_NAME','','00000000000000000000000000000033','en','Setup Plugins'),
|
||||
('PER_NAME','','00000000000000000000000000000034','en','Setup User Authentication Sources'),
|
||||
('PER_NAME','','00000000000000000000000000000035','en','Setup Logs'),
|
||||
('PER_NAME','','00000000000000000000000000000036','en','Delete process cases'),
|
||||
('PER_NAME','','00000000000000000000000000000037','en','Edit personal info Calendar'),
|
||||
('PER_NAME','','00000000000000000000000000000013','en','Delete cases'),
|
||||
('PER_NAME','','00000000000000000000000000000012','en','WebDav'),
|
||||
('PER_NAME','','00000000000000000000000000000011','en','Dashboard'),
|
||||
|
||||
@@ -31,97 +31,217 @@ $oServerConf = & serverConf::getSingleton();
|
||||
$sAudit = $oServerConf->getAuditLogProperty('AL_OPTION', SYS_SYS);
|
||||
$licensedFeatures = &PMLicensedFeatures::getSingleton();
|
||||
/*----------------------------------********---------------------------------*/
|
||||
|
||||
if ($RBAC->userCanAccess('PM_SETUP') == 1 ) {
|
||||
//settings options
|
||||
// $G_TMP_MENU->AddIdRawOption('LOGO', 'uplogo', G::LoadTranslation('ID_LOGO'), 'icon-pmlogo.png', '', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption('LOGO', '../admin/pmLogo', G::LoadTranslation('ID_LOGO'), 'icon-pmlogo.png','', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption("EMAIL_SERVER", "../emailServer/emailServer", G::LoadTranslation("ID_EMAIL_SERVER_TITLE"), "icon-email-settings1.png", "", "settings");
|
||||
$G_TMP_MENU->AddIdRawOption('CALENDAR', 'calendarList', G::LoadTranslation('ID_CALENDAR'), 'icon-calendar.png', '', 'settings' );
|
||||
//if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') == 1)
|
||||
// $G_TMP_MENU->AddIdRawOption('CASES_LIST_SETUP', '../cases/casesListSetup', G::LoadTranslation('ID_CASES_LIST_SETUP'), "",'', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption('PROCESS_CATEGORY', '../processCategory/processCategoryList', G::LoadTranslation('ID_PROCESS_CATEGORY'), "rules.png",'', 'settings');
|
||||
if ($RBAC->userCanAccess('PM_SETUP') === 1) {
|
||||
$pmSetupPermission = true;
|
||||
if ($RBAC->userCanAccess('PM_SETUP_LOGO') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'LOGO', '../admin/pmLogo',
|
||||
G::LoadTranslation('ID_LOGO'),
|
||||
'icon-pmlogo.png', '','settings'
|
||||
);
|
||||
}
|
||||
if ($RBAC->userCanAccess('PM_SETUP_EMAIL') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
"EMAIL_SERVER", "../emailServer/emailServer",
|
||||
G::LoadTranslation("ID_EMAIL_SERVER_TITLE"),
|
||||
"icon-email-settings1.png", "", "settings"
|
||||
);
|
||||
}
|
||||
if ($RBAC->userCanAccess('PM_SETUP_CALENDAR') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'CALENDAR', 'calendarList',
|
||||
G::LoadTranslation('ID_CALENDAR'),
|
||||
'icon-calendar.png', '', 'settings'
|
||||
);
|
||||
}
|
||||
if ($RBAC->userCanAccess('PM_SETUP_PROCESS_CATEGORIES') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PROCESS_CATEGORY', '../processCategory/processCategoryList',
|
||||
G::LoadTranslation('ID_PROCESS_CATEGORY'),
|
||||
"rules.png", '', 'settings'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('LANGUAGES', 'languages', G::LoadTranslation('ID_LANGUAGES'), 'icon-language.png', '', 'settings');
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') === 1) {
|
||||
if ($RBAC->userCanAccess('PM_SETUP_LANGUAGE') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'LANGUAGES', 'languages',
|
||||
G::LoadTranslation('ID_LANGUAGES'),
|
||||
'icon-language.png','', 'settings'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if ($RBAC->userCanAccess('PM_SETUP') == 1 ) {
|
||||
$G_TMP_MENU->AddIdRawOption('SKINS', 'skinsList', G::LoadTranslation('ID_SKINS'), 'icon-skins.png', '', 'settings');
|
||||
if ($RBAC->userCanAccess('PM_SETUP') === 1) {
|
||||
if ($RBAC->userCanAccess('PM_SETUP_SKIN') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'SKINS', 'skinsList',
|
||||
G::LoadTranslation('ID_SKINS'),
|
||||
'icon-skins.png', '', 'settings'
|
||||
);
|
||||
}
|
||||
if (!$partnerFlag) {
|
||||
$G_TMP_MENU->AddIdRawOption('HEARTBEAT', 'processHeartBeatConfig', G::LoadTranslation('ID_HEARTBEAT_CONFIG'), "heartBeat.jpg",'', 'settings');
|
||||
if ($RBAC->userCanAccess('PM_SETUP_HEART_BEAT') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'HEARTBEAT', 'processHeartBeatConfig',
|
||||
G::LoadTranslation('ID_HEARTBEAT_CONFIG'),
|
||||
"heartBeat.jpg", '', 'settings'
|
||||
);
|
||||
}
|
||||
}
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ENVIRONMENT') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'ENVIRONMENT_SETTINGS', 'environmentSettings',
|
||||
G::LoadTranslation('ID_ENVIRONMENT_SETTINGS'),
|
||||
"", '', 'settings'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
$G_TMP_MENU->AddIdRawOption('ENVIRONMENT_SETTINGS', 'environmentSettings', G::LoadTranslation('ID_ENVIRONMENT_SETTINGS'), "",'', 'settings');
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'APPCACHEVIEW_SETUP', '../setup/appCacheViewConf',
|
||||
G::LoadTranslation('ID_APPCACHE_SETUP'),
|
||||
"", '', 'settings'
|
||||
);
|
||||
}
|
||||
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('APPCACHEVIEW_SETUP', '../setup/appCacheViewConf', G::LoadTranslation('ID_APPCACHE_SETUP'), "",'', 'settings');
|
||||
if ($RBAC->userCanAccess('PM_SETUP') === 1) {
|
||||
if ($RBAC->userCanAccess('PM_SETUP_CLEAR_CACHE') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'CLEAR_CACHE', 'clearCompiled',
|
||||
G::LoadTranslation('ID_CLEAR_CACHE'),
|
||||
'icon-rebuild-clean.png', "", 'settings'
|
||||
);
|
||||
}
|
||||
|
||||
if ($RBAC->userCanAccess('PM_SETUP') == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('CLEAR_CACHE', 'clearCompiled', G::LoadTranslation('ID_CLEAR_CACHE'), 'icon-rebuild-clean.png', "", 'settings' );
|
||||
//$G_TMP_MENU->AddIdRawOption('ADDITIONAL_TABLES', '../additionalTables/additionalTablesList', G::LoadTranslation('ID_ADDITIONAL_TABLES'), 'icon-tables.png','', 'settings');
|
||||
//$G_TMP_MENU->AddIdRawOption('REPORT_TABLES', '../reportTables/main', 'Report Tables', 'icon-tables.png','', 'settings');
|
||||
|
||||
$G_TMP_MENU->AddIdRawOption('PM_TABLES', '../pmTables', G::LoadTranslation('ID_ADDITIONAL_TABLES'), 'icon-tables.png','', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption('LOGIN', 'loginSettings', G::LoadTranslation('LOGIN'), "",'', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption('DASHBOARD', '../dashboard/dashletsList', ucfirst(G::LoadTranslation('ID_DASHBOARD')), '', '', 'settings');
|
||||
if ($RBAC->userCanAccess('PM_SETUP_PM_TABLES') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PM_TABLES', '../pmTables',
|
||||
G::LoadTranslation('ID_ADDITIONAL_TABLES'),
|
||||
'icon-tables.png', '', 'settings'
|
||||
);
|
||||
}
|
||||
if ($RBAC->userCanAccess('PM_SETUP_LOGIN') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'LOGIN', 'loginSettings',
|
||||
G::LoadTranslation('LOGIN'),
|
||||
"", '', 'settings'
|
||||
);
|
||||
}
|
||||
if ($RBAC->userCanAccess('PM_SETUP_DASHBOARDS') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'DASHBOARD', '../dashboard/dashletsList',
|
||||
ucfirst(G::LoadTranslation('ID_DASHBOARD')),
|
||||
'', '', 'settings'
|
||||
);
|
||||
/*----------------------------------********---------------------------------*/
|
||||
|
||||
if ($licensedFeatures->verifyfeature('r19Vm5DK1UrT09MenlLYjZxejlhNUZ1b1NhV0JHWjBsZEJ6dnpJa3dTeWVLVT0=')) {
|
||||
$G_TMP_MENU->AddIdRawOption('STRATEGIC_DASHBOARD', '../strategicDashboard/dashboardList', ucfirst(G::LoadTranslation('ID_STRATEGIC_DASHBOARD')), '', '', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'STRATEGIC_DASHBOARD', '../strategicDashboard/dashboardList',
|
||||
ucfirst(G::LoadTranslation('ID_STRATEGIC_DASHBOARD')),
|
||||
'', '', 'settings'
|
||||
);
|
||||
}
|
||||
if ($licensedFeatures->verifyfeature('7qhYmF1eDJWcEdwcUZpT0k4S0xTRStvdz09') || $licensedFeatures->verifyfeature('AhKNjBEVXZlWUFpWE8wVTREQ0FObmo0aTdhVzhvalFic1M=')) {
|
||||
$G_TMP_MENU->AddIdRawOption('PMGMAIL', '../pmGmail/formPMGmail', ucfirst(G::LoadTranslation('ID_GOOGLEINTEGRATION')), '', '', 'settings');
|
||||
if ($licensedFeatures->verifyfeature('7qhYmF1eDJWcEdwcUZpT0k4S0xTRStvdz09')) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PMGMAIL', '../pmGmail/formPMGmail',
|
||||
ucfirst(G::LoadTranslation('ID_PMGMAIL')),
|
||||
'', '', 'settings'
|
||||
);
|
||||
}
|
||||
|
||||
/*----------------------------------********---------------------------------*/
|
||||
|
||||
}
|
||||
}
|
||||
//tools options
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') == 1 ) {
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') === 1) {
|
||||
if (!$partnerFlag) {
|
||||
$G_TMP_MENU->AddIdRawOption('PLUGINS', 'pluginsMain', G::LoadTranslation('ID_PLUGINS_MANAGER'), 'icon-plugins.png', '', 'plugins');
|
||||
if ($RBAC->userCanAccess('PM_SETUP_PLUGINS') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PLUGINS', 'pluginsMain',
|
||||
G::LoadTranslation('ID_PLUGINS_MANAGER'),
|
||||
'icon-plugins.png', '', 'plugins'
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//users options
|
||||
if ($RBAC->userCanAccess('PM_USERS') == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('USERS', '../users/users_List', G::LoadTranslation('ID_USERS_LIST'), 'icon-webservices.png', '', 'users');
|
||||
|
||||
if ($RBAC->userCanAccess('PM_USERS') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('USERS', '../users/users_List', G::LoadTranslation('ID_USERS_LIST'),
|
||||
'icon-webservices.png', '', 'users');
|
||||
$G_TMP_MENU->AddIdRawOption('GROUPS', '../groups/groups', G::LoadTranslation('ID_GROUPS'), '', '', 'users');
|
||||
$G_TMP_MENU->AddIdRawOption('DEPARTAMENTS', '../departments/departments', G::LoadTranslation('ID_DEPARTMENTS_USERS'), '', '', 'users');
|
||||
$G_TMP_MENU->AddIdRawOption('ROLES', '../roles/roles_List', G::LoadTranslation('ID_ROLES'), '', '', 'users');
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'DEPARTAMENTS', '../departments/departments',
|
||||
G::LoadTranslation('ID_DEPARTMENTS_USERS'),
|
||||
'', '', 'users'
|
||||
);
|
||||
$G_TMP_MENU->AddIdRawOption('ROLES', '../roles/roles_List',
|
||||
G::LoadTranslation('ID_ROLES'),
|
||||
'', '', 'users'
|
||||
);
|
||||
}
|
||||
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') == 1 && $RBAC->userCanAccess('PM_USERS') == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('AUTHSOURCES', '../authSources/authSources_List', G::LoadTranslation('ID_AUTH_SOURCES'), '', '', 'users');
|
||||
if ($RBAC->userCanAccess('PM_SETUP_ADVANCE') === 1 && $RBAC->userCanAccess('PM_USERS') === 1 && $RBAC->userCanAccess
|
||||
('PM_SETUP_USERS_AUTHENTICATION_SOURCES') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'AUTHSOURCES', '../authSources/authSources_List',
|
||||
G::LoadTranslation('ID_AUTH_SOURCES'),
|
||||
'', '', 'users'
|
||||
);
|
||||
$G_TMP_MENU->AddIdRawOption('UX', '../admin/uxList', G::LoadTranslation('ID_USER_EXPERIENCE'), '', '', 'users');
|
||||
$G_TMP_MENU->AddIdRawOption('SYSTEM', '../admin/system', G::LoadTranslation('ID_SYSTEM'), '', '', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption('INFORMATION', '../setup/systemInfo?option=processInfo', G::LoadTranslation('ID_SYSTEM_INFO'), '', '', 'settings');
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'INFORMATION', '../setup/systemInfo?option=processInfo',
|
||||
G::LoadTranslation('ID_SYSTEM_INFO'),
|
||||
'', '', 'settings'
|
||||
);
|
||||
}
|
||||
|
||||
if ($RBAC->userCanAccess('PM_SETUP') == 1) {
|
||||
if ($RBAC->userCanAccess('PM_SETUP') === 1 && $RBAC->userCanAccess('PM_SETUP_LOGS') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('EVENT', '../events/eventList', G::LoadTranslation('ID_EVENTS'), '', '', 'logs');
|
||||
$G_TMP_MENU->AddIdRawOption('LOG_CASE_SCHEDULER', '../cases/cases_Scheduler_Log', G::LoadTranslation('ID_CASE_SCHEDULER'), "icon-logs-list.png",'', 'logs');
|
||||
$G_TMP_MENU->AddIdRawOption("CRON", "../setup/cron", G::LoadTranslation("ID_CRON_ACTIONS"), null, null, "logs");
|
||||
$G_TMP_MENU->AddIdRawOption('EMAILS', '../mails/emailList', ucfirst (strtolower ( G::LoadTranslation('ID_EMAILS'))), '', '', 'logs');
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'LOG_CASE_SCHEDULER', '../cases/cases_Scheduler_Log',
|
||||
G::LoadTranslation('ID_CASE_SCHEDULER'),
|
||||
"icon-logs-list.png", '', 'logs'
|
||||
);
|
||||
$G_TMP_MENU->AddIdRawOption("CRON", "../setup/cron", G::LoadTranslation("ID_CRON_ACTIONS"), null, null, 'logs');
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'EMAILS', '../mails/emailList',
|
||||
ucfirst(strtolower(G::LoadTranslation('ID_EMAILS'))),
|
||||
'', '', 'logs'
|
||||
);
|
||||
/*----------------------------------********---------------------------------*/
|
||||
if (isset($sAudit) && $sAudit != false && $licensedFeatures->verifyfeature('vtSeHNhT0JnSmo1bTluUVlTYUxUbUFSVStEeXVqc1pEUG5EeXc0MGd2Q3ErYz0=')) {
|
||||
$G_TMP_MENU->AddIdRawOption('AUDIT_LOG', '../setup/auditLog', ucfirst (G::LoadTranslation('ID_AUDITLOG_DISPLAY')), '', '', 'logs');
|
||||
if (isset($sAudit) && $sAudit !== false && $licensedFeatures->verifyfeature
|
||||
('vtSeHNhT0JnSmo1bTluUVlTYUxUbUFSVStEeXVqc1pEUG5EeXc0MGd2Q3ErYz0=')
|
||||
) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'AUDIT_LOG', '../setup/auditLog',
|
||||
ucfirst(G::LoadTranslation('ID_AUDITLOG_DISPLAY')),
|
||||
'', '', 'logs'
|
||||
);
|
||||
}
|
||||
/*----------------------------------********---------------------------------*/
|
||||
}
|
||||
|
||||
if ($RBAC->userCanAccess("PM_SETUP") == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption("PM_REQUIREMENTS", "../setup/systemInfo", G::LoadTranslation("ID_PROCESSMAKER_REQUIREMENTS_CHECK"), "", "", "settings");
|
||||
$G_TMP_MENU->AddIdRawOption("PHP_INFO", "../setup/systemInfo?option=php", G::LoadTranslation("ID_PHP_INFO"), "", "", "settings");
|
||||
//$G_TMP_MENU->AddIdRawOption("PHP_MAINTENANCE", "../admin/maintenance", 'Maintenance', "", "", "settings");
|
||||
if ($RBAC->userCanAccess('PM_SETUP') === 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PM_REQUIREMENTS', '../setup/systemInfo',
|
||||
G::LoadTranslation('ID_PROCESSMAKER_REQUIREMENTS_CHECK'),
|
||||
'', '', 'settings'
|
||||
);
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PHP_INFO', '../setup/systemInfo?option=php',
|
||||
G::LoadTranslation('ID_PHP_INFO'),
|
||||
'','', 'settings'
|
||||
);
|
||||
/*----------------------------------********---------------------------------*/
|
||||
if ($licensedFeatures->verifyfeature('vtSeHNhT0JnSmo1bTluUVlTYUxUbUFSVStEeXVqc1pEUG5EeXc0MGd2Q3ErYz0=')) {
|
||||
$G_TMP_MENU->AddIdRawOption("AUDIT_LOG", "auditLogConfig", G::LoadTranslation("ID_AUDITLOG_DISPLAY"), "", "", "settings");
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
"AUDIT_LOG", "auditLogConfig",
|
||||
G::LoadTranslation("ID_AUDITLOG_DISPLAY"),
|
||||
"", "","settings"
|
||||
);
|
||||
}
|
||||
/*----------------------------------********---------------------------------*/
|
||||
}
|
||||
@@ -151,18 +271,34 @@ if ($licenseStatusInfo["message"] != "") {
|
||||
$licStatusMsg = " <font color=\"red\">(" . $licenseStatusInfo["message"] . ")</font>";
|
||||
}
|
||||
/*----------------------------------********---------------------------------*/
|
||||
if ($RBAC->userCanAccess("PM_SETUP") == 1) {
|
||||
if ($RBAC->userCanAccess('PM_SETUP') == 1) {
|
||||
/*----------------------------------********---------------------------------*/
|
||||
$G_TMP_MENU->AddIdRawOption("PMENTERPRISE", "../enterprise/addonsStore", G::LoadTranslation('ID_MENU_NAME') . $licStatusMsg, "", "", "plugins");
|
||||
if ($RBAC->userCanAccess('PM_SETUP_CASES_LIST_CACHE_BUILDER') == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PMENTERPRISE', '../enterprise/addonsStore',
|
||||
G::LoadTranslation('ID_MENU_NAME') .$licStatusMsg,
|
||||
'', '', 'plugins'
|
||||
);
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'CASES_LIST_SETUP', '../cases/casesListSetup',
|
||||
G::LoadTranslation('ID_CUSTOM_CASES_LISTS'),
|
||||
'', '', 'settings');
|
||||
}
|
||||
/*----------------------------------********---------------------------------*/
|
||||
$G_TMP_MENU->AddIdRawOption("CASES_LIST_SETUP", "../cases/casesListSetup", G::LoadTranslation("ID_CUSTOM_CASES_LISTS"), "", "", "settings");
|
||||
}
|
||||
|
||||
/*----------------------------------********---------------------------------*/
|
||||
$oPluginRegistry = &PMPluginRegistry::getSingleton();
|
||||
$oObject = $oPluginRegistry->getPlugin("actionsByEmail");
|
||||
if (!(get_class($oObject) === "actionsByEmailPlugin") &&
|
||||
$licensedFeatures->verifyfeature('zLhSk5TeEQrNFI2RXFEVktyUGpnczV1WEJNWVp6cjYxbTU3R29mVXVZNWhZQT0=')) {
|
||||
$G_TMP_MENU->AddIdRawOption('PM_ACTIONS_BY_EMAIL_LOGS', '../actionsByEmail/ActionByEmail.php', G::LoadTranslation("ID_ACTIONS_BY_EMAIL_LOG"), '', '', 'logs');
|
||||
$licensedFeatures->verifyfeature('zLhSk5TeEQrNFI2RXFEVktyUGpnczV1WEJNWVp6cjYxbTU3R29mVXVZNWhZQT0=') &&
|
||||
$RBAC->userCanAccess('PM_SETUP_LOGS') == 1
|
||||
) {
|
||||
$G_TMP_MENU->AddIdRawOption(
|
||||
'PM_ACTIONS_BY_EMAIL_LOGS',
|
||||
'../actionsByEmail/ActionByEmail.php',
|
||||
G::LoadTranslation("ID_ACTIONS_BY_EMAIL_LOG"),
|
||||
'', '', 'logs'
|
||||
);
|
||||
}
|
||||
/*----------------------------------********---------------------------------*/
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
G::LoadClass( 'configuration' );
|
||||
$c = new Configurations();
|
||||
|
||||
$access = $RBAC->userCanAccess( 'PM_USERS' );
|
||||
$access = $RBAC->requirePermissions( 'PM_USERS' );
|
||||
if ($access != 1) {
|
||||
switch ($access) {
|
||||
case - 1:
|
||||
|
||||
@@ -23,7 +23,8 @@
|
||||
*/
|
||||
|
||||
global $RBAC;
|
||||
if ($RBAC->userCanAccess( 'PM_SETUP_ADVANCE' ) != 1) {
|
||||
$resultRbac = $RBAC->requirePermissions('PM_SETUP_ADVANCE', 'PM_SETUP_LOGS');
|
||||
if (!$resultRbac) {
|
||||
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels');
|
||||
G::header('location: ../login/login');
|
||||
die();
|
||||
@@ -64,12 +65,11 @@ $oHeadPublisher->assign( 'typeValues', $type );
|
||||
$oHeadPublisher->assign('statusValues', $status);
|
||||
$oHeadPublisher->assign('processValues', $processes);
|
||||
|
||||
function getProcessArray ($userUid)
|
||||
{
|
||||
function getProcessArray($userUid) {
|
||||
global $oAppCache;
|
||||
require_once("classes/model/AppCacheView.php");
|
||||
|
||||
$processes = Array ();
|
||||
$processes = array();
|
||||
$processes[] = array('', G::LoadTranslation('ID_ALL_PROCESS'));
|
||||
|
||||
$cProcess = new Criteria('workflow');
|
||||
|
||||
@@ -21,9 +21,13 @@
|
||||
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||
*/
|
||||
|
||||
$resultRbac = $RBAC_Response = $RBAC->requirePermissions("PM_USERS");
|
||||
if (!$resultRbac) {
|
||||
return $RBAC_Response;
|
||||
}
|
||||
global $RBAC;
|
||||
$access = $RBAC->userCanAccess('PM_USERS');
|
||||
if ($access != 1) {
|
||||
if ($access !== 1) {
|
||||
switch ($access) {
|
||||
case -1:
|
||||
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels');
|
||||
|
||||
@@ -23,7 +23,8 @@
|
||||
*/
|
||||
|
||||
global $RBAC;
|
||||
if ($RBAC->userCanAccess( 'PM_SETUP_ADVANCE' ) != 1) {
|
||||
$resultRbac = $RBAC->requirePermissions('PM_SETUP_ADVANCE', 'PM_SETUP_LOGS');
|
||||
if (!$resultRbac) {
|
||||
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels');
|
||||
G::header('location: ../login/login');
|
||||
die();
|
||||
@@ -58,12 +59,11 @@ $oHeadPublisher->addContent( 'mails/emailList' ); //adding a html file .html.
|
||||
$oHeadPublisher->assign('statusValues', $status);
|
||||
$oHeadPublisher->assign('processValues', $processes);
|
||||
|
||||
function getProcessArray ($userUid)
|
||||
{
|
||||
function getProcessArray($userUid) {
|
||||
global $oAppCache;
|
||||
require_once("classes/model/AppCacheView.php");
|
||||
|
||||
$processes = Array ();
|
||||
$processes = array();
|
||||
$processes[] = array('', G::LoadTranslation('ID_ALL_PROCESS'));
|
||||
|
||||
$cProcess = new Criteria('workflow');
|
||||
|
||||
@@ -21,8 +21,13 @@
|
||||
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||
*/
|
||||
$RBAC_Response = $RBAC->requirePermissions('PM_USERS');
|
||||
if (!$RBAC_Response) {
|
||||
return $RBAC_Response;
|
||||
}
|
||||
global $RBAC;
|
||||
switch ($RBAC->userCanAccess( 'PM_USERS' )) {
|
||||
$access = $RBAC->userCanAccess('PM_USERS');
|
||||
switch ($access !== 1) {
|
||||
case -2:
|
||||
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels');
|
||||
G::header('location: ../login/login');
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||
*/
|
||||
$RBAC->requirePermissions( 'PM_SETUP_ADVANCE' );
|
||||
$RBAC->requirePermissions( 'PM_SETUP_ADVANCE', 'PM_SETUP_LANGUAGE');
|
||||
|
||||
$oHeadPublisher->addExtJsScript( 'setup/languages', false ); //adding a javascript file .js
|
||||
$oHeadPublisher->addContent( 'setup/languages' ); //adding a html file .html.
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||
*/
|
||||
global $RBAC;
|
||||
$RBAC->requirePermissions( 'PM_SETUP' );
|
||||
$RBAC->requirePermissions( 'PM_SETUP', 'PM_SETUP_HEART_BEAT');
|
||||
|
||||
$oHeadPublisher = & headPublisher::getSingleton();
|
||||
G::LoadClass( 'serverConfiguration' );
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
||||
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
||||
*/
|
||||
if (($RBAC_Response = $RBAC->userCanAccess( "PM_LOGIN" )) != 1)
|
||||
$RBAC_Response = $RBAC->requirePermissions('PM_USERS');
|
||||
if (!$RBAC_Response)
|
||||
return $RBAC_Response;
|
||||
global $RBAC;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user