Roles Manager Ext JS Migration Complete

This commit is contained in:
Enrique Ponce de Leon
2011-01-21 22:48:35 +00:00
parent d0581a3f3e
commit 4cd8a15c73
12 changed files with 1481 additions and 42 deletions

View File

@@ -0,0 +1,46 @@
<?php
/**
* data_additionalTablesList.php
*
* ProcessMaker Open Source Edition
* Copyright (C) 2004 - 2008 Colosa Inc.23
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*
*/
require_once (PATH_RBAC . "model/RolesPeer.php");
G::LoadClass('ArrayPeer');
isset($_POST['textFilter']) ? $filter = $_POST['textFilter'] : $filter = '';
if ($filter != ""){
$aRoles = $RBAC->getAllRolesFilter($filter);
}else{
$aRoles = $RBAC->getAllRoles();
}
//$ocaux = $oAdditionalTables->getDataCriteria($_GET['sUID']);
//
//$rs = AdditionalTablesPeer::DoSelectRs ($ocaux);
//$rs->setFetchmode (ResultSet::FETCHMODE_ASSOC);
//
//$rows = Array();
//while($rs->next()){
// $rows[] = $rs->getRow();
//}
echo '{roles: '.G::json_encode($aRoles).'}';

View File

@@ -0,0 +1,38 @@
<?php
/**
* data_rolesPermissions.php
*
* ProcessMaker Open Source Edition
* Copyright (C) 2004 - 2008 Colosa Inc.23
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*
*/
$ROL_UID = $_GET['rUID'];
$TYPE_DATA = $_GET["type"];
global $RBAC;
if ($TYPE_DATA=='list') $oDataset = $RBAC->getRolePermissions($ROL_UID);
if ($TYPE_DATA=='show') $oDataset = $RBAC->getAllPermissions($ROL_UID,$RBAC->sSystem);
$rows = Array();
while($oDataset->next()){
$rows[] = $oDataset->getRow();
}
echo '{permissions: '.G::json_encode($rows).'}';

View File

@@ -0,0 +1,38 @@
<?php
/**
* data_rolesUsers.php
*
* ProcessMaker Open Source Edition
* Copyright (C) 2004 - 2008 Colosa Inc.23
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*
*/
$ROL_UID = $_GET['rUID'];
$TYPE_DATA = $_GET["type"];
global $RBAC;
if ($TYPE_DATA=='list') $oDataset = $RBAC->getRoleUsers($ROL_UID);
if ($TYPE_DATA=='show') $oDataset = $RBAC->getAllUsers($ROL_UID);
$rows = Array();
while($oDataset->next()){
$rows[] = $oDataset->getRow();
}
echo '{users: '.G::json_encode($rows).'}';

View File

@@ -0,0 +1,75 @@
<?php
/**
* rolesUsersPermission.php
*
* ProcessMaker Open Source Edition
* Copyright (C) 2004 - 2008 Colosa Inc.23
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*
**/
global $RBAC;
switch ($RBAC->userCanAccess('PM_USERS')) {
case - 2:
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels');
G::header('location: ../login/login');
die;
break;
case - 1:
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels');
G::header('location: ../login/login');
die;
break;
case -3:
G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels');
G::header('location: ../login/login');
die;
break;
}
$G_MAIN_MENU = 'processmaker';
$G_SUB_MENU = 'users';
$G_ID_MENU_SELECTED = 'USERS';
$G_ID_SUB_MENU_SELECTED = 'ROLES';
$G_PUBLISH = new Publisher;
$oHeadPublisher =& headPublisher::getSingleton();
$oHeadPublisher->addExtJsScript('roles/rolesUsersPermission', false); //adding a javascript file .js
$oHeadPublisher->addContent('roles/rolesUsersPermission'); //adding a html file .html.
$labels = G::getTranslations(Array('ID_PRO_CREATE_DATE','ID_CODE','ID_NAME','ID_LAN_UPDATE_DATE', 'ID_ROLES',
'ID_USERS','ID_PERMISSIONS','ID_EDIT','ID_DELETE','ID_NEW','ID_STATUS','ID_SAVE','ID_CLOSE',
'ID_ACTIVE','ID_INACTIVE','ID_ROLES_MSG','ID_ROLES_CAN_NOT_DELETE','ID_ROLES_SUCCESS_NEW','ID_ROLES_SUCCESS_UPDATE',
'ID_ROLES_SUCCESS_DELETE','ID_REMOVE_ROLE','ID_ASSIGN','ID_REMOVE','ID_BACK','ID_PROCESSING',
'ID_REMOVE_ALL_PERMISSIONS','ID_ASSIGN_ALL_PERMISSIONS','ID_ASSIGN_ALL_USERS','ID_REMOVE_ALL_USERS',
'ID_USER_NAME','ID_PERMISSION_CODE','ID_AVAILABLE_PERMISSIONS','ID_ASSIGNED_PERMISSIONS',
'ID_FIRST_NAME','ID_LAST_NAME','ID_AVAILABLE_USERS','ID_ASSIGNED_USERS','ID_MSG_CONFIRM_ASSIGN_ALL_USERS','ID_MSG_AJAX_FAILURE'));
$roles = Array();
$roles['ROL_UID'] = $_GET['rUID'];
$roles['ROL_CODE'] = $RBAC->getRoleCode($_GET['rUID']);
$roles['CURRENT_TAB'] = ($_GET['tab']=='permissions') ? 1 : 0;
$oHeadPublisher->assign('TRANSLATIONS', $labels);
$oHeadPublisher->assign('ROLES', $roles);
G::RenderPage('publish', 'extJs');
?>

View File

@@ -34,6 +34,7 @@ switch ($REQUEST) {
break;
case 'saveNewRole':
$newid = md5($_POST['code'].date("d-M-Y_H:i:s"));
g::pr($_POST);
@@ -187,18 +188,17 @@ switch ($REQUEST) {
case 'assignUserToRole':
$ROL_UID = $_POST['ROL_UID'];
$aUserIuds = explode(",",$_POST['aUsers']);
foreach($aUserIuds as $key=>$val){
$sData['USR_UID'] = $val;
$sData['ROL_UID'] = $ROL_UID;
$RBAC->assignUserToRole($sData);
}
$aUserIuds = explode(",",$_POST['aUsers']);
foreach($aUserIuds as $key=>$val){
$sData['USR_UID'] = $val;
$sData['ROL_UID'] = $ROL_UID;
$RBAC->assignUserToRole($sData);
}
$_GET['ROL_UID'] = $ROL_UID;
$G_PUBLISH = new Publisher;
$G_PUBLISH->AddContent('view', 'roles/roles_Tree' );
G::RenderPage('publish', 'raw');
// $_GET['ROL_UID'] = $ROL_UID;
// $G_PUBLISH = new Publisher;
// $G_PUBLISH->AddContent('view', 'roles/roles_Tree' );
// G::RenderPage('publish', 'raw');
break;
case 'assignPermissionToRole':
@@ -208,10 +208,10 @@ switch ($REQUEST) {
$sData['ROL_UID'] = $ROL_UID;
$RBAC->assignPermissionRole($sData);
$_GET['ROL_UID'] = $ROL_UID;
$G_PUBLISH = new Publisher;
$G_PUBLISH->AddContent('view', 'roles/roles_permissionsTree' );
G::RenderPage('publish', 'raw');
// $_GET['ROL_UID'] = $ROL_UID;
// $G_PUBLISH = new Publisher;
// $G_PUBLISH->AddContent('view', 'roles/roles_permissionsTree' );
// G::RenderPage('publish', 'raw');
break;
case 'viewPermitions':
@@ -232,6 +232,35 @@ switch ($REQUEST) {
$G_PUBLISH->AddContent('view', 'roles/roles_permissionsTree');
G::RenderPage('publish', 'raw');
break;
case 'assignPermissionToRoleMultiple':
$USR_UID = $_POST['PER_UID'];
$ROL_UID = $_POST['ROL_UID'];
$arrPer = explode(',',$USR_UID);
foreach ($arrPer as $PER_UID){
unset($sData);
$sData['PER_UID'] = $PER_UID;
$sData['ROL_UID'] = $ROL_UID;
$RBAC->assignPermissionRole($sData);
}
break;
case 'deletePermissionToRoleMultiple':
$USR_UID = $_POST['PER_UID'];
$ROL_UID = $_POST['ROL_UID'];
$arrPer = explode(',',$USR_UID);
foreach ($arrPer as $PER_UID){
$RBAC->deletePermissionRole($ROL_UID, $PER_UID);
}
break;
case 'deleteUserRoleMultiple':
$USR_UID = $_POST['USR_UID'];
$ROL_UID = $_POST['ROL_UID'];
$arrUsers = explode(',',$USR_UID);
foreach ($arrUsers as $aUID){
$RBAC->deleteUserRole($ROL_UID, $aUID);
}
break;
default: echo 'default';
}

View File

@@ -1,6 +1,6 @@
<?php
/**
* users_List.php
* roles_List.php
*
* ProcessMaker Open Source Edition
* Copyright (C) 2004 - 2008 Colosa Inc.23
@@ -46,31 +46,48 @@
$G_ID_MENU_SELECTED = 'USERS';
$G_ID_SUB_MENU_SELECTED = 'ROLES';
require_once (PATH_RBAC . "model/RolesPeer.php");
G::LoadClass('ArrayPeer');
$aRoles = $RBAC->getAllRoles();
$fields = Array(
'ROL_UID'=>'char',
'ROL_PARENT'=>'char',
'ROL_SYSTEM'=>'char',
'ROL_CREATE_DATE'=>'char',
'ROL_UPDATE_DATE'=>'char',
'ROL_STATUS'=>'char'
);
$rows = array_merge(Array($fields), $aRoles);
global $_DBArray;
$_DBArray['roles'] = $rows;
$_SESSION['_DBArray'] = $_DBArray;
$oCriteria = new Criteria('dbarray');
$oCriteria->setDBArrayTable('roles');
// require_once (PATH_RBAC . "model/RolesPeer.php");
// G::LoadClass('ArrayPeer');
// $aRoles = $RBAC->getAllRoles();
//
// $fields = Array(
// 'ROL_UID'=>'char',
// 'ROL_PARENT'=>'char',
// 'ROL_SYSTEM'=>'char',
// 'ROL_CREATE_DATE'=>'char',
// 'ROL_UPDATE_DATE'=>'char',
// 'ROL_STATUS'=>'char'
// );
//
// $rows = array_merge(Array($fields), $aRoles);
//
// global $_DBArray;
// $_DBArray['roles'] = $rows;
// $_SESSION['_DBArray'] = $_DBArray;
// $oCriteria = new Criteria('dbarray');
// $oCriteria->setDBArrayTable('roles');
//
// $G_PUBLISH = new Publisher;
// $G_PUBLISH->AddContent('propeltable', 'paged-table', 'roles/roles_List', $oCriteria);
//
// G::RenderPage('publish','blank');
$G_PUBLISH = new Publisher;
$oHeadPublisher =& headPublisher::getSingleton();
//$oHeadPublisher->usingExtJs('ux/Ext.ux.fileUploadField');
$oHeadPublisher->addExtJsScript('roles/rolesList', false); //adding a javascript file .js
$oHeadPublisher->addContent('roles/rolesList'); //adding a html file .html.
$labels = G::getTranslations(Array('ID_PRO_CREATE_DATE','ID_CODE','ID_NAME','ID_LAN_UPDATE_DATE', 'ID_ROLES',
'ID_USERS','ID_PERMISSIONS','ID_EDIT','ID_DELETE','ID_NEW','ID_STATUS','ID_SAVE','ID_CLOSE',
'ID_ACTIVE','ID_INACTIVE','ID_ROLES_MSG','ID_ROLES_CAN_NOT_DELETE','ID_ROLES_SUCCESS_NEW','ID_ROLES_SUCCESS_UPDATE',
'ID_ROLES_SUCCESS_DELETE','ID_REMOVE_ROLE','ID_SEARCH','ID_ENTER_SEARCH_TERM','ID_SELECT_STATUS'));
$oHeadPublisher->assign('TRANSLATIONS', $labels);
G::RenderPage('publish', 'extJs');
$G_PUBLISH = new Publisher;
$G_PUBLISH->AddContent('propeltable', 'paged-table', 'roles/roles_List', $oCriteria);
G::RenderPage('publish','blank');
?>