formating file xpdl.php to PSR2

This commit is contained in:
Fernando Ontiveros
2012-07-04 18:24:31 -04:00
parent f898a9c099
commit 4ee129b3b6

View File

@@ -1,111 +1,114 @@
<?php <?php
function addNodox($obj, $padre, $indice, $contenido='', $atributos) function addNodox($obj, $padre, $indice, $contenido='', $atributos='')
{ {
if(is_object($padre)) if (is_object($padre)) {
{ if ($contenido=='') {
if($contenido=='') $nodo = $obj->createElement($indice);
$nodo = $obj->createElement($indice); } else {
else $nodo = $obj->createElement($indice, $contenido);
$nodo = $obj->createElement($indice, $contenido); }
$padre->appendChild($nodo);
} else {
if ($contenido=='') {
$nodo = $obj->createElement($indice);
} else {
$nodo = $obj->createElement($indice, $contenido);
}
$padre->appendChild($nodo); $obj->appendChild($nodo);
} }
else
{ if($contenido=='')
$nodo = $obj->createElement($indice);
else
$nodo = $obj->createElement($indice, $contenido);
$obj->appendChild($nodo); if (is_array($atributos)) {
} foreach ($atributos as $key => $value) {
if(is_array($atributos)) $atributo = $obj->createAttribute($key);
{ $nodo->appendChild($atributo);
foreach($atributos as $key => $value)
{
$atributo = $obj->createAttribute($key);
$nodo->appendChild($atributo);
$texto = $obj->createTextNode($value); $texto = $obj->createTextNode($value);
$atributo->appendChild($texto); $atributo->appendChild($texto);
} }
} }
return $nodo; return $nodo;
} }
function derivationRules($aRoute, $doc, $nodo_derivationrule) function derivationRules($aRoute, $doc, $nodo_derivationrule)
{ $tam = count($aRoute); {
$c=0; $tam = count($aRoute);
switch($aRoute[$c]['ROU_TYPE']) $c=0;
{ switch ($aRoute[$c]['ROU_TYPE'])
case 'SEQUENTIAL': {
$nodo_routeType = addNodox($doc, $nodo_derivationrule, 'Sequential', '', ''); case 'SEQUENTIAL':
$nodo_nexttask = addNodox($doc, $nodo_routeType, 'NextTask', '', ''); $nodo_routeType = addNodox($doc, $nodo_derivationrule, 'Sequential', '', '');
if($aRoute[$c]['ROU_NEXT_TASK'] != -1) $nodo_nexttask = addNodox($doc, $nodo_routeType, 'NextTask', '', '');
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK'])); if ($aRoute[$c]['ROU_NEXT_TASK'] != -1) {
else $nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '',
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', ''); array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK']));
break; } else {
case 'EVALUATE': $nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', '');
$nodo_routeType = addNodox($doc, $nodo_derivationrule, 'Evaluations', '', ''); }
while($c < $tam) break;
{ case 'EVALUATE':
$nodo_evaluation= addNodox($doc, $nodo_routeType, 'Evaluation', '', array('Condition'=> $aRoute[$c]['ROU_CONDITION'])); $nodo_routeType = addNodox($doc, $nodo_derivationrule, 'Evaluations', '', '');
$nodo_nexttask = addNodox($doc, $nodo_evaluation, 'NextTask', '', ''); while ($c < $tam) {
if($aRoute[$c]['ROU_NEXT_TASK'] != -1) $nodo_evaluation= addNodox($doc, $nodo_routeType, 'Evaluation', '', array('Condition'=> $aRoute[$c]['ROU_CONDITION']));
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK'])); $nodo_nexttask = addNodox($doc, $nodo_evaluation, 'NextTask', '', '');
else if ($aRoute[$c]['ROU_NEXT_TASK'] != -1) {
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', ''); $nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK']));
$c++; } else {
} $nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', '');
break; }
case 'SELECT': $c++;
$nodo_routeType = addNodox($doc, $nodo_derivationrule, 'Selections', '', ''); }
while($c < $tam) break;
{ case 'SELECT':
$nodo_selection= addNodox($doc, $nodo_routeType, 'Selection', '', array('Description'=> $aRoute[$c]['ROU_CONDITION'])); $nodo_routeType = addNodox($doc, $nodo_derivationrule, 'Selections', '', '');
$nodo_nexttask = addNodox($doc, $nodo_selection, 'NextTask', '', ''); while ($c < $tam) {
if($aRoute[$c]['ROU_NEXT_TASK'] != -1) $nodo_selection= addNodox($doc, $nodo_routeType, 'Selection', '', array('Description'=> $aRoute[$c]['ROU_CONDITION']));
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK'])); $nodo_nexttask = addNodox($doc, $nodo_selection, 'NextTask', '', '');
else if ($aRoute[$c]['ROU_NEXT_TASK'] != -1) {
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', ''); $nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK']));
$c++; } else {
} $nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', '');
break; }
case 'PARALLEL': $c++;
$nodo_routeType = addNodox($doc, $nodo_derivationrule, 'ParallelForks', '', ''); }
while($c < $tam) break;
{ case 'PARALLEL':
$nodo_parallelfork= addNodox($doc, $nodo_routeType, 'ParallelFork', '', ''); $nodo_routeType = addNodox($doc, $nodo_derivationrule, 'ParallelForks', '', '');
$nodo_nexttask = addNodox($doc, $nodo_parallelfork, 'NextTask', '', ''); while ($c < $tam) {
if($aRoute[$c]['ROU_NEXT_TASK'] != -1) $nodo_parallelfork= addNodox($doc, $nodo_routeType, 'ParallelFork', '', '');
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK'])); $nodo_nexttask = addNodox($doc, $nodo_parallelfork, 'NextTask', '', '');
else
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', ''); if ($aRoute[$c]['ROU_NEXT_TASK'] != -1) {
$c++; $nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK']));
} } else {
break; $nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', '');
case 'PARALLEL-BY-EVALUATION': }
$nodo_routeType = addNodox($doc, $nodo_derivationrule, 'ParallelForksByEvaluation', '', ''); $c++;
while($c < $tam) }
{ break;
$nodo_evaluation= addNodox($doc, $nodo_routeType, 'Evaluation', '', array('Condition'=> $aRoute[$c]['ROU_CONDITION'])); case 'PARALLEL-BY-EVALUATION':
$nodo_nexttask = addNodox($doc, $nodo_evaluation, 'NextTask', '', ''); $nodo_routeType = addNodox($doc, $nodo_derivationrule, 'ParallelForksByEvaluation', '', '');
if($aRoute[$c]['ROU_NEXT_TASK'] != -1) while ($c < $tam) {
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK'])); $nodo_evaluation= addNodox($doc, $nodo_routeType, 'Evaluation', '', array('Condition'=> $aRoute[$c]['ROU_CONDITION']));
else $nodo_nexttask = addNodox($doc, $nodo_evaluation, 'NextTask', '', '');
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', ''); if ($aRoute[$c]['ROU_NEXT_TASK'] != -1) {
$c++; $nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK']));
} } else {
break; $nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', '');
case 'SEC-JOIN': }
$nodo_routeType = addNodox($doc, $nodo_derivationrule, 'ParallelJoin', '', ''); $c++;
$nodo_nexttask = addNodox($doc, $nodo_routeType, 'NextTask', '', ''); }
if($aRoute[$c]['ROU_NEXT_TASK'] != -1) break;
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK'])); case 'SEC-JOIN':
else $nodo_routeType = addNodox($doc, $nodo_derivationrule, 'ParallelJoin', '', '');
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', ''); $nodo_nexttask = addNodox($doc, $nodo_routeType, 'NextTask', '', '');
break; if ($aRoute[$c]['ROU_NEXT_TASK'] != -1) {
} $nodo_taskref = addNodox($doc, $nodo_nexttask, 'TaskRef', '', array('TaskId'=> 'ID'.$aRoute[$c]['ROU_NEXT_TASK']));
} else {
$nodo_taskref = addNodox($doc, $nodo_nexttask, 'End', '', '');
}
break;
}
} }
/****-_--__---___----___---__--_-****/ /****-_--__---___----___---__--_-****/
@@ -127,53 +130,51 @@ $oDataset->next();
$oProcess = new Process(); $oProcess = new Process();
while ($aRow = $oDataset->getRow()) { while ($aRow = $oDataset->getRow()) {
$aProcess = $oProcess->load($aRow['PRO_UID']); $aProcess = $oProcess->load($aRow['PRO_UID']);
$nodo_process = addNodox($doc, $nodo_padre, 'Process', '', array('Title'=> $aProcess['PRO_TITLE'],'Description'=> $aProcess['PRO_DESCRIPTION'])); $nodo_process = addNodox($doc, $nodo_padre, 'Process', '', array('Title'=> $aProcess['PRO_TITLE'],'Description'=> $aProcess['PRO_DESCRIPTION']));
$nodo_tasks = addNodox($doc, $nodo_process, 'Tasks', '', ''); $nodo_tasks = addNodox($doc, $nodo_process, 'Tasks', '', '');
$oTask = new Tasks(); $oTask = new Tasks();
$aTasks= $oTask->getAllTasks($aProcess['PRO_UID']); $aTasks= $oTask->getAllTasks($aProcess['PRO_UID']);
foreach($aTasks as $key => $value) foreach ($aTasks as $key => $value) {
{ //print_r($value); echo "<br>"; //print_r($value); echo "<br>";
$aRoute = $oTask->getRoute($aProcess['PRO_UID'], $value['TAS_UID']); $aRoute = $oTask->getRoute($aProcess['PRO_UID'], $value['TAS_UID']);
//print_r($aRoute[0]['ROU_UID']); echo "<hr>"; //print_r($aRoute[0]['ROU_UID']); echo "<hr>";
/*foreach($aRoute as $k => $v) /*foreach($aRoute as $k => $v)
echo $k."-->".$v."<br>"; echo $k."-->".$v."<br>";
*/ */
if($value['TAS_TYPE']=='NORMAL') if ($value['TAS_TYPE']=='NORMAL') {
{ $ini = ($value['TAS_START']=='TRUE') ? 'true' : 'false';
$ini = ($value['TAS_START']=='TRUE') ? 'true' : 'false';
$nodo_task = addNodox($doc, $nodo_tasks, 'Task', '', array('Title'=> $value['TAS_TITLE'],'Description'=> $value['TAS_DESCRIPTION'],'Id'=> 'ID'.$value['TAS_UID'],'StartingTask'=> $ini)); $nodo_task = addNodox($doc, $nodo_tasks, 'Task', '', array('Title'=> $value['TAS_TITLE'],'Description'=> $value['TAS_DESCRIPTION'],'Id'=> 'ID'.$value['TAS_UID'],'StartingTask'=> $ini));
$nodo_coordinates = addNodox($doc, $nodo_task, 'Coordinates', '', array('XCoordinate'=> $value['TAS_POSX'],'YCoordinate'=> $value['TAS_POSY'])); $nodo_coordinates = addNodox($doc, $nodo_task, 'Coordinates', '', array('XCoordinate'=> $value['TAS_POSX'],'YCoordinate'=> $value['TAS_POSY']));
$nodo_derivationrule = addNodox($doc, $nodo_task, 'DerivationRule', '', ''); $nodo_derivationrule = addNodox($doc, $nodo_task, 'DerivationRule', '', '');
derivationRules($aRoute, $doc, $nodo_derivationrule); derivationRules($aRoute, $doc, $nodo_derivationrule);
$nodo_assignmentrules = addNodox($doc, $nodo_task, 'AssignmentRules', '', ''); $nodo_assignmentrules = addNodox($doc, $nodo_task, 'AssignmentRules', '', '');
$nodo_cyclicalassignment = addNodox($doc, $nodo_assignmentrules, 'CyclicalAssignment', '', ''); $nodo_cyclicalassignment = addNodox($doc, $nodo_assignmentrules, 'CyclicalAssignment', '', '');
$nodo_timingcontrol = addNodox($doc, $nodo_task, 'TimingControl', '', array('TaskDuration'=> $value['TAS_DURATION'])); $nodo_timingcontrol = addNodox($doc, $nodo_task, 'TimingControl', '', array('TaskDuration'=> $value['TAS_DURATION']));
$nodo_permissions = addNodox($doc, $nodo_task, 'Permissions', '', ''); $nodo_permissions = addNodox($doc, $nodo_task, 'Permissions', '', '');
$nodo_caselabels = addNodox($doc, $nodo_task, 'CaseLabels', '', ''); $nodo_caselabels = addNodox($doc, $nodo_task, 'CaseLabels', '', '');
$nodo_notifications = addNodox($doc, $nodo_task, 'Notifications', '', ''); $nodo_notifications = addNodox($doc, $nodo_task, 'Notifications', '', '');
} } else {
else require_once ( "classes/model/SubProcess.php" );
{ require_once ( "classes/model/SubProcess.php" ); $oCriteria = new Criteria('workflow');
$oCriteria = new Criteria('workflow'); $oCriteria->add(SubProcessPeer::PRO_PARENT, $value['PRO_UID']);
$oCriteria->add(SubProcessPeer::PRO_PARENT, $value['PRO_UID']); $oCriteria->add(SubProcessPeer::TAS_PARENT, $value['TAS_UID']);
$oCriteria->add(SubProcessPeer::TAS_PARENT, $value['TAS_UID']); $oDataset = SubProcessPeer::doSelectRS($oCriteria);
$oDataset = SubProcessPeer::doSelectRS($oCriteria); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->next();
$oDataset->next(); $aRow = $oDataset->getRow();
$aRow = $oDataset->getRow(); $nodo_task = addNodox($doc, $nodo_tasks, 'SubProcess', '', array('Title'=> $value['TAS_TITLE'],'Description'=> $value['TAS_DESCRIPTION'],'Id'=> 'ID'.$value['TAS_UID'], 'ProcessRef'=>$aRow['PRO_UID']));
$nodo_task = addNodox($doc, $nodo_tasks, 'SubProcess', '', array('Title'=> $value['TAS_TITLE'],'Description'=> $value['TAS_DESCRIPTION'],'Id'=> 'ID'.$value['TAS_UID'], 'ProcessRef'=>$aRow['PRO_UID'])); $nodo_coordinates = addNodox($doc, $nodo_task, 'Coordinates', '', array('XCoordinate'=> $value['TAS_POSX'],'YCoordinate'=> $value['TAS_POSY']));
$nodo_coordinates = addNodox($doc, $nodo_task, 'Coordinates', '', array('XCoordinate'=> $value['TAS_POSX'],'YCoordinate'=> $value['TAS_POSY'])); $nodo_derivationrule = addNodox($doc, $nodo_task, 'DerivationRule', '', '');
$nodo_derivationrule = addNodox($doc, $nodo_task, 'DerivationRule', '', '');
derivationRules($aRoute, $doc, $nodo_derivationrule); derivationRules($aRoute, $doc, $nodo_derivationrule);
} }
} }
$oDataset->next(); $oDataset->next();
} }
//die; //die;
$doc->preserveWhiteSpace = false; $doc->preserveWhiteSpace = false;
@@ -181,4 +182,3 @@ $doc->formatOutput = true;
$doc->save(PATH_METHODS.'services/test_xpdl.xml'); $doc->save(PATH_METHODS.'services/test_xpdl.xml');
echo "xml for xpdl creado!!!<br>"; echo "xml for xpdl creado!!!<br>";
?>