Merge pull request #350 from marcoAntonioNina/BUG-8408
BUG 8408 Acceso a Documentos por usuarios sin permiso... SOLVED
This commit is contained in:
@@ -203,7 +203,7 @@ if($limit != 0){
|
||||
return $folderArray;
|
||||
}
|
||||
|
||||
function getFolderContent($folderID, $docIdFilter = array(), $keyword = NULL, $searchType = NULL, $limit=0, $start=0) {
|
||||
function getFolderContent($folderID, $docIdFilter = array(), $keyword = NULL, $searchType = NULL, $limit=0, $start=0, $user='') {
|
||||
require_once ("classes/model/AppDocument.php");
|
||||
require_once ("classes/model/InputDocument.php");
|
||||
require_once ("classes/model/OutputDocument.php");
|
||||
@@ -229,6 +229,31 @@ if($limit != 0){
|
||||
$oCriteria->add ( AppDocumentPeer::APP_DOC_TAGS, "%" . $keyword . "%", CRITERIA::LIKE );
|
||||
}
|
||||
|
||||
if ($user != '') {
|
||||
require_once ("classes/model/AppDelegation.php");
|
||||
$criteria = new Criteria ();
|
||||
$criteria->addSelectColumn (AppDelegationPeer::APP_UID);
|
||||
$criteria->setDistinct();
|
||||
|
||||
$conditions = array ();
|
||||
$conditions [] = array (AppDelegationPeer::APP_UID, AppDocumentPeer::APP_UID);
|
||||
$conditions [] = array (AppDelegationPeer::DEL_INDEX, AppDocumentPeer::DEL_INDEX);
|
||||
|
||||
$criteria->addJoinMC($conditions, Criteria::LEFT_JOIN);
|
||||
|
||||
$criteria->add(AppDelegationPeer::USR_UID, $user);
|
||||
|
||||
$rs2 = AppDocumentPeer::doSelectRS($criteria);
|
||||
|
||||
$rs2->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$data = array();
|
||||
while ($rs2->next()) {
|
||||
$row = $rs2->getRow();
|
||||
$data[] = $row['APP_UID'];
|
||||
}
|
||||
$oCriteria->add ( AppDocumentPeer::APP_UID, $data, CRITERIA::IN );
|
||||
}
|
||||
|
||||
$oCase->verifyTable ();
|
||||
|
||||
|
||||
@@ -246,7 +271,6 @@ if($limit != 0){
|
||||
|
||||
|
||||
$rs = AppDocumentPeer::doSelectRS ( $oCriteria );
|
||||
|
||||
$rs->setFetchmode ( ResultSet::FETCHMODE_ASSOC );
|
||||
$rs->next ();
|
||||
$filesResult = array ();
|
||||
|
||||
@@ -58,7 +58,9 @@ if ( $RBAC->userCanAccess('PM_REASSIGNCASE') == 1 ) {
|
||||
$G_TMP_MENU->AddIdRawOption('CASES_TO_REASSIGN', 'casesListExtJs?action=to_reassign', G::LoadTranslation('ID_TO_REASSIGN'), 'reassing.png' );
|
||||
}
|
||||
|
||||
$G_TMP_MENU->AddIdRawOption('CASES_FOLDERS', 'casesStartPage?action=documents', G::LoadTranslation('ID_FOLDERS'), 'folderV2.gif','','blockHeaderNoChild' );
|
||||
if ($RBAC->userCanAccess('PM_FOLDERS_VIEW') == 1) {
|
||||
$G_TMP_MENU->AddIdRawOption('CASES_FOLDERS', 'casesStartPage?action=documents', G::LoadTranslation('ID_FOLDERS'), 'folderV2.gif','','blockHeaderNoChild' );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -120,7 +120,9 @@ function expandNode(){
|
||||
$totalDocuments=0;
|
||||
|
||||
if(($_POST['sendWhat']=="dirs")||($_POST['sendWhat']=="both")){
|
||||
$folderListObj = $oPMFolder->getFolderList ( $_POST ['node'] != 'root' ? $_POST ['node'] == 'NA' ? "" : $_POST ['node'] : $rootFolder, $limit, $start );
|
||||
|
||||
|
||||
$folderListObj = $oPMFolder->getFolderList ( $_POST ['node'] != 'root' ? $_POST ['node'] == 'NA' ? "" : $_POST ['node'] : $rootFolder, $limit, $start);
|
||||
//G::pr($folderListObj);
|
||||
$folderList=$folderListObj['folders'];
|
||||
$totalFolders=$folderListObj['totalFoldersCount'];
|
||||
@@ -128,14 +130,14 @@ function expandNode(){
|
||||
|
||||
// G::pr($folderListObj);
|
||||
}
|
||||
if(($_POST['sendWhat']=="files")||($_POST['sendWhat']=="both")){
|
||||
$folderContentObj = $oPMFolder->getFolderContent ( $_POST ['node'] != 'root' ? $_POST ['node'] == 'NA' ? "" : $_POST ['node'] : $rootFolder, array(), NULL, NULL, $limit, $start );
|
||||
//G::pr($folderContentObj);
|
||||
if (($_POST['sendWhat'] == "files")||($_POST['sendWhat'] == "both")) {
|
||||
global $RBAC;
|
||||
$user = ($RBAC->userCanAccess('PM_ALLCASES') == 1)? '' : $_SESSION['USER_LOGGED'];
|
||||
$folderContentObj = $oPMFolder->getFolderContent ( $_POST ['node'] != 'root' ? $_POST ['node'] == 'NA' ? "" : $_POST ['node'] : $rootFolder, array(), NULL, NULL, $limit, $start, $user);
|
||||
$folderContent=$folderContentObj['documents'];
|
||||
$totalDocuments=$folderContentObj['totalDocumentsCount'];
|
||||
$totalItems+=count($folderContent);
|
||||
|
||||
//G::pr($folderContent);
|
||||
//G::pr($folderContent);
|
||||
}
|
||||
// G::pr($folderList);
|
||||
//var_dump(isset($folderList));
|
||||
|
||||
Reference in New Issue
Block a user