Merged in bugfix/HOR-3451 (pull request #5785)

HOR-3450

Approved-by: Paula Quispe <paula.quispe@processmaker.com>
Approved-by: Julio Cesar Laura Avendaño <contact@julio-laura.com>
This commit is contained in:
Paula Quispe
2017-07-25 16:35:43 +00:00
committed by Julio Cesar Laura Avendaño

View File

@@ -109,9 +109,10 @@ try {
echo $response; echo $response;
break; break;
case 'deleteUser': case 'deleteUser':
$usrUid = $_POST['USR_UID'];
//Check if the user was defined in a process permissions //Check if the user was defined in a process permissions
$oObjectPermission = new ObjectPermission(); $oObjectPermission = new ObjectPermission();
$aProcess = $oObjectPermission->objectPermissionPerUser($_POST['USR_UID'], 1); $aProcess = $oObjectPermission->objectPermissionPerUser($usrUid, 1);
if (count($aProcess) > 0) { if (count($aProcess) > 0) {
echo G::json_encode(array( echo G::json_encode(array(
"status" => 'ERROR', "status" => 'ERROR',
@@ -123,19 +124,19 @@ try {
//Remove from tasks //Remove from tasks
G::LoadClass('tasks'); G::LoadClass('tasks');
$oTasks = new Tasks(); $oTasks = new Tasks();
$oTasks->ofToAssignUserOfAllTasks($UID); $oTasks->ofToAssignUserOfAllTasks($usrUid);
//Remove from groups //Remove from groups
G::LoadClass('groups'); G::LoadClass('groups');
$oGroups = new Groups(); $oGroups = new Groups();
$oGroups->removeUserOfAllGroups($UID); $oGroups->removeUserOfAllGroups($usrUid);
//Update the table Users //Update the table Users
require_once 'classes/model/Users.php'; require_once 'classes/model/Users.php';
$RBAC->changeUserStatus($UID, 'CLOSED'); $RBAC->changeUserStatus($usrUid, 'CLOSED');
$RBAC->updateUser(array('USR_UID' => $UID,'USR_USERNAME' => ''), ''); $RBAC->updateUser(array('USR_UID' => $usrUid,'USR_USERNAME' => ''), '');
$oUser = new Users(); $oUser = new Users();
$aFields = $oUser->load($UID); $aFields = $oUser->load($usrUid);
$aFields['USR_STATUS'] = 'CLOSED'; $aFields['USR_STATUS'] = 'CLOSED';
$userName = $aFields['USR_USERNAME']; $userName = $aFields['USR_USERNAME'];
$aFields['USR_USERNAME'] = ''; $aFields['USR_USERNAME'] = '';
@@ -144,16 +145,16 @@ try {
//Delete Dashboard //Delete Dashboard
require_once 'classes/model/DashletInstance.php'; require_once 'classes/model/DashletInstance.php';
$criteria = new Criteria( 'workflow' ); $criteria = new Criteria( 'workflow' );
$criteria->add( DashletInstancePeer::DAS_INS_OWNER_UID, $UID ); $criteria->add( DashletInstancePeer::DAS_INS_OWNER_UID, $usrUid );
$criteria->add( DashletInstancePeer::DAS_INS_OWNER_TYPE , 'USER'); $criteria->add( DashletInstancePeer::DAS_INS_OWNER_TYPE , 'USER');
DashletInstancePeer::doDelete( $criteria ); DashletInstancePeer::doDelete( $criteria );
//Delete users as supervisor //Delete users as supervisor
$criteria = new Criteria("workflow"); $criteria = new Criteria("workflow");
$criteria->add(ProcessUserPeer::USR_UID, $UID, Criteria::EQUAL); $criteria->add(ProcessUserPeer::USR_UID, $usrUid, Criteria::EQUAL);
$criteria->add(ProcessUserPeer::PU_TYPE, "SUPERVISOR", Criteria::EQUAL); $criteria->add(ProcessUserPeer::PU_TYPE, "SUPERVISOR", Criteria::EQUAL);
ProcessUserPeer::doDelete($criteria); ProcessUserPeer::doDelete($criteria);
G::auditLog("DeleteUser", "User Name: ". $userName." User ID: (".$UID.") "); G::auditLog("DeleteUser", "User Name: ". $userName." User ID: (".$usrUid.") ");
break; break;
case 'changeUserStatus': case 'changeUserStatus':
//When the user change the status: ACTIVE, INACTIVE, VACATION //When the user change the status: ACTIVE, INACTIVE, VACATION