added form for Process permission part EXTJS
This commit is contained in:
@@ -3097,6 +3097,133 @@ class processMap {
|
|||||||
return $oCriteria;
|
return $oCriteria;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getExtObjectsPermissions($sProcessUID) {
|
||||||
|
G::LoadClass('case');
|
||||||
|
Cases::verifyTable ();
|
||||||
|
$aObjectsPermissions = array();
|
||||||
|
//$aObjectsPermissions [] = array('OP_UID' => 'char', 'TASK_TARGET' => 'char', 'GROUP_USER' => 'char', 'TASK_SOURCE' => 'char', 'OBJECT_TYPE' => 'char', 'OBJECT' => 'char', 'PARTICIPATED' => 'char', 'ACTION' => 'char', 'OP_CASE_STATUS' => 'char');
|
||||||
|
$oCriteria = new Criteria('workflow');
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_UID);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::TAS_UID);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::USR_UID);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_USER_RELATION);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_TASK_SOURCE);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_PARTICIPATE);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_OBJ_TYPE);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_OBJ_UID);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_ACTION);
|
||||||
|
$oCriteria->addSelectColumn(ObjectPermissionPeer::OP_CASE_STATUS);
|
||||||
|
$oCriteria->add(ObjectPermissionPeer::PRO_UID, $sProcessUID);
|
||||||
|
$oDataset = ObjectPermissionPeer::doSelectRS($oCriteria);
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
while ($aRow = $oDataset->getRow()) {
|
||||||
|
//Obtain task target
|
||||||
|
if (($aRow ['TAS_UID'] != '') && ($aRow ['TAS_UID'] != '0')) {
|
||||||
|
try {
|
||||||
|
$oTask = new Task ( );
|
||||||
|
$aFields = $oTask->load($aRow ['TAS_UID']);
|
||||||
|
$sTaskTarget = $aFields ['TAS_TITLE'];
|
||||||
|
} catch (Exception $oError) {
|
||||||
|
$sTaskTarget = 'All Tasks';
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$sTaskTarget = G::LoadTranslation('ID_ANY_TASK');
|
||||||
|
}
|
||||||
|
//Obtain user or group
|
||||||
|
if ($aRow ['OP_USER_RELATION'] == 1) {
|
||||||
|
$oUser = new Users ( );
|
||||||
|
$aFields = $oUser->load($aRow ['USR_UID']);
|
||||||
|
$sUserGroup = $aFields ['USR_FIRSTNAME'] . ' ' . $aFields ['USR_LASTNAME'] . ' (' . $aFields ['USR_USERNAME'] . ')';
|
||||||
|
} else {
|
||||||
|
$oGroup = new Groupwf ( );
|
||||||
|
if ($aRow ['USR_UID'] != '') {
|
||||||
|
try {
|
||||||
|
$aFields = $oGroup->load($aRow ['USR_UID']);
|
||||||
|
$sUserGroup = $aFields ['GRP_TITLE'];
|
||||||
|
} catch (Exception $oError) {
|
||||||
|
$sUserGroup = '(GROUP DELETED)';
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$sUserGroup = G::LoadTranslation('ID_ANY');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//Obtain task source
|
||||||
|
if (($aRow ['OP_TASK_SOURCE'] != '') && ($aRow ['OP_TASK_SOURCE'] != '0')) {
|
||||||
|
try {
|
||||||
|
$oTask = new Task ( );
|
||||||
|
$aFields = $oTask->load($aRow ['OP_TASK_SOURCE']);
|
||||||
|
$sTaskSource = $aFields ['TAS_TITLE'];
|
||||||
|
} catch (Exception $oError) {
|
||||||
|
$sTaskSource = 'All Tasks';
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$sTaskSource = G::LoadTranslation('ID_ANY_TASK');
|
||||||
|
}
|
||||||
|
//Obtain object and type
|
||||||
|
switch ($aRow ['OP_OBJ_TYPE']) {
|
||||||
|
case 'ANY' :
|
||||||
|
$sObjectType = G::LoadTranslation('ID_ALL');
|
||||||
|
$sObject = G::LoadTranslation('ID_ALL');
|
||||||
|
break;
|
||||||
|
/* case 'ANY_DYNAFORM':
|
||||||
|
$sObjectType = G::LoadTranslation('ID_ANY_DYNAFORM');
|
||||||
|
$sObject = G::LoadTranslation('ID_ALL');
|
||||||
|
break;
|
||||||
|
case 'ANY_INPUT':
|
||||||
|
$sObjectType = G::LoadTranslation('ID_ANY_INPUT');
|
||||||
|
$sObject = G::LoadTranslation('ID_ALL');
|
||||||
|
break;
|
||||||
|
case 'ANY_OUTPUT':
|
||||||
|
$sObjectType = G::LoadTranslation('ID_ANY_OUTPUT');
|
||||||
|
$sObject = G::LoadTranslation('ID_ALL');
|
||||||
|
break; */
|
||||||
|
case 'DYNAFORM' :
|
||||||
|
$sObjectType = G::LoadTranslation('ID_DYNAFORM');
|
||||||
|
if (($aRow ['OP_OBJ_UID'] != '') && ($aRow ['OP_OBJ_UID'] != '0')) {
|
||||||
|
$oDynaform = new Dynaform ( );
|
||||||
|
$aFields = $oDynaform->load($aRow ['OP_OBJ_UID']);
|
||||||
|
$sObject = $aFields ['DYN_TITLE'];
|
||||||
|
} else {
|
||||||
|
$sObject = G::LoadTranslation('ID_ALL');
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'INPUT' :
|
||||||
|
$sObjectType = G::LoadTranslation('ID_INPUT_DOCUMENT');
|
||||||
|
if (($aRow ['OP_OBJ_UID'] != '') && ($aRow ['OP_OBJ_UID'] != '0')) {
|
||||||
|
$oInputDocument = new InputDocument ( );
|
||||||
|
$aFields = $oInputDocument->load($aRow ['OP_OBJ_UID']);
|
||||||
|
$sObject = $aFields ['INP_DOC_TITLE'];
|
||||||
|
} else {
|
||||||
|
$sObject = G::LoadTranslation('ID_ALL');
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'OUTPUT' :
|
||||||
|
$sObjectType = G::LoadTranslation('ID_OUTPUT_DOCUMENT');
|
||||||
|
if (($aRow ['OP_OBJ_UID'] != '') && ($aRow ['OP_OBJ_UID'] != '0')) {
|
||||||
|
$oOutputDocument = new OutputDocument ( );
|
||||||
|
$aFields = $oOutputDocument->load($aRow ['OP_OBJ_UID']);
|
||||||
|
$sObject = $aFields ['OUT_DOC_TITLE'];
|
||||||
|
} else {
|
||||||
|
$sObject = G::LoadTranslation('ID_ALL');
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
//Participated
|
||||||
|
if ($aRow ['OP_PARTICIPATE'] == 0) {
|
||||||
|
$sParticipated = G::LoadTranslation('ID_NO');
|
||||||
|
} else {
|
||||||
|
$sParticipated = G::LoadTranslation('ID_YES');
|
||||||
|
}
|
||||||
|
//Obtain action (permission)
|
||||||
|
$sAction = G::LoadTranslation('ID_' . $aRow ['OP_ACTION']);
|
||||||
|
//Add to array
|
||||||
|
$aObjectsPermissions [] = array('OP_UID' => $aRow ['OP_UID'], 'TASK_TARGET' => $sTaskTarget, 'GROUP_USER' => $sUserGroup, 'TASK_SOURCE' => $sTaskSource, 'OBJECT_TYPE' => $sObjectType, 'OBJECT' => $sObject, 'PARTICIPATED' => $sParticipated, 'ACTION' => $sAction, 'OP_CASE_STATUS' => $aRow ['OP_CASE_STATUS']);
|
||||||
|
$oDataset->next();
|
||||||
|
}
|
||||||
|
return $aObjectsPermissions;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* objectsPermissionsList
|
* objectsPermissionsList
|
||||||
*
|
*
|
||||||
@@ -5357,5 +5484,90 @@ class processMap {
|
|||||||
throw ($e);
|
throw ($e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function newExtObjectPermission($sProcessUID)
|
||||||
|
{
|
||||||
|
$aUsersGroups = array();
|
||||||
|
$aUsersGroups [] = array('UID' => 'char', 'LABEL' => 'char');
|
||||||
|
$oCriteria = new Criteria('workflow');
|
||||||
|
$oCriteria->addSelectColumn(GroupwfPeer::GRP_UID);
|
||||||
|
$oCriteria->addAsColumn('GRP_TITLE', ContentPeer::CON_VALUE);
|
||||||
|
$aConditions = array();
|
||||||
|
$aConditions [] = array(GroupwfPeer::GRP_UID, ContentPeer::CON_ID);
|
||||||
|
$aConditions [] = array(ContentPeer::CON_CATEGORY, DBAdapter::getStringDelimiter () . 'GRP_TITLE' . DBAdapter::getStringDelimiter ());
|
||||||
|
$aConditions [] = array(ContentPeer::CON_LANG, DBAdapter::getStringDelimiter () . SYS_LANG . DBAdapter::getStringDelimiter ());
|
||||||
|
$oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN);
|
||||||
|
$oCriteria->add(GroupwfPeer::GRP_STATUS, 'ACTIVE');
|
||||||
|
$oDataset = GroupwfPeer::doSelectRS($oCriteria);
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
while ($aRow = $oDataset->getRow()) {
|
||||||
|
$aUsersGroups [] = array('UID' => '2|' . $aRow ['GRP_UID'], 'LABEL' => $aRow ['GRP_TITLE'] . ' (' . G::LoadTranslation('ID_GROUP') . ')');
|
||||||
|
$oDataset->next();
|
||||||
|
}
|
||||||
|
$oCriteria = new Criteria('workflow');
|
||||||
|
$oCriteria->addSelectColumn(UsersPeer::USR_UID);
|
||||||
|
$oCriteria->addSelectColumn(UsersPeer::USR_USERNAME);
|
||||||
|
$oCriteria->addSelectColumn(UsersPeer::USR_FIRSTNAME);
|
||||||
|
$oCriteria->addSelectColumn(UsersPeer::USR_LASTNAME);
|
||||||
|
$oCriteria->add(UsersPeer::USR_STATUS, 'ACTIVE');
|
||||||
|
$oDataset = UsersPeer::doSelectRS($oCriteria);
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
while ($aRow = $oDataset->getRow()) {
|
||||||
|
$aUsersGroups [] = array('UID' => '1|' . $aRow ['USR_UID'], 'LABEL' => $aRow ['USR_FIRSTNAME'] . ' ' . $aRow ['USR_LASTNAME'] . ' (' . $aRow ['USR_USERNAME'] . ')');
|
||||||
|
$oDataset->next();
|
||||||
|
}
|
||||||
|
$aAllObjects = array();
|
||||||
|
$aAllObjects [] = array('UID' => 'char', 'LABEL' => 'char');
|
||||||
|
$aAllDynaforms = array();
|
||||||
|
$aAllDynaforms [] = array('UID' => 'char', 'LABEL' => 'char');
|
||||||
|
$aAllInputs = array();
|
||||||
|
$aAllInputs [] = array('UID' => 'char', 'LABEL' => 'char');
|
||||||
|
$aAllOutputs = array();
|
||||||
|
$aAllOutputs [] = array('UID' => 'char', 'LABEL' => 'char');
|
||||||
|
$oCriteria = $this->getDynaformsCriteria($sProcessUID);
|
||||||
|
$oCriteria->add(DynaformPeer::DYN_TYPE, 'XMLFORM');
|
||||||
|
$oDataset = DynaformPeer::doSelectRS($oCriteria);
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
while ($aRow = $oDataset->getRow()) {
|
||||||
|
$aRow ['DYN_TITLE'] = (isset($aRow ['DYN_TITLE'])) ? $aRow ['DYN_TITLE'] : '';
|
||||||
|
$aAllObjects [] = array('UID' => 'DYNAFORM|' . $aRow ['DYN_UID'],
|
||||||
|
'LABEL' => $aRow ['DYN_TITLE'] . ' (' . G::LoadTranslation('ID_DYNAFORM') . ')');
|
||||||
|
$aAllDynaforms [] = array('UID' => $aRow ['DYN_UID'],
|
||||||
|
'LABEL' => $aRow ['DYN_TITLE']);
|
||||||
|
$oDataset->next();
|
||||||
|
}
|
||||||
|
G::LoadClass('ArrayPeer');
|
||||||
|
$oDataset = ArrayBasePeer::doSelectRS($this->getInputDocumentsCriteria($sProcessUID));
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
while ($aRow = $oDataset->getRow()) {
|
||||||
|
$aAllObjects [] = array('UID' => 'INPUT_DOCUMENT|' . $aRow ['INP_DOC_UID'],
|
||||||
|
'LABEL' => $aRow ['INP_DOC_TITLE'] . ' (' . G::LoadTranslation('ID_INPUT_DOCUMENT') . ')');
|
||||||
|
$aAllInputs [] = array('UID' => $aRow ['INP_DOC_UID'],
|
||||||
|
'LABEL' => $aRow ['INP_DOC_TITLE']);
|
||||||
|
$oDataset->next();
|
||||||
|
}
|
||||||
|
G::LoadClass('ArrayPeer');
|
||||||
|
$oDataset = ArrayBasePeer::doSelectRS($this->getOutputDocumentsCriteria($sProcessUID));
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
while ($aRow = $oDataset->getRow()) {
|
||||||
|
$aAllObjects [] = array('UID' => 'OUTPUT_DOCUMENT|' . $aRow ['OUT_DOC_UID'], 'LABEL' => $aRow ['OUT_DOC_TITLE'] . ' (' . G::LoadTranslation('ID_OUTPUT_DOCUMENT') . ')');
|
||||||
|
$aAllOutputs [] = array('UID' => $aRow ['OUT_DOC_UID'], 'LABEL' => $aRow ['OUT_DOC_TITLE']);
|
||||||
|
$oDataset->next();
|
||||||
|
}
|
||||||
|
global $_DBArray;
|
||||||
|
$_DBArray = (isset($_SESSION ['_DBArray']) ? $_SESSION ['_DBArray'] : '');
|
||||||
|
$_DBArray ['usersGroups'] = $aUsersGroups;
|
||||||
|
$_DBArray ['allObjects'] = $aAllObjects;
|
||||||
|
$_DBArray ['allDynaforms'] = $aAllDynaforms;
|
||||||
|
$_DBArray ['allInputs'] = $aAllInputs;
|
||||||
|
$_DBArray ['allOutputs'] = $aAllOutputs;
|
||||||
|
$_SESSION ['_DBArray'] = $_DBArray;
|
||||||
|
return($_SESSION['_DBArray']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
19
workflow/engine/methods/bpmn/proxyObjectPermissions.php
Executable file
19
workflow/engine/methods/bpmn/proxyObjectPermissions.php
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
G::LoadClass('processMap');
|
||||||
|
$oProcessMap = new processMap(new DBConnection);
|
||||||
|
|
||||||
|
if ( isset($_GET['pid'] ) && !isset($_GET ['t']))
|
||||||
|
{
|
||||||
|
$rows = $oProcessMap->getExtObjectsPermissions($_GET['pid']);
|
||||||
|
|
||||||
|
}
|
||||||
|
if ( isset($_GET['pid'] )&& isset($_GET['t']) )
|
||||||
|
{
|
||||||
|
$rows = $oProcessMap->newExtObjectPermission($_GET['pid']);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
$result['totalCount'] = count($rows);
|
||||||
|
$result['data'] = $rows;
|
||||||
|
print json_encode($result);
|
||||||
|
?>
|
||||||
@@ -322,7 +322,367 @@ ProcessMapContext.prototype.delLines= function()
|
|||||||
|
|
||||||
ProcessMapContext.prototype.processPermission= function()
|
ProcessMapContext.prototype.processPermission= function()
|
||||||
{
|
{
|
||||||
Ext.MessageBox.alert('Status','Process Permission');
|
var pro_uid = workflow.getUrlVars();
|
||||||
|
//Database store code starts here
|
||||||
|
var dbConnFields = Ext.data.Record.create([
|
||||||
|
{ name: 'OP_UID',type: 'string'},
|
||||||
|
{ name: 'TASK_TARGET',type: 'string'},
|
||||||
|
{ name: 'GROUP_USER',type: 'string'},
|
||||||
|
{ name: 'TASK_SOURCE',type: 'string'},
|
||||||
|
{ name: 'PARTICIPATED',type: 'string'},
|
||||||
|
{ name: 'OBJECT_TYPE',type: 'string'},
|
||||||
|
{ name: 'OBJECT',type: 'string'},
|
||||||
|
{ name: 'ACTION',type: 'string'},
|
||||||
|
{ name: 'OP_CASE_STATUS',type: 'string'}
|
||||||
|
]);
|
||||||
|
|
||||||
|
var PermissionStore = new Ext.data.JsonStore({
|
||||||
|
root : 'data',
|
||||||
|
totalProperty: 'totalCount',
|
||||||
|
idProperty : 'gridIndex',
|
||||||
|
remoteSort : true,
|
||||||
|
fields : dbConnFields,
|
||||||
|
proxy: new Ext.data.HttpProxy({
|
||||||
|
url: 'proxyObjectPermissions.php?pid='+pro_uid
|
||||||
|
})
|
||||||
|
});
|
||||||
|
PermissionStore.load();
|
||||||
|
|
||||||
|
var PermissionGridColumn = new Ext.grid.ColumnModel({
|
||||||
|
columns: [
|
||||||
|
new Ext.grid.RowNumberer(),
|
||||||
|
{
|
||||||
|
id: 'TASK_TARGET',
|
||||||
|
header: 'Target Task',
|
||||||
|
dataIndex: 'TASK_TARGET',
|
||||||
|
//width: 100,
|
||||||
|
editable: false,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
},{
|
||||||
|
id: 'GROUP_USER',
|
||||||
|
header: 'Group or Users',
|
||||||
|
dataIndex: 'GROUP_USER',
|
||||||
|
//width: 100,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
},{
|
||||||
|
id: 'TASK_SOURCE',
|
||||||
|
header: 'Origin Task',
|
||||||
|
dataIndex: 'TASK_SOURCE',
|
||||||
|
//width: 100,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
},{
|
||||||
|
id: 'PARTICIPATED',
|
||||||
|
header: 'Participation',
|
||||||
|
dataIndex: 'PARTICIPATED',
|
||||||
|
width: 100,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
},{
|
||||||
|
id: 'OBJECT_TYPE',
|
||||||
|
header: 'Type',
|
||||||
|
dataIndex: 'OBJECT_TYPE',
|
||||||
|
//width: 100,
|
||||||
|
editable: false,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
},{
|
||||||
|
id: 'OBJECT',
|
||||||
|
header: 'Object',
|
||||||
|
dataIndex: 'OBJECT',
|
||||||
|
//width: 100,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
},{
|
||||||
|
id: 'ACTION',
|
||||||
|
header: 'Permission',
|
||||||
|
dataIndex: 'ACTION',
|
||||||
|
//width: 100,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
},{
|
||||||
|
id: 'OP_CASE_STATUS',
|
||||||
|
header: 'Status',
|
||||||
|
dataIndex: 'OP_CASE_STATUS',
|
||||||
|
width: 100,
|
||||||
|
sortable: true,
|
||||||
|
editor: new Ext.form.TextField({
|
||||||
|
//allowBlank: false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
|
||||||
|
var PermissionGrid = new Ext.grid.GridPanel({
|
||||||
|
store: PermissionStore,
|
||||||
|
id : 'mygrid',
|
||||||
|
loadMask: true,
|
||||||
|
loadingText: 'Loading...',
|
||||||
|
renderTo: 'cases-grid',
|
||||||
|
frame: false,
|
||||||
|
autoHeight:false,
|
||||||
|
clicksToEdit: 1,
|
||||||
|
width:450,
|
||||||
|
minHeight:400,
|
||||||
|
height :400,
|
||||||
|
layout: 'fit',
|
||||||
|
cm: PermissionGridColumn,
|
||||||
|
stripeRows: true,
|
||||||
|
//tbar: tb,
|
||||||
|
viewConfig: {forceFit: true}
|
||||||
|
});
|
||||||
|
|
||||||
|
var gridWindow = new Ext.Window({
|
||||||
|
title: 'Process Permissions',
|
||||||
|
collapsible: false,
|
||||||
|
maximizable: true,
|
||||||
|
width: 600,
|
||||||
|
//autoHeight: true,
|
||||||
|
height: 450,
|
||||||
|
layout: 'fit',
|
||||||
|
plain: true,
|
||||||
|
bodyStyle: 'padding:5px;',
|
||||||
|
buttonAlign: 'center',
|
||||||
|
items: PermissionGrid
|
||||||
|
|
||||||
|
});
|
||||||
|
var btnNew = new Ext.Button({
|
||||||
|
id: 'btnNew',
|
||||||
|
text: 'New',
|
||||||
|
iconCls: 'application_add',
|
||||||
|
handler: function () {
|
||||||
|
formWindow.show();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
var PermissionForm =new Ext.FormPanel({
|
||||||
|
// title:"Add new Database Source",
|
||||||
|
collapsible: false,
|
||||||
|
maximizable: true,
|
||||||
|
width:450,
|
||||||
|
frame:true,
|
||||||
|
plain: true,
|
||||||
|
bodyStyle: 'padding:5px;',
|
||||||
|
buttonAlign: 'center',
|
||||||
|
|
||||||
|
items:[{
|
||||||
|
width :150,
|
||||||
|
xtype :'combo',
|
||||||
|
mode :'local',
|
||||||
|
editable :false,
|
||||||
|
fieldLabel :'Status Case',
|
||||||
|
triggerAction :'all',
|
||||||
|
forceSelection : true,
|
||||||
|
name :'OP_CASE_STATUS',
|
||||||
|
displayField :'name',
|
||||||
|
value :'ALL',
|
||||||
|
valueField :'value',
|
||||||
|
store :new Ext.data.JsonStore({
|
||||||
|
fields : ['name', 'value'],
|
||||||
|
data : [
|
||||||
|
{name : 'ALL', value: '0'},
|
||||||
|
{name : 'DRAFTS', value: '1'},
|
||||||
|
{name : 'TO DO', value: '2'},
|
||||||
|
{name : 'PAUSED', value: '3'},
|
||||||
|
{name : 'COMPLETED', value: '4'}]})
|
||||||
|
},{
|
||||||
|
width :150,
|
||||||
|
xtype :'combo',
|
||||||
|
mode :'local',
|
||||||
|
editable :false,
|
||||||
|
fieldLabel :'Target Task',
|
||||||
|
triggerAction :'all',
|
||||||
|
forceSelection : true,
|
||||||
|
name :'TASK_TARGET',
|
||||||
|
displayField :'name',
|
||||||
|
value :'All Tasks',
|
||||||
|
valueField :'value',
|
||||||
|
store :new Ext.data.JsonStore({
|
||||||
|
fields : ['name', 'value'],
|
||||||
|
data : [
|
||||||
|
{name : 'All tasks', value: '0'},
|
||||||
|
{name : 'Apply for leave', value: '1'},
|
||||||
|
{name : 'HR approval', value: '2'},
|
||||||
|
{name : 'Supervisor Approval', value: '3'}]})
|
||||||
|
},{
|
||||||
|
width :150,
|
||||||
|
xtype :'combo',
|
||||||
|
mode :'local',
|
||||||
|
editable :false,
|
||||||
|
fieldLabel :'Group or Users',
|
||||||
|
triggerAction :'all',
|
||||||
|
forceSelection : true,
|
||||||
|
name :'GROUP_USER',
|
||||||
|
displayField :'name',
|
||||||
|
value :'Administrator(Admin)',
|
||||||
|
valueField :'value',
|
||||||
|
store :new Ext.data.JsonStore({
|
||||||
|
fields : ['name', 'value'],
|
||||||
|
data : [
|
||||||
|
{name : 'Administrator(Admin)', value: '0'}]})
|
||||||
|
},{
|
||||||
|
width :150,
|
||||||
|
xtype :'combo',
|
||||||
|
mode :'local',
|
||||||
|
editable :false,
|
||||||
|
fieldLabel :'Origin Task',
|
||||||
|
triggerAction :'all',
|
||||||
|
forceSelection : true,
|
||||||
|
name :'TASK_SOURCE',
|
||||||
|
displayField :'name',
|
||||||
|
value :'All Tasks',
|
||||||
|
valueField :'value',
|
||||||
|
store :new Ext.data.JsonStore({
|
||||||
|
fields : ['name', 'value'],
|
||||||
|
data : [
|
||||||
|
{name : 'All tasks', value: '0'},
|
||||||
|
{name : 'Apply for leave', value: '1'},
|
||||||
|
{name : 'HR approval', value: '2'},
|
||||||
|
{name : 'Supervisor Approval', value: '3'}]})
|
||||||
|
},{
|
||||||
|
width :150,
|
||||||
|
xtype :'combo',
|
||||||
|
mode :'local',
|
||||||
|
editable :false,
|
||||||
|
fieldLabel :'Participation Required?',
|
||||||
|
triggerAction :'all',
|
||||||
|
forceSelection : true,
|
||||||
|
name :'PARTICIPATED',
|
||||||
|
displayField :'name',
|
||||||
|
value :'Yes',
|
||||||
|
valueField :'value',
|
||||||
|
store :new Ext.data.JsonStore({
|
||||||
|
fields : ['name', 'value'],
|
||||||
|
data : [
|
||||||
|
{name : 'Yes', value: '0'},
|
||||||
|
{name : 'No', value: '1'}]})
|
||||||
|
},{
|
||||||
|
width :150,
|
||||||
|
xtype :'combo',
|
||||||
|
mode :'local',
|
||||||
|
editable :false,
|
||||||
|
fieldLabel :'Type',
|
||||||
|
triggerAction :'all',
|
||||||
|
forceSelection : true,
|
||||||
|
name :'OBJECT_TYPE',
|
||||||
|
displayField :'name',
|
||||||
|
value :'All',
|
||||||
|
valueField :'value',
|
||||||
|
store :new Ext.data.JsonStore({
|
||||||
|
fields : ['name', 'value'],
|
||||||
|
data : [
|
||||||
|
{name : 'All', value: '0'},
|
||||||
|
{name : 'Dynaform', value: '1'},
|
||||||
|
{name : 'Input Document', value: '2'},
|
||||||
|
{name : 'Output Document', value: '3'}]})
|
||||||
|
},{
|
||||||
|
width :150,
|
||||||
|
xtype :'combo',
|
||||||
|
mode :'local',
|
||||||
|
editable :false,
|
||||||
|
fieldLabel :'Permission',
|
||||||
|
triggerAction :'all',
|
||||||
|
forceSelection : true,
|
||||||
|
name :'ACTION',
|
||||||
|
displayField :'name',
|
||||||
|
value :'View',
|
||||||
|
valueField :'value',
|
||||||
|
store :new Ext.data.JsonStore({
|
||||||
|
fields : ['name', 'value'],
|
||||||
|
data : [
|
||||||
|
{name : 'View', value: '0'},
|
||||||
|
{name : 'Block', value: '1'}]})
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
|
||||||
|
var formStore = new Ext.data.JsonStore({
|
||||||
|
root : 'data',
|
||||||
|
totalProperty: 'totalCount',
|
||||||
|
idProperty : 'gridIndex',
|
||||||
|
remoteSort : true,
|
||||||
|
fields : dbConnFields,
|
||||||
|
proxy: new Ext.data.HttpProxy({
|
||||||
|
url: 'proxyObjectPermissions.php?pid='+pro_uid+'&t=1'
|
||||||
|
})
|
||||||
|
});
|
||||||
|
formStore.load();
|
||||||
|
|
||||||
|
var formWindow = new Ext.Window({
|
||||||
|
title: 'New specific Permission',
|
||||||
|
collapsible: false,
|
||||||
|
maximizable: true,
|
||||||
|
width: 450,
|
||||||
|
//autoHeight: true,
|
||||||
|
height: 400,
|
||||||
|
//layout: 'fit',
|
||||||
|
plain: true,
|
||||||
|
bodyStyle: 'padding:5px;',
|
||||||
|
buttonAlign: 'center',
|
||||||
|
items: PermissionForm,
|
||||||
|
buttons: [{
|
||||||
|
text: 'Create',
|
||||||
|
handler: function(){
|
||||||
|
var getForm = PermissionForm.getForm().getValues();
|
||||||
|
var Status = getForm.OP_CASE_STATUS;
|
||||||
|
var TargetTask = getForm.TASK_TARGET;
|
||||||
|
var GroupUser = getForm.GROUP_USER;
|
||||||
|
var OriginTask = getForm.TASK_SOURCE;
|
||||||
|
var Participation = getForm.PARTICIPATED;
|
||||||
|
var Type = getForm.OBJECT_TYPE;
|
||||||
|
var Permission = getForm.ACTION;
|
||||||
|
Ext.Ajax.request({
|
||||||
|
url : '../bpmn/processes_Ajax.php',
|
||||||
|
method: 'POST',
|
||||||
|
params:{
|
||||||
|
type :Type,
|
||||||
|
2625 :Server,
|
||||||
|
db_name :DatabaseName,
|
||||||
|
user :Username ,
|
||||||
|
passwd :Password,
|
||||||
|
port :Port,
|
||||||
|
desc :Description,
|
||||||
|
action :'newObjectPermission'
|
||||||
|
},
|
||||||
|
success: function(response) {
|
||||||
|
Ext.MessageBox.alert ('Status','Connection Saved Successfully.');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
//var getData = getstore.data.items;
|
||||||
|
//taskExtObj.saveTaskUsers(getData);
|
||||||
|
|
||||||
|
formWindow.close();
|
||||||
|
dbStore.reload();
|
||||||
|
}
|
||||||
|
},{
|
||||||
|
text: 'Cancel',
|
||||||
|
handler: function(){
|
||||||
|
// when this button clicked,
|
||||||
|
formWindow.close();
|
||||||
|
}
|
||||||
|
}]
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
gridWindow.show();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ProcessMapContext.prototype.processSupervisors= function()
|
ProcessMapContext.prototype.processSupervisors= function()
|
||||||
@@ -1041,4 +1401,4 @@ ProcessMapContext.prototype.processFileManager= function()
|
|||||||
}]
|
}]
|
||||||
});
|
});
|
||||||
window.show();
|
window.show();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user