improving the dynaform list for new bpmn editor

This commit is contained in:
Fernando Ontiveros
2011-02-16 05:28:22 +00:00
parent df725f6209
commit e6687e6850
4 changed files with 730 additions and 672 deletions

View File

@@ -5129,6 +5129,7 @@ class processMap {
}
//new functions
//deprecated
function getAllDynaformCount(){
$c = $this->tmpCriteria;
$c->clearSelectColumns();
@@ -5150,10 +5151,11 @@ class processMap {
*/
function getExtDynaformsList($start, $limit, $sProcessUID = '')
{
//select the main fields for dynaform and the title and description from CONTENT Table
$sDelimiter = DBAdapter::getStringDelimiter ();
$oCriteria = new Criteria ( 'workflow' );
$oCriteria->addSelectColumn ( DynaformPeer::DYN_UID );
$oCriteria->addSelectColumn ( DynaformPeer::PRO_UID );
//$oCriteria->addSelectColumn ( DynaformPeer::PRO_UID );
$oCriteria->addSelectColumn ( DynaformPeer::DYN_TYPE );
$oCriteria->addAsColumn ( 'DYN_TITLE', 'C1.CON_VALUE' );
$oCriteria->addAsColumn ( 'DYN_DESCRIPTION', 'C2.CON_VALUE' );
@@ -5170,10 +5172,11 @@ class processMap {
$aConditions [] = array ('C2.CON_LANG', $sDelimiter . SYS_LANG . $sDelimiter );
$oCriteria->addJoinMC ( $aConditions, Criteria::LEFT_JOIN );
$oCriteria->add ( DynaformPeer::PRO_UID, $sProcessUID );
$this->tmpCriteria = clone $oCriteria;
//if we have pagination, we use it and limit the query
if($start != '')
$oCriteria->setOffset($start);
if($limit != '')
$oCriteria->setLimit($limit);
@@ -5181,23 +5184,82 @@ class processMap {
$oDataset->setFetchmode ( ResultSet::FETCHMODE_ASSOC );
$oDataset->next ();
$dynaformArray = array ();
$dynaformArray [] = array ('d' => 'char' );
$gridLabel = G::LoadTranslation( 'ID_GRID' );
$normalLabel = G::LoadTranslation( 'ID_NORMAL' );
while ( $aRow = $oDataset->getRow () ) {
//this is a trick to copy the description and title from other language when the current language does not exist for this content row.
if (($aRow ['DYN_TITLE'] == NULL)||($aRow ['DYN_TITLE'] == "")) { // There is no transaltion for this Document name, try to get/regenerate the label
$aRow ['DYN_TITLE'] = Content::Load("DYN_TITLE","",$aRow ['DYN_UID'],SYS_LANG);
}
if (($aRow ['DYN_DESCRIPTION'] == NULL)||($aRow ['DYN_DESCRIPTION'] == "")) { // There is no transaltion for this Document name, try to get/regenerate the label
if (($aRow ['DYN_DESCRIPTION'] == NULL)||($aRow ['DYN_DESCRIPTION'] == "")) { // There is no transaltion for this Document name, try to get/regenerate the label
$aRow ['DYN_DESCRIPTION'] = Content::Load("DYN_DESCRIPTION","",$aRow ['DYN_UID'],SYS_LANG);
}
if ( $aRow['DYN_TYPE'] == 'grid' ) $aRow['DYN_TYPE'] = $gridLabel;
if ( $aRow['DYN_TYPE'] == 'xmlform' ) $aRow['DYN_TYPE'] = $normalLabel;
$aRow['TAS_EDIT'] = 0;
$aRow['TAS_VIEW'] = 0;
$dynaformArray [] = $aRow;
$oDataset->next ();
}
$result = array();
//Now count how many times the dynaform was used in different tasks in VIEW mode,
$groupbyCriteria = new Criteria ( 'workflow' );
$groupbyCriteria->clearSelectColumns();
$groupbyCriteria->addSelectColumn ( StepPeer::STEP_UID_OBJ );
$groupbyCriteria->addSelectColumn('COUNT(TAS_UID)');
$groupbyCriteria->add(StepPeer::PRO_UID, $sProcessUID );
$groupbyCriteria->add(StepPeer::STEP_TYPE_OBJ, 'DYNAFORM' );
$groupbyCriteria->add(StepPeer::STEP_MODE, 'VIEW');
$groupbyCriteria->addGroupByColumn(StepPeer::STEP_UID_OBJ);
$oDataset = DynaformPeer::doSelectRS ( $groupbyCriteria );
$oDataset->setFetchmode ( ResultSet::FETCHMODE_ASSOC );
$oDataset->next ();
while ( $aRow = $oDataset->getRow () ) {
foreach ( $dynaformArray as $key => $val ) {
if ($val['DYN_UID'] == $aRow['STEP_UID_OBJ'] ) $dynaformArray[$key]['TAS_VIEW'] = $aRow['COUNT(TAS_UID)'] ;
}
$oDataset->next ();
}
return $dynaformArray;
//Now count how many times the dynaform was used in different tasks in EDIT mode,
$groupbyCriteria = new Criteria ( 'workflow' );
$groupbyCriteria->clearSelectColumns();
$groupbyCriteria->addSelectColumn ( StepPeer::STEP_UID_OBJ );
$groupbyCriteria->addSelectColumn('COUNT(TAS_UID)');
$groupbyCriteria->add(StepPeer::PRO_UID, $sProcessUID );
$groupbyCriteria->add(StepPeer::STEP_TYPE_OBJ, 'DYNAFORM' );
$groupbyCriteria->add(StepPeer::STEP_MODE, 'EDIT');
$groupbyCriteria->addGroupByColumn(StepPeer::STEP_UID_OBJ);
$oDataset = DynaformPeer::doSelectRS ( $groupbyCriteria );
$oDataset->setFetchmode ( ResultSet::FETCHMODE_ASSOC );
$oDataset->next ();
while ( $aRow = $oDataset->getRow () ) {
foreach ( $dynaformArray as $key => $val ) {
if ($val['DYN_UID'] == $aRow['STEP_UID_OBJ'] ) $dynaformArray[$key]['TAS_EDIT'] = $aRow['COUNT(TAS_UID)'] ;
}
$oDataset->next ();
}
//now query to get total dynaform for this process,
//$counCriteria is used to count how many dynaforms there are in this process
$countCriteria = new Criteria ( 'workflow' );
$countCriteria->clearSelectColumns();
$countCriteria->addSelectColumn('COUNT(*)');
$countCriteria->add ( DynaformPeer::PRO_UID, $sProcessUID );
$oDataset = DynaformPeer::doSelectRS($countCriteria);
$oDataset->next();
$aRow = $oDataset->getRow();
if( is_array($aRow) )
$result['totalCount'] = $aRow[0];
else
$result['totalCount'] = 0;
$result['data'] = $dynaformArray;
return $result;
}

View File

@@ -1,348 +1,344 @@
<?php
G::LoadClass('processMap');
$oProcessMap = new processMap(new DBConnection);
//$_GET['sid'] gets STEP_UID and sTYPE(i.e BEFORE and AFTER) in format STEP_UID-sTYPE
if(isset($_GET['stepid'])){
$aStepTypeId = explode('|',$_GET['stepid']);
$_SESSION['stepUID'] = $_GET['stepid'];
//$aStepTypeId = explode('-','2517180104cd42c25cc39e4071099227-BEFORE');
$sStep = $aStepTypeId[0];
$sType = $aStepTypeId[1];
}
G::LoadClass('processMap');
$oProcessMap = new processMap(new DBConnection);
//$_GET['sid'] gets STEP_UID and sTYPE(i.e BEFORE and AFTER) in format STEP_UID-sTYPE
if(isset($_GET['stepid'])){
$aStepTypeId = explode('|',$_GET['stepid']);
$_SESSION['stepUID'] = $_GET['stepid'];
//$aStepTypeId = explode('-','2517180104cd42c25cc39e4071099227-BEFORE');
$sStep = $aStepTypeId[0];
$sType = $aStepTypeId[1];
}
//$_GET['sid'] gets STEP_UID and sTYPE(i.e BEFORE and AFTER) in format STEP_UID-sTYPE
if(isset($_GET['stepid'])){
$aStepTypeId = explode('|',$_GET['stepid']);
$_SESSION['stepUID'] = $_GET['stepid'];
//$aStepTypeId = explode('-','2517180104cd42c25cc39e4071099227-BEFORE');
$sStep = $aStepTypeId[0];
$sType = $aStepTypeId[1];
}
$start = isset($_POST['start'])? $_POST['start']: 0;
$limit = isset($_POST['limit'])? $_POST['limit']: '';
//$_GET['sid'] gets STEP_UID and sTYPE(i.e BEFORE and AFTER) in format STEP_UID-sTYPE
if(isset($_GET['stepid'])){
$aStepTypeId = explode('|',$_GET['stepid']);
$_SESSION['stepUID'] = $_GET['stepid'];
//$aStepTypeId = explode('-','2517180104cd42c25cc39e4071099227-BEFORE');
$sStep = $aStepTypeId[0];
$sType = $aStepTypeId[1];
}
$start = isset($_POST['start'])? $_POST['start']: 0;
$limit = isset($_POST['limit'])? $_POST['limit']: '';
switch($_GET['action'])
{
case 'getDynaformList':
$rows = $oProcessMap->getExtDynaformsList($start, $limit, $_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllDynaformCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getPMTableDynaform':
$oAdditionalTables = new AdditionalTables();
$aData = $oAdditionalTables->load($_GET['tabId'], true);
$addTabName = $aData['ADD_TAB_NAME'];
foreach ($aData['FIELDS'] as $iRow => $aRow)
{
if ($aRow['FLD_KEY'] == 1)
{
$rows[] = $aRow;
}
}
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAdditionalTables':
$rows = $oProcessMap->getExtAdditionalTablesList();
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getInputDocumentList':
$rows = $oProcessMap->getExtInputDocumentsCriteria($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllInputDocumentCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editInputDocument':
require_once 'classes/model/InputDocument.php';
$oInputDocument = new InputDocument();
$rows = $oInputDocument->load($_GET['INP_DOC_UID']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getOutputDocument':
$rows = $oProcessMap->getExtOutputDocumentsCriteria($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllOutputDocumentCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editObjectPermission':
$rows = $oProcessMap->editExtObjectPermission($_GET['pid'],$_GET['op_uid']);
//array_shift($rows);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'editOutputDocument':
require_once 'classes/model/OutputDocument.php';
$oOutputDocument = new OutputDocument();
$rows = $oOutputDocument->load($_GET['tid']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getReportTables':
$rows = $oProcessMap->getExtReportTables($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllReportTableCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editReportTables':
require_once 'classes/model/ReportTable.php';
$oReportTable = new ReportTable();
$rows = $oReportTable->load($_GET['REP_TAB_UID']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getReportTableType':
if(isset($_GET['pid']) && $_GET['type'] == 'NORMAL')
{
$aTheFields = array();
$aTheFields = getDynaformsVars($_GET['pid'], false);
foreach ($aTheFields as $aField)
{
$rows[] = array('FIELD_UID' => $aField['sName'] . '-' . $aField['sType'],
'FIELD_NAME' => $aField['sName']);
}
switch( $_GET['action'] ) {
case 'getDynaformList' :
$result = $oProcessMap->getExtDynaformsList($start, $limit, $_GET['pid']);
print json_encode( $result ) ;
break;
case 'getPMTableDynaform':
$oAdditionalTables = new AdditionalTables();
$aData = $oAdditionalTables->load($_GET['tabId'], true);
$addTabName = $aData['ADD_TAB_NAME'];
foreach ($aData['FIELDS'] as $iRow => $aRow)
{
if ($aRow['FLD_KEY'] == 1)
{
$rows[] = $aRow;
}
}
else if (isset($_GET['pid']) && $_GET['type'] == 'GRID')
{
$aTheFields = array();
$aTheFields = getGridsVars($_GET['pid']);
foreach ($aTheFields as $aField)
{
$rows[] = array('FIELD_UID' => $aField['sName'] . '-' . $aField['sXmlForm'],
'FIELD_NAME' => $aField['sName']);
}
}
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getDatabaseConnectionList':
$rows = $oProcessMap->getExtCriteriaDBSList($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllDbSourceCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editDatabaseConnection':
require_once 'classes/model/DbSource.php';
$o = new DbSource();
$rows = $o->load($_GET['dbs_uid'],$_GET['pid']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'process_Supervisors':
$rows = $oProcessMap->listExtProcessesSupervisors($start, $limit, $_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllProcessSupervisorsCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableProcessesSupervisors':
$rows = $oProcessMap->listExtNoProcessesUser($_GET['pid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'supervisorDynaforms':
$rows = $oProcessMap->getExtSupervisorDynaformsList($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllSupervisorDynaformsCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableSupervisorDynaforms':
$rows = $oProcessMap->getExtAvailableSupervisorDynaformsList($_GET['pid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'supervisorInputDoc':
$rows = $oProcessMap->getExtSupervisorInputsList($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllSupervisorInputsCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableSupervisorInputDoc':
$rows = $oProcessMap->getExtAvailableSupervisorInputsList($_GET['pid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedCaseTrackerObjects':
$rows = $oProcessMap->getExtCaseTrackerObjectsCriteria($start, $limit, $_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllCaseTrackerObjectCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableCaseTrackerObjects':
$rows = $oProcessMap->getAvailableExtCaseTrackerObjects($_GET['pid']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableSteps':
$rows = $oProcessMap->getExtAvailableBBCriteria($_GET['pid'], $_GET['tid']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedSteps':
$rows = $oProcessMap->getExtStepsCriteria($start, $limit,$_GET['tid']);
$result['totalCount'] = $oProcessMap->getAllStepCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedUsersList':
$rows = $oProcessMap->usersExtList($start, $limit, $_GET['pid'], $_GET['tid']);
$result['totalCount'] = $oProcessMap->getAllTaskUserCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableUsersList':
$rows = $oProcessMap->getAvailableExtUsersCriteria($_GET['tid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableStepTriggers':
$aStepTypeId = explode('|',$_SESSION['stepUID']);
$sStep = $aStepTypeId[0];
$sType = $aStepTypeId[1];
//Getting available Steps Criteria that have been not selected for a particular task
$rows = $oProcessMap->getExtAvailableStepTriggersCriteria($_GET['pid'], $sStep, $_GET['tid'], $sType);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedStepTriggers':
$rows = $oProcessMap->getExtStepTriggersCriteria($start, $limit, $sStep, $_GET['tid'], $sType);
$result['totalCount'] = $oProcessMap->getAllStepTriggerCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableUsers':
$rows = $oProcessMap->getExtAvailableUsersList($_GET['tid']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'assignedUsers':
$rows = $oProcessMap->getExtusersadhoc($start, $limit,$_GET['pid'], $_GET['tid']);
$result['totalCount'] = $oProcessMap->getAllTaskUserCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getTaskPropertiesList':
require_once 'classes/model/Task.php';
$oTask = new Task();
$rows = $oTask->load($_GET['tid']);
while (list($key, $value) = each($rows)) {
if ($value == 'TRUE')
$rows[$key] = true;
else if($value == 'FALSE')
$rows[$key] = false;
if($key == 'TAS_TYPE_DAY' && $value == '1')
$rows[$key] = 'Work Days';
else if($key == 'TAS_TYPE_DAY' && $value == '2')
$rows[$key] = 'Calendar Days';
if($key == 'TAS_TYPE' && $value == 'NORMAL')
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAdditionalTables':
$rows = $oProcessMap->getExtAdditionalTablesList();
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getInputDocumentList':
$rows = $oProcessMap->getExtInputDocumentsCriteria($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllInputDocumentCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editInputDocument':
require_once 'classes/model/InputDocument.php';
$oInputDocument = new InputDocument();
$rows = $oInputDocument->load($_GET['INP_DOC_UID']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getOutputDocument':
$rows = $oProcessMap->getExtOutputDocumentsCriteria($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllOutputDocumentCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editObjectPermission':
$rows = $oProcessMap->editExtObjectPermission($_GET['pid'],$_GET['op_uid']);
//array_shift($rows);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'editOutputDocument':
require_once 'classes/model/OutputDocument.php';
$oOutputDocument = new OutputDocument();
$rows = $oOutputDocument->load($_GET['tid']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getReportTables':
$rows = $oProcessMap->getExtReportTables($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllReportTableCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editReportTables':
require_once 'classes/model/ReportTable.php';
$oReportTable = new ReportTable();
$rows = $oReportTable->load($_GET['REP_TAB_UID']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getReportTableType':
if(isset($_GET['pid']) && $_GET['type'] == 'NORMAL')
{
$aTheFields = array();
$aTheFields = getDynaformsVars($_GET['pid'], false);
foreach ($aTheFields as $aField)
{
$rows[] = array('FIELD_UID' => $aField['sName'] . '-' . $aField['sType'],
'FIELD_NAME' => $aField['sName']);
}
}
else if (isset($_GET['pid']) && $_GET['type'] == 'GRID')
{
$aTheFields = array();
$aTheFields = getGridsVars($_GET['pid']);
foreach ($aTheFields as $aField)
{
$rows[] = array('FIELD_UID' => $aField['sName'] . '-' . $aField['sXmlForm'],
'FIELD_NAME' => $aField['sName']);
}
}
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getDatabaseConnectionList':
$rows = $oProcessMap->getExtCriteriaDBSList($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllDbSourceCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'editDatabaseConnection':
require_once 'classes/model/DbSource.php';
$o = new DbSource();
$rows = $o->load($_GET['dbs_uid'],$_GET['pid']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'process_Supervisors':
$rows = $oProcessMap->listExtProcessesSupervisors($start, $limit, $_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllProcessSupervisorsCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableProcessesSupervisors':
$rows = $oProcessMap->listExtNoProcessesUser($_GET['pid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'supervisorDynaforms':
$rows = $oProcessMap->getExtSupervisorDynaformsList($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllSupervisorDynaformsCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableSupervisorDynaforms':
$rows = $oProcessMap->getExtAvailableSupervisorDynaformsList($_GET['pid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'supervisorInputDoc':
$rows = $oProcessMap->getExtSupervisorInputsList($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllSupervisorInputsCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableSupervisorInputDoc':
$rows = $oProcessMap->getExtAvailableSupervisorInputsList($_GET['pid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedCaseTrackerObjects':
$rows = $oProcessMap->getExtCaseTrackerObjectsCriteria($start, $limit, $_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllCaseTrackerObjectCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableCaseTrackerObjects':
$rows = $oProcessMap->getAvailableExtCaseTrackerObjects($_GET['pid']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableSteps':
$rows = $oProcessMap->getExtAvailableBBCriteria($_GET['pid'], $_GET['tid']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedSteps':
$rows = $oProcessMap->getExtStepsCriteria($start, $limit,$_GET['tid']);
$result['totalCount'] = $oProcessMap->getAllStepCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedUsersList':
$rows = $oProcessMap->usersExtList($start, $limit, $_GET['pid'], $_GET['tid']);
$result['totalCount'] = $oProcessMap->getAllTaskUserCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableUsersList':
$rows = $oProcessMap->getAvailableExtUsersCriteria($_GET['tid']);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAvailableStepTriggers':
$aStepTypeId = explode('|',$_SESSION['stepUID']);
$sStep = $aStepTypeId[0];
$sType = $aStepTypeId[1];
//Getting available Steps Criteria that have been not selected for a particular task
$rows = $oProcessMap->getExtAvailableStepTriggersCriteria($_GET['pid'], $sStep, $_GET['tid'], $sType);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getAssignedStepTriggers':
$rows = $oProcessMap->getExtStepTriggersCriteria($start, $limit, $sStep, $_GET['tid'], $sType);
$result['totalCount'] = $oProcessMap->getAllStepTriggerCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'availableUsers':
$rows = $oProcessMap->getExtAvailableUsersList($_GET['tid']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'assignedUsers':
$rows = $oProcessMap->getExtusersadhoc($start, $limit,$_GET['pid'], $_GET['tid']);
$result['totalCount'] = $oProcessMap->getAllTaskUserCount();
array_shift($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getTaskPropertiesList':
require_once 'classes/model/Task.php';
$oTask = new Task();
$rows = $oTask->load($_GET['tid']);
while (list($key, $value) = each($rows)) {
if ($value == 'TRUE')
$rows[$key] = true;
else if($value == 'FALSE')
$rows[$key] = false;
else if($key == 'TAS_TYPE' && $value == 'ADHOC')
$rows[$key] = true;
}
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getObjectPermission':
$rows = $oProcessMap->getExtObjectsPermissions($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllObjectPermissionCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getObjectPermissionType':
$rows = $oProcessMap->newExtObjectPermission($_GET['pid'],$_GET['objectType']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'process_Edit':
$rows = $oProcessMap->editProcessNew($_GET['pid']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
}
if($key == 'TAS_TYPE_DAY' && $value == '1')
$rows[$key] = 'Work Days';
else if($key == 'TAS_TYPE_DAY' && $value == '2')
$rows[$key] = 'Calendar Days';
if($key == 'TAS_TYPE' && $value == 'NORMAL')
$rows[$key] = false;
else if($key == 'TAS_TYPE' && $value == 'ADHOC')
$rows[$key] = true;
}
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
case 'getObjectPermission':
$rows = $oProcessMap->getExtObjectsPermissions($start, $limit,$_GET['pid']);
$result['totalCount'] = $oProcessMap->getAllObjectPermissionCount();
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'getObjectPermissionType':
$rows = $oProcessMap->newExtObjectPermission($_GET['pid'],$_GET['objectType']);
array_shift($rows);
$result['totalCount'] = count($rows);
$result['data'] = $rows;
print json_encode( $result ) ;
break;
case 'process_Edit':
$rows = $oProcessMap->editProcessNew($_GET['pid']);
$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;
break;
}
//$result['data'] = $rows;
//print json_encode( $result ) ;
/*$tmpData = json_encode( $rows ) ;
$tmpData = str_replace("\\/","/",'{success:true,data:'.$tmpData.'}'); // unescape the slashes
$result = $tmpData;
echo $result;*/
?>

View File

@@ -46,9 +46,9 @@ if( $access != 1 ){
}
$processUID = $_GET['PRO_UID'];
if ( isset($_SESSION['PROCESSMAP']) && $_SESSION['PROCESSMAP'] == 'BPMN' ) {
header ( "Location: ../bpmn/processmap?PRO_UID=". $processUID );
}
//if ( isset($_SESSION['PROCESSMAP']) && $_SESSION['PROCESSMAP'] == 'BPMN' ) {
// header ( "Location: ../bpmn/processmap?PRO_UID=". $processUID );
//}
$_SESSION['PROCESS'] = $processUID;
$_SESSION['PROCESSMAP'] = 'LEIMNUD';

View File

@@ -15,7 +15,9 @@ ProcessOptions.prototype.addDynaform= function(_5625)
{name: 'DYN_UID'},
{name: 'DYN_TYPE'},
{name: 'DYN_TITLE'},
{name: 'DYN_DISCRIPTION'},
{name: 'DYN_DESCRIPTION'},
{name: 'TAS_EDIT'},
{name: 'TAS_VIEW'},
{name: 'ACTION'}
]);
@@ -98,8 +100,8 @@ ProcessOptions.prototype.addDynaform= function(_5625)
});
}
else
PMExt.notify( _('ID_TITLE_JS') , _('ID_TITLE_JS') );
//Ext.MessageBox.alert ('Status','Dynaform assigned to a task steps cannot be deleted.');
PMExt.notify( _('ID_TITLE_JS') , _('ID_TITLE_JS') );
//Ext.MessageBox.alert ('Status','Dynaform assigned to a task steps cannot be deleted.');
}
});
}
@@ -111,38 +113,40 @@ ProcessOptions.prototype.addDynaform= function(_5625)
items: [btnAdd, btnRemove]
});
//taskDynaform? and groupingStore?
//var taskDynaform = new Ext.data.GroupingStore({
var taskDynaform = new Ext.data.GroupingStore({
idProperty : 'gridIndex',
reader : new Ext.data.JsonReader( {
totalProperty: 'totalCount',
root: 'data',
fields : dynaFields
}),
totalProperty: 'totalCount',
root: 'data',
fields : dynaFields
}),
proxy : new Ext.data.HttpProxy({
url: 'proxyExtjs?pid='+pro_uid+'&action=getDynaformList'
}),
sortInfo:{field: 'DYN_TITLE', direction: "ASC"}
//sortInfo:{field: 'DYN_TITLE', direction: "ASC"}
});
taskDynaform.load({params:{start:0, limit:10}});
taskDynaform.load({params:{start:0, limit:10}});
//Creating store for getting list of additional PM tables
var additionalTablesFields = Ext.data.Record.create([
{name: 'ADD_TAB_UID', type: 'string'},
{name: 'ADD_TAB_NAME', type: 'string'},
{name: 'ADD_TAB_DESCRIPTION',type: 'string'}
]);
//Creating store for getting list of additional PM tables
var additionalTablesFields = Ext.data.Record.create([
{name: 'ADD_TAB_UID', type: 'string'},
{name: 'ADD_TAB_NAME', type: 'string'},
{name: 'ADD_TAB_DESCRIPTION',type: 'string'}
]);
var additionalTables = new Ext.data.JsonStore({
root : 'data',
totalProperty: 'totalCount',
idProperty : 'gridIndex',
remoteSort : true,
fields : additionalTablesFields,
proxy: new Ext.data.HttpProxy({
url: 'proxyExtjs?action=getAdditionalTables'
})
});
additionalTables.load();
var additionalTables = new Ext.data.JsonStore({
root : 'data',
totalProperty: 'totalCount',
idProperty : 'gridIndex',
remoteSort : true,
fields : additionalTablesFields,
proxy: new Ext.data.HttpProxy({
url: 'proxyExtjs?action=getAdditionalTables'
})
});
additionalTables.load();
//Creating store for getting list of Fields of additional PM tables
var TablesFields = Ext.data.Record.create([
@@ -164,328 +168,324 @@ ProcessOptions.prototype.addDynaform= function(_5625)
});
//tablesFieldsStore.load();
var dynaformColumns = new Ext.grid.ColumnModel({
var dynaformColumns = new Ext.grid.ColumnModel({
defaults: {
width: 200,
sortable: true
},
width: 90,
sortable: true
},
columns: [
new Ext.grid.RowNumberer(),
new Ext.grid.RowNumberer(),
{
header: _('ID_TITLE_FIELD'),
dataIndex: 'DYN_TITLE',
width: 280,
},{
header: _('ID_TYPE'),
dataIndex: 'DYN_TYPE',
width: 90,
},{
sortable: false,
header: _('ID_TAS_EDIT'),
dataIndex: 'TAS_EDIT',
width: 110
},{
sortable: false,
header: _('ID_TAS_VIEW'),
dataIndex: 'TAS_VIEW',
width: 110
},{
sortable: false,
width: 50,
renderer: function(val, meta, record)
{
id: 'DYN_TITLE',
header: _('ID_TITLE_FIELD'),
dataIndex: 'DYN_TITLE',
width: 280,
editable: false,
editor: new Ext.form.TextField({
allowBlank: false
})
},{
id: 'ACTION',
header: _('ID_TYPE'),
dataIndex: 'ACTION',
//width: 280,
editable: false,
editor: new Ext.form.TextField({
allowBlank: false
})
},
{
sortable: false,
renderer: function(val, meta, record)
{
return String.format("<a href='../dynaforms/dynaforms_Editor?PRO_UID={0}&DYN_UID={1}' >Edit</a>",pro_uid,record.data.DYN_UID);
}
},
{
sortable: false,
renderer: function(val, meta, record)
{
return String.format("<input type='button' value='UID' onclick=workflow.createUIDButton('{0}');>",record.data.DYN_UID);
}
return String.format("<a href='../dynaforms/dynaforms_Editor?PRO_UID={0}&DYN_UID={1}' >Edit</a>",pro_uid,record.data.DYN_UID);
}
},{
sortable: false,
width: 60,
renderer: function(val, meta, record)
{
return String.format("<input type='button' value='UID' onclick=workflow.createUIDButton('{0}');>",record.data.DYN_UID);
}
}
]
});
var addTableColumns = new Ext.grid.ColumnModel({
columns: [
new Ext.grid.RowNumberer(),
{
id: 'FLD_NAME',
header: _('ID_PRIMARY_KEY'),
dataIndex: 'FLD_NAME',
width: 200,
editable: false,
sortable: true,
editor: new Ext.form.TextField({
allowBlank: false
})
},{
id: 'PRO_VARIABLE',
header: _('ID_VARIABLES'),
dataIndex: 'PRO_VARIABLE',
width: 200,
sortable: true,
editor: new Ext.form.TextField({
allowBlank: false
})
},{
sortable: false,
renderer: function(val){return '<input type="button" value="@@" id="'+val+'"/>';}
}
]
});
columns: [
new Ext.grid.RowNumberer(),
{
id: 'FLD_NAME',
header: _('ID_PRIMARY_KEY'),
dataIndex: 'FLD_NAME',
width: 200,
editable: false,
sortable: true,
editor: new Ext.form.TextField({
allowBlank: false
})
},{
id: 'PRO_VARIABLE',
header: _('ID_VARIABLES'),
dataIndex: 'PRO_VARIABLE',
width: 200,
sortable: true,
editor: new Ext.form.TextField({
allowBlank: false
})
},{
sortable: false,
renderer: function(val){return '<input type="button" value="@@" id="'+val+'"/>';}
}
]
});
var dynaformGrid = new Ext.grid.GridPanel({
store: taskDynaform,
id : 'mygrid',
loadMask: true,
loadingText: 'Loading...',
//renderTo: 'cases-grid',
frame: false,
autoHeight:false,
clicksToEdit: 1,
minHeight:400,
height :400,
width: '',
layout: 'fit',
cm: dynaformColumns,
stateful : true,
stateId : 'grid',
stripeRows: true,
tbar: tb,
bbar: new Ext.PagingToolbar({
pageSize: 10,
store: taskDynaform,
displayInfo: true,
displayMsg: 'Displaying dynaforms {0} - {1} of {2}',
emptyMsg: "No users to display",
items:[]
}),
viewConfig: {forceFit: true}
var dynaformGrid = new Ext.grid.GridPanel({
store: taskDynaform,
id : 'mygrid',
loadMask: true,
loadingText: 'Loading...',
//renderTo: 'cases-grid',
frame: false,
autoHeight:false,
minHeight:400,
height :400,
width: '',
layout: 'fit',
cm: dynaformColumns,
stateful : true,
stateId : 'grid',
stripeRows: true,
tbar: tb,
bbar: new Ext.PagingToolbar({
pageSize: 10,
store: taskDynaform,
displayInfo: true,
displayMsg: 'Displaying dynaforms {0} - {1} of {2}',
emptyMsg: "No users to display",
items:[]
}),
viewConfig: {forceFit: true}
});
var dynaformDetails = new Ext.FormPanel({
labelWidth: 100,
buttonAlign: 'center',
width : 490,
height : 420,
bodyStyle : 'padding:10px 0 0 10px;',
//monitorValid : true,
autoHeight: true,
//defaults :{autoScroll:true},
items:
[{
xtype: 'fieldset',
layout: 'fit',
border:true,
title: _('ID_SELECT_DYNAFORM'),
width: 500,
collapsible: false,
labelAlign: 'top',
items:[{
xtype: 'radiogroup',
//id: 'dynaformType',
layout: 'fit',
fieldLabel: _('ID_TYPE'),
itemCls: 'x-check-group-alt',
columns: 1,
items: [
{
boxLabel: _('ID_BLANK_DYNAFORM'),
name: 'DYN_SOURCE',
inputValue: 'blankDyna',
checked: true
},
var dynaformDetails = new Ext.FormPanel({
labelWidth : 100,
buttonAlign : 'center',
width : 490,
height : 420,
bodyStyle : 'padding:10px 0 0 10px;',
autoHeight: true,
items:
[{
xtype: 'fieldset',
layout: 'fit',
border:true,
title: _('ID_SELECT_DYNAFORM'),
width: 500,
collapsible: false,
labelAlign: 'top',
items:[{
xtype: 'radiogroup',
//id: 'dynaformType',
layout: 'fit',
fieldLabel: _('ID_TYPE'),
itemCls: 'x-check-group-alt',
columns: 1,
items: [
{
boxLabel: _('ID_BLANK_DYNAFORM'),
name: 'DYN_SOURCE',
inputValue: 'blankDyna',
checked: true
},
{
boxLabel: _('ID_PM_DYNAFORM'),
name: 'DYN_SOURCE',
inputValue: 'pmTableDyna'
}],
listeners: {
change: function(radiogroup, radio) {
if(radio.inputValue == 'blankDyna')
{
Ext.getCmp("blankDynaform").show();
Ext.getCmp("pmTableDynaform").hide();
}
else
{
Ext.getCmp("blankDynaform").hide();
Ext.getCmp("pmTableDynaform").show();
}
}
}
}]
},
{
xtype: 'fieldset',
id: 'blankDynaform',
border:true,
hidden: false,
title: _('ID_DYNAFORM_INFORMATION'),
width: 500,
items:[{
xtype : 'textfield',
fieldLabel: _('ID_TITLE'),
name : 'DYN_TITLE1',
width : 350,
allowBlank: false
},{
width : 350,
xtype: 'combo',
allowBlank: false,
mode: 'local',
editable: false,
fieldLabel: _('ID_TYPE'),
triggerAction: 'all',
forceSelection: true,
name: 'ACTION',
displayField: 'name',
valueField: 'value',
value : 'Normal',
store: new Ext.data.JsonStore({
fields : ['name', 'value'],
data : [
{name : _('ID_NORMAL'), value: 'Normal'},
{name : _('ID_GRID') , value: 'Grid'},
]
})
},{
xtype : 'textarea',
fieldLabel: _('ID_DESCRIPTION'),
name : 'DYN_DESCRIPTION1',
height : 120,
width : 350
}
]
},{
xtype: 'fieldset',
id: 'pmTableDynaform',
border:true,
hidden: true,
title: 'Dynaform Information',
width: 500,
items:[{
width: 350,
xtype: 'combo',
mode: 'local',
editable: true,
triggerAction: 'all',
forceSelection: true,
fieldLabel: _('ID_CREATE_PM_TABLE'),
emptyText : 'Select Table',
displayField: 'ADD_TAB_NAME',
valueField: 'ADD_TAB_UID',
value : '---------------------------',
store : additionalTables,
onSelect: function(record, index){
var link = 'proxyExtjs?tabId='+record.data.ADD_TAB_UID+'&action=getPMTableDynaform';
tablesFieldsStore.proxy.setUrl(link, true);
tablesFieldsStore.load();
{
boxLabel: _('ID_PM_DYNAFORM'),
name: 'DYN_SOURCE',
inputValue: 'pmTableDyna'
}],
listeners: {
change: function(radiogroup, radio) {
if(radio.inputValue == 'blankDyna')
{
Ext.getCmp("blankDynaform").show();
Ext.getCmp("pmTableDynaform").hide();
}
else
{
Ext.getCmp("blankDynaform").hide();
Ext.getCmp("pmTableDynaform").show();
}
}
}
}]
},
Ext.getCmp("fieldsGrid").show();
Ext.getCmp("pmTable").setValue(record.data.ADD_TAB_UID);
this.setValue(record.data[this.valueField || this.displayField]);
this.collapse();
}
},{
xtype:'hidden',//<--hidden field
name:'ADD_TABLE',
id :'pmTable'
},
{
xtype : 'textfield',
fieldLabel: _('ID_TITLE'),
name : 'DYN_TITLE2',
allowBlank: false,
width : 350
},{
xtype : 'textarea',
fieldLabel: _('ID_DESCRIPTION'),
name : 'DYN_DESCRIPTION2',
height : 120,
width : 350
},
{
xtype: 'grid',
id:'fieldsGrid',
hidden: true,
store: tablesFieldsStore,
cm: addTableColumns,
width: 500,
//height: 300,
autoHeight: true,
clicksToEdit: 1,
plugins: [editor],
//loadMask : true,
loadingText : 'Loading...',
border: false
//renderTo : Ext.getBody()
}
]
}
], buttons: [{
text: _('ID_SAVE'),
//formBind :true,
handler: function(){
var getForm = dynaformDetails.getForm().getValues();
//var sDynaType = getForm.DYN_SOURCE;
if(getForm.DYN_SOURCE == 'blankDyna')
{
xtype: 'fieldset',
id: 'blankDynaform',
border:true,
hidden: false,
title: _('ID_DYNAFORM_INFORMATION'),
width: 500,
items:[{
xtype : 'textfield',
fieldLabel: _('ID_TITLE'),
name : 'DYN_TITLE1',
width : 350,
allowBlank: false
},{
width : 350,
xtype: 'combo',
allowBlank: false,
mode: 'local',
editable: false,
fieldLabel: _('ID_TYPE'),
triggerAction: 'all',
forceSelection: true,
name: 'ACTION',
displayField: 'name',
valueField: 'value',
value : 'Normal',
store: new Ext.data.JsonStore({
fields : ['name', 'value'],
data : [
{name : 'Normal', value: 'Normal'},
{name : 'Grid', value: 'Grid'},
]
})
},{
xtype : 'textarea',
fieldLabel: _('ID_DESCRIPTION'),
name : 'DYN_DESCRIPTION1',
height : 120,
width : 350
}
]
},{
xtype: 'fieldset',
id: 'pmTableDynaform',
border:true,
hidden: true,
title: 'Dynaform Information',
width: 500,
items:[{
width: 350,
xtype: 'combo',
mode: 'local',
editable: true,
triggerAction: 'all',
forceSelection: true,
fieldLabel: _('ID_CREATE_PM_TABLE'),
emptyText : 'Select Table',
displayField: 'ADD_TAB_NAME',
valueField: 'ADD_TAB_UID',
value : '---------------------------',
store : additionalTables,
onSelect: function(record, index){
var link = 'proxyExtjs?tabId='+record.data.ADD_TAB_UID+'&action=getPMTableDynaform';
tablesFieldsStore.proxy.setUrl(link, true);
tablesFieldsStore.load();
Ext.getCmp("fieldsGrid").show();
Ext.getCmp("pmTable").setValue(record.data.ADD_TAB_UID);
this.setValue(record.data[this.valueField || this.displayField]);
this.collapse();
}
},{
xtype:'hidden',//<--hidden field
name:'ADD_TABLE',
id :'pmTable'
},
{
xtype : 'textfield',
fieldLabel: _('ID_TITLE'),
name : 'DYN_TITLE2',
allowBlank: false,
width : 350
},{
xtype : 'textarea',
fieldLabel: _('ID_DESCRIPTION'),
name : 'DYN_DESCRIPTION2',
height : 120,
width : 350
},
{
xtype: 'grid',
id:'fieldsGrid',
hidden: true,
store: tablesFieldsStore,
cm: addTableColumns,
width: 500,
//height: 300,
autoHeight: true,
clicksToEdit: 1,
plugins: [editor],
//loadMask : true,
loadingText : 'Loading...',
border: false
//renderTo : Ext.getBody()
}
]
var sAction = getForm.ACTION;
var sTitle = getForm.DYN_TITLE1;
var sDesc = getForm.DYN_DESCRIPTION1;
}
], buttons: [{
text: _('ID_SAVE'),
//formBind :true,
handler: function(){
var getForm = dynaformDetails.getForm().getValues();
//var sDynaType = getForm.DYN_SOURCE;
if(getForm.DYN_SOURCE == 'blankDyna')
else
{
var sAddTab = getForm.ADD_TABLE;
var aStoreFields = tablesFieldsStore.data.items;
var fName = new Array();
var pVar = new Array();
for(var i=0;i<aStoreFields.length;i++)
{
var sAction = getForm.ACTION;
var sTitle = getForm.DYN_TITLE1;
var sDesc = getForm.DYN_DESCRIPTION1;
fName[i] = aStoreFields[i].data.FLD_NAME;
pVar[i] = aStoreFields[i].data.PRO_VARIABLE;
}
var fieldname = Ext.util.JSON.encode(fName);
var variable = Ext.util.JSON.encode(pVar);
sTitle = getForm.DYN_TITLE2;
sDesc = getForm.DYN_DESCRIPTION2;
}
if(sTitle == '' || sAction == '')
PMExt.notify( _('ID_ERROR') , _('ID_DYNAFORM_TITLE_REQUIRED') );
else
{
var sAddTab = getForm.ADD_TABLE;
var aStoreFields = tablesFieldsStore.data.items;
var fName = new Array();
var pVar = new Array();
for(var i=0;i<aStoreFields.length;i++)
{
fName[i] = aStoreFields[i].data.FLD_NAME;
pVar[i] = aStoreFields[i].data.PRO_VARIABLE;
}
var fieldname = Ext.util.JSON.encode(fName);
var variable = Ext.util.JSON.encode(pVar);
sTitle = getForm.DYN_TITLE2;
sDesc = getForm.DYN_DESCRIPTION2;
Ext.Ajax.request({
url : '../dynaforms/dynaforms_Save.php',
method: 'POST',
params:{
functions : 'saveDynaform',
ACTION : sAction,
FIELDS : fieldname,
VARIABLES : variable,
ADD_TABLE : sAddTab,
PRO_UID : pro_uid,
DYN_TITLE : sTitle,
DYN_TYPE : 'xmlform',
DYN_DESCRIPTION : sDesc
},
success: function(response) {
PMExt.notify( _('ID_STATUS') , _('ID_DYANFORM_CREATED') );
taskDynaform.reload();
formWindow.hide()
}
});
}
if(sTitle == '' || sAction == '')
PMExt.notify( _('ID_ERROR') , _('ID_DYNAFORM_TITLE_REQUIRED') );
else
{
Ext.Ajax.request({
url : '../dynaforms/dynaforms_Save.php',
method: 'POST',
params:{
functions : 'saveDynaform',
ACTION : sAction,
FIELDS : fieldname,
VARIABLES : variable,
ADD_TABLE : sAddTab,
PRO_UID : pro_uid,
DYN_TITLE : sTitle,
DYN_TYPE : 'xmlform',
DYN_DESCRIPTION : sDesc
},
success: function(response) {
PMExt.notify( _('ID_STATUS') , _('ID_DYANFORM_CREATED') );
taskDynaform.reload();
formWindow.hide()
}
});
}
}
}
},{
text: _('ID_CANCEL'),
handler: function(){