Merge pull request #675 from brayanpereyra/BUG-8344
BUG 8344 I modify query to permissios the casas notes
This commit is contained in:
@@ -4769,10 +4769,15 @@ class Cases
|
||||
$RESULT_OBJECTS['OUTPUT_DOCUMENTS'] = array_merge_recursive(
|
||||
G::arrayDiff($MAIN_OBJECTS['VIEW']['OUTPUT_DOCUMENTS'],$MAIN_OBJECTS['BLOCK']['OUTPUT_DOCUMENTS']),
|
||||
G::arrayDiff($MAIN_OBJECTS['DELETE']['OUTPUT_DOCUMENTS'],$MAIN_OBJECTS['BLOCK']['OUTPUT_DOCUMENTS'])
|
||||
);
|
||||
);
|
||||
$RESULT_OBJECTS['CASES_NOTES'] = G::arrayDiff(
|
||||
$MAIN_OBJECTS['VIEW']['CASES_NOTES'], $MAIN_OBJECTS['BLOCK']['CASES_NOTES']
|
||||
);
|
||||
array_push($RESULT_OBJECTS['DYNAFORMS'], -1);
|
||||
array_push($RESULT_OBJECTS['INPUT_DOCUMENTS'], -1);
|
||||
array_push($RESULT_OBJECTS['OUTPUT_DOCUMENTS'], -1);
|
||||
array_push($RESULT_OBJECTS['CASES_NOTES'], -1);
|
||||
|
||||
return $RESULT_OBJECTS;
|
||||
}
|
||||
|
||||
@@ -4790,7 +4795,7 @@ class Cases
|
||||
$aCase = $this->loadCase($APP_UID);
|
||||
$USER_PERMISSIONS = Array();
|
||||
$GROUP_PERMISSIONS = Array();
|
||||
$RESULT = Array("DYNAFORM" => Array(), "INPUT" => Array(), "OUTPUT" => Array());
|
||||
$RESULT = Array("DYNAFORM" => Array(), "INPUT" => Array(), "OUTPUT" => Array(), "CASES_NOTES" => 0);
|
||||
|
||||
//permissions per user
|
||||
$oCriteria = new Criteria('workflow');
|
||||
@@ -4808,11 +4813,12 @@ class Cases
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::TAS_UID, '')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::TAS_UID, '0')
|
||||
)
|
||||
)->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, 'ALL')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '0')
|
||||
)
|
||||
)
|
||||
);
|
||||
$oCriteria->add(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, 'ALL')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '0')
|
||||
)
|
||||
)
|
||||
);
|
||||
@@ -4843,11 +4849,12 @@ class Cases
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::TAS_UID, '')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::TAS_UID, '0')
|
||||
)
|
||||
)->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, 'ALL')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '0')
|
||||
)
|
||||
)
|
||||
);
|
||||
$oCriteria->add(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, 'ALL')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '')->addOr(
|
||||
$oCriteria->getNewCriterion(ObjectPermissionPeer::OP_CASE_STATUS, '0')
|
||||
)
|
||||
)
|
||||
);
|
||||
@@ -4858,7 +4865,6 @@ class Cases
|
||||
}
|
||||
}
|
||||
$PERMISSIONS = array_merge($USER_PERMISSIONS, $GROUP_PERMISSIONS);
|
||||
|
||||
foreach ($PERMISSIONS as $row) {
|
||||
$USER = $row['USR_UID'];
|
||||
$USER_RELATION = $row['OP_USER_RELATION'];
|
||||
@@ -4944,6 +4950,7 @@ class Cases
|
||||
}
|
||||
$oDataset->next();
|
||||
}
|
||||
$RESULT['CASES_NOTES'] = 1;
|
||||
break;
|
||||
case 'DYNAFORM':
|
||||
$oCriteria = new Criteria('workflow');
|
||||
@@ -5017,13 +5024,17 @@ class Cases
|
||||
$oDataset->next();
|
||||
}
|
||||
break;
|
||||
case 'CASES_NOTES':
|
||||
$RESULT['CASES_NOTES'] = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return Array(
|
||||
"DYNAFORMS" => $RESULT['DYNAFORM'],
|
||||
"INPUT_DOCUMENTS" => $RESULT['INPUT'],
|
||||
"OUTPUT_DOCUMENTS" => $RESULT['OUTPUT']
|
||||
"OUTPUT_DOCUMENTS" => $RESULT['OUTPUT'],
|
||||
"CASES_NOTES" => $RESULT['CASES_NOTES']
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -3492,6 +3492,10 @@ class processMap {
|
||||
$sObject = G::LoadTranslation('ID_ALL');
|
||||
}
|
||||
break;
|
||||
case 'CASES_NOTES' :
|
||||
$sObjectType = G::LoadTranslation('ID_CASES_NOTES');
|
||||
$sObject = G::LoadTranslation('ID_ALL');
|
||||
break;
|
||||
default :
|
||||
$sObjectType = G::LoadTranslation('ID_ALL');
|
||||
$sObject = G::LoadTranslation('ID_ALL');
|
||||
|
||||
@@ -17,7 +17,6 @@ class AppProxy extends HttpProxyController
|
||||
*/
|
||||
function getNotesList($httpData)
|
||||
{
|
||||
require_once ( "classes/model/AppNotes.php" );
|
||||
$appUid = null;
|
||||
|
||||
if (isset($httpData->appUid) && trim($httpData->appUid) != "") {
|
||||
@@ -29,6 +28,22 @@ class AppProxy extends HttpProxyController
|
||||
}
|
||||
}
|
||||
|
||||
G::LoadClass('case');
|
||||
$case = new Cases();
|
||||
|
||||
$proUid = ($httpData->pro == '') ? $_SESSION['PROCESS'] : $httpData->pro;
|
||||
$tasUid = ($httpData->tas == '') ? $_SESSION['TASK'] : $httpData->tas;
|
||||
$usrUid = $_SESSION['USER_LOGGED'];
|
||||
|
||||
$respView = $case->getAllObjectsFrom($proUid, $appUid, $tasUid, $usrUid, 'VIEW');
|
||||
$respBlock = $case->getAllObjectsFrom($proUid, $appUid, $tasUid, $usrUid, 'BLOCK');
|
||||
|
||||
if ($respView['CASES_NOTES'] == 0 && $respBlock['CASES_NOTES'] == 0) {
|
||||
return array('totalCount' => 0, 'notes' => array(), 'noPerms' => 1);
|
||||
}
|
||||
|
||||
require_once ( "classes/model/AppNotes.php" );
|
||||
|
||||
if (!isset($appUid)) {
|
||||
throw new Exception('Can\'t resolve the Apllication ID for this request.');
|
||||
}
|
||||
|
||||
@@ -13,16 +13,28 @@ function closeCaseNotesWindow(){
|
||||
}
|
||||
}
|
||||
|
||||
function openCaseNotesWindow(appUid1, modalSw, appTitle)
|
||||
function openCaseNotesWindow(appUid1, modalSw, appTitle, proUid, taskUid)
|
||||
{
|
||||
Ext.MessageBox.show({
|
||||
msg: _('ID_CASE_NOTES_LOADING'),
|
||||
progressText: 'Saving...',
|
||||
width:300,
|
||||
wait:true,
|
||||
waitConfig: {interval:200},
|
||||
animEl: 'mb7'
|
||||
});
|
||||
|
||||
Ext.QuickTips.init();
|
||||
appUid = !appUid1 ? "": appUid1;
|
||||
title = appTitle;
|
||||
appUid = !appUid1 ? "": appUid1;
|
||||
proUid = !proUid ? "": proUid;
|
||||
taskUid = !taskUid ? "": taskUid;
|
||||
|
||||
title = appTitle;
|
||||
var startRecord=0;
|
||||
var loadSize=10;
|
||||
|
||||
storeNotes = new Ext.data.JsonStore({
|
||||
url : '../appProxy/getNotesList?appUid='+appUid,
|
||||
url : '../appProxy/getNotesList?appUid='+appUid+'&pro='+proUid+'&tas='+taskUid,
|
||||
root: 'notes',
|
||||
totalProperty: 'totalCount',
|
||||
fields: ['USR_USERNAME','USR_FIRSTNAME','USR_LASTNAME','USR_FULL_NAME','NOTE_DATE','NOTE_CONTENT', 'USR_UID', 'user'],
|
||||
@@ -32,7 +44,22 @@ function openCaseNotesWindow(appUid1, modalSw, appTitle)
|
||||
},
|
||||
listeners:{
|
||||
load:function(){
|
||||
Ext.MessageBox.hide();
|
||||
if ( typeof(storeNotes.reader.jsonData.noPerms != 'undefined') &&
|
||||
(storeNotes.reader.jsonData.noPerms == '1') ) {
|
||||
Ext.MessageBox.show({
|
||||
title: _('ID_WARNING'),
|
||||
msg: _('ID_CASES_NOTES_NO_PERMISSIONS'),
|
||||
buttons: Ext.MessageBox.OK,
|
||||
animEl: 'mb9',
|
||||
icon: Ext.MessageBox.WARNING
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
caseNotesWindow.show();
|
||||
newNoteAreaActive = false;
|
||||
newNoteHandler();
|
||||
caseNotesWindow.setTitle(_('ID_CASES_NOTES') + ' (' + storeNotes.data.items.length + ')');
|
||||
|
||||
if(storeNotes.getCount()<storeNotes.getTotalCount()){
|
||||
@@ -135,7 +162,7 @@ function openCaseNotesWindow(appUid1, modalSw, appTitle)
|
||||
constrain: true,
|
||||
keys: {
|
||||
key: 27,
|
||||
fn : function(){
|
||||
fn : function(){
|
||||
caseNotesWindow.hide();
|
||||
}
|
||||
},
|
||||
@@ -151,22 +178,22 @@ function openCaseNotesWindow(appUid1, modalSw, appTitle)
|
||||
],
|
||||
tbar:[
|
||||
new Ext.form.TextArea({
|
||||
text : _('ID_NEW_NOTE'),
|
||||
xtype : 'textarea',
|
||||
id : 'caseNoteText',
|
||||
name : 'caseNoteText',
|
||||
width : 330,
|
||||
grow : true,
|
||||
text : _('ID_NEW_NOTE'),
|
||||
xtype : 'textarea',
|
||||
id : 'caseNoteText',
|
||||
name : 'caseNoteText',
|
||||
width : 330,
|
||||
grow : true,
|
||||
height : 40,
|
||||
growMin: 40,
|
||||
growMax: 80,
|
||||
maxLengthText : 500,
|
||||
allowBlank :true,
|
||||
selectOnFocus :true,
|
||||
maxLengthText : 500,
|
||||
allowBlank :true,
|
||||
selectOnFocus :true,
|
||||
enableKeyEvents: true,
|
||||
listeners : {
|
||||
scope : this,
|
||||
keyup : updateTextCtr,
|
||||
scope : this,
|
||||
keyup : updateTextCtr,
|
||||
keydown: updateTextCtr
|
||||
}
|
||||
})
|
||||
@@ -236,10 +263,6 @@ function openCaseNotesWindow(appUid1, modalSw, appTitle)
|
||||
//text: "",
|
||||
width: 200
|
||||
});
|
||||
|
||||
newNoteAreaActive = false;
|
||||
caseNotesWindow.show();
|
||||
newNoteHandler();
|
||||
}
|
||||
|
||||
function updateTextCtr(body, event) {
|
||||
|
||||
@@ -477,9 +477,12 @@ Ext.onReady ( function() {
|
||||
};
|
||||
|
||||
function renderNote(val,p,r) {
|
||||
pro = r.json.PRO_UID;
|
||||
tas = r.json.TAS_UID;
|
||||
|
||||
appUid = r.data['APP_UID'];
|
||||
title = r.data['APP_TITLE'];
|
||||
return '<img src="/images/ext/default/s.gif" class="x-tree-node-icon ICON_CASES_NOTES" unselectable="off" id="extdd-17" onClick="openCaseNotesWindow(\''+appUid+'\', true, \''+title+'\')">';
|
||||
return '<img src="/images/ext/default/s.gif" class="x-tree-node-icon ICON_CASES_NOTES" unselectable="off" id="extdd-17" onClick="openCaseNotesWindow(\''+appUid+'\', true, \''+title+'\', \''+pro+'\', \''+tas+'\')">';
|
||||
}
|
||||
|
||||
//Render Full Name
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
<option name="DYNAFORM">Dynaform</option>
|
||||
<option name="INPUT">Input Document</option>
|
||||
<option name="OUTPUT">Output Document</option>
|
||||
<option name="CASES_NOTES">Cases Notes</option>
|
||||
</en>
|
||||
</OP_OBJ_TYPE>
|
||||
<ALL type="dropdown" mode="edit" sqlConnection="dbarray">
|
||||
@@ -163,22 +164,33 @@ if(getField('OP_OBJ_TYPE').value=='ANY')
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'INPUTS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='DYNAFORM')
|
||||
{ hideRowById( 'ALL' );
|
||||
hideRowById( 'INPUTS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='INPUT')
|
||||
{ hideRowById( 'ALL' );
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='OUTPUT')
|
||||
{ hideRowById( 'ALL' );
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'INPUTS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='CASES_NOTES')
|
||||
{ hideRowById( 'ALL' );
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'INPUTS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
hideRowById( 'OP_ACTION' );
|
||||
}
|
||||
getOptions();
|
||||
rebuildOptionsWhenLoad(getField('OP_OBJ_TYPE').value);
|
||||
|
||||
@@ -188,24 +200,35 @@ leimnud.event.add(document.getElementById('form[OP_OBJ_TYPE]'), 'change', functi
|
||||
hideRowById( 'INPUTS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
showRowById( 'DYNAFORMS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='INPUT')
|
||||
{ hideRowById( 'ALL' );
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
showRowById( 'INPUTS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='OUTPUT')
|
||||
{ hideRowById( 'ALL' );
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'INPUTS' );
|
||||
showRowById( 'OUTPUTS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='CASES_NOTES')
|
||||
{ hideRowById( 'ALL' );
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'INPUTS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
hideRowById( 'OP_ACTION' );
|
||||
}
|
||||
if(getField('OP_OBJ_TYPE').value=='ANY')
|
||||
{ hideRowById('ALL' );
|
||||
hideRowById( 'DYNAFORMS' );
|
||||
hideRowById( 'INPUTS' );
|
||||
hideRowById( 'OUTPUTS' );
|
||||
showRowById( 'OP_ACTION' );
|
||||
}
|
||||
rebuildOptions(getField('OP_OBJ_TYPE').value);
|
||||
});
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
<option name="DYNAFORM">Dynaform</option>
|
||||
<option name="INPUT">Input Document</option>
|
||||
<option name="OUTPUT">Output Document</option>
|
||||
<option name="CASES_NOTES">Cases Notes</option>
|
||||
</en>
|
||||
</OP_OBJ_TYPE>
|
||||
<ALL type="dropdown" mode="edit" sqlConnection="dbarray">
|
||||
@@ -131,6 +132,7 @@ leimnud.event.add(getField('OP_OBJ_TYPE'), 'change', function() {
|
||||
hideRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
hideRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'DYNAFORM':
|
||||
getField('ALL').value = '';
|
||||
@@ -141,6 +143,7 @@ leimnud.event.add(getField('OP_OBJ_TYPE'), 'change', function() {
|
||||
showRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
hideRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'INPUT':
|
||||
getField('ALL').value = '';
|
||||
@@ -151,6 +154,7 @@ leimnud.event.add(getField('OP_OBJ_TYPE'), 'change', function() {
|
||||
hideRowById('DYNAFORMS');
|
||||
showRowById('INPUTS');
|
||||
hideRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'OUTPUT':
|
||||
getField('ALL').value = '';
|
||||
@@ -161,6 +165,19 @@ leimnud.event.add(getField('OP_OBJ_TYPE'), 'change', function() {
|
||||
hideRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
showRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'CASES_NOTES':
|
||||
getField('ALL').value = '';
|
||||
getField('DYNAFORMS').value = '';
|
||||
getField('INPUTS').value = '';
|
||||
getField('OUTPUTS').value = '';
|
||||
getField('OP_ACTION').value = 'VIEW';
|
||||
hideRowById('ALL');
|
||||
hideRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
hideRowById('OUTPUTS');
|
||||
hideRowById('OP_ACTION');
|
||||
break;
|
||||
}
|
||||
rebuildOptions(vValue);
|
||||
@@ -179,6 +196,7 @@ switch (vValue) {
|
||||
hideRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
hideRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'DYNAFORM':
|
||||
getField('ALL').value = '';
|
||||
@@ -189,6 +207,7 @@ switch (vValue) {
|
||||
showRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
hideRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'INPUT':
|
||||
getField('ALL').value = '';
|
||||
@@ -199,6 +218,7 @@ switch (vValue) {
|
||||
hideRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
showRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'OUTPUT':
|
||||
getField('ALL').value = '';
|
||||
@@ -209,7 +229,20 @@ switch (vValue) {
|
||||
hideRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
showRowById('OUTPUTS');
|
||||
showRowById('OP_ACTION');
|
||||
break;
|
||||
case 'CASES_NOTES':
|
||||
getField('ALL').value = '';
|
||||
getField('DYNAFORMS').value = '';
|
||||
getField('INPUTS').value = '';
|
||||
getField('OUTPUTS').value = '';
|
||||
getField('OP_ACTION').value = 'VIEW';
|
||||
hideRowById('ALL');
|
||||
hideRowById('DYNAFORMS');
|
||||
hideRowById('INPUTS');
|
||||
hideRowById('OUTPUTS');
|
||||
hideRowById('OP_ACTION');
|
||||
break;
|
||||
}
|
||||
getOptions();
|
||||
rebuildOptions(vValue);
|
||||
|
||||
Reference in New Issue
Block a user