added a new way to validate grids that they are assigned in some dynaforms
This commit is contained in:
@@ -386,17 +386,71 @@ class Step extends BaseStep {
|
|||||||
* @param string $sproUid the uid of the process
|
* @param string $sproUid the uid of the process
|
||||||
* @param string $sObjUID the uid of the dynaform
|
* @param string $sObjUID the uid of the dynaform
|
||||||
*/
|
*/
|
||||||
function loadInfoAssigDynaform($sproUid,$sObjUID){
|
function loadInfoAssigDynaform($sproUid,$sObjUID){
|
||||||
|
|
||||||
$oCriteria = new Criteria('workflow');
|
require_once ( "classes/model/DynaformPeer.php" );
|
||||||
$oCriteria->add(StepPeer::PRO_UID, $sproUid);
|
G::LoadSystem('dynaformhandler');
|
||||||
$oCriteria->add(StepPeer::STEP_UID_OBJ, $sObjUID);
|
|
||||||
$oCriteria->add(StepPeer::STEP_TYPE_OBJ, 'DYNAFORM');
|
$oC = new Criteria('workflow');
|
||||||
$oDataset = StepPeer::doSelectRS($oCriteria);
|
$oC->add(DynaformPeer::DYN_UID, $sObjUID);
|
||||||
|
$oC->add(DynaformPeer::PRO_UID, $sproUid);
|
||||||
|
$oDataset = DynaformPeer::doSelectRS($oC);
|
||||||
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
$oDataset->next();
|
$oDataset->next();
|
||||||
$aRow = $oDataset->getRow();
|
$aRow = $oDataset->getRow();
|
||||||
return($aRow);
|
|
||||||
|
|
||||||
|
if($aRow['DYN_TYPE']!='xmlform') {
|
||||||
|
|
||||||
|
$oC1 = new Criteria('workflow');
|
||||||
|
$oC1->add(DynaformPeer::PRO_UID, $sproUid);
|
||||||
|
$oC1->add(DynaformPeer::DYN_TYPE, "xmlform");
|
||||||
|
$oDataset = DynaformPeer::doSelectRS($oC1);
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
while($oDataset->next()){
|
||||||
|
$aRow1 = $oDataset->getRow();
|
||||||
|
//print_r($aRow1);
|
||||||
|
$dynHandler = new dynaFormHandler(PATH_DYNAFORM.$_POST['PRO_UID']."/".$aRow1['DYN_UID'].".xml");
|
||||||
|
$dynFields = $dynHandler->getFields();
|
||||||
|
$sxmlgrid = '';
|
||||||
|
$sType = '';
|
||||||
|
$check=0;
|
||||||
|
foreach($dynFields as $field){
|
||||||
|
$sType = $this->getAttribute($field, 'type');
|
||||||
|
if($sType == 'grid'){
|
||||||
|
$sxmlgrid = $this->getAttribute($field, 'xmlgrid');
|
||||||
|
$aGridInfo= explode("/",$sxmlgrid);
|
||||||
|
if($aGridInfo[0] == $sproUid && $aGridInfo[1] == $sObjUID){
|
||||||
|
$check=1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ($check==1)?$aGridInfo:'';
|
||||||
|
}else{
|
||||||
|
$oCriteria = new Criteria('workflow');
|
||||||
|
$oCriteria->add(StepPeer::PRO_UID, $sproUid);
|
||||||
|
$oCriteria->add(StepPeer::STEP_UID_OBJ, $sObjUID);
|
||||||
|
$oCriteria->add(StepPeer::STEP_TYPE_OBJ, 'DYNAFORM');
|
||||||
|
$oDataset = StepPeer::doSelectRS($oCriteria);
|
||||||
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
$oDataset->next();
|
||||||
|
$aRow = $oDataset->getRow();
|
||||||
|
return($aRow);
|
||||||
|
}
|
||||||
|
die;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getAttribute($node, $attName){
|
||||||
|
|
||||||
|
foreach ( $node->attributes as $attribute )
|
||||||
|
{
|
||||||
|
if ( $attribute->name == $attName )
|
||||||
|
{
|
||||||
|
return $attribute->value;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
} // Step
|
} // Step
|
||||||
|
|||||||
@@ -119,7 +119,8 @@
|
|||||||
|
|
||||||
isokDependent = ajax_function('@G::encryptlink(@#dynaformsDelete)','getDynaformAssign','DYN_UID='+uid+'&PRO_UID='+proUid,'POST');
|
isokDependent = ajax_function('@G::encryptlink(@#dynaformsDelete)','getDynaformAssign','DYN_UID='+uid+'&PRO_UID='+proUid,'POST');
|
||||||
if(isokDependent){
|
if(isokDependent){
|
||||||
alert(G_STRINGS.ID_DYNAFORM_ASSIGN);return false;
|
msgBox(G_STRINGS.ID_DYNAFORM_ASSIGN,"alert");
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
result = ajax_function('@G::encryptlink(@#dynaformsDelete)','getRelationInfDynaform','DYN_UID='+uid,'POST');
|
result = ajax_function('@G::encryptlink(@#dynaformsDelete)','getRelationInfDynaform','DYN_UID='+uid,'POST');
|
||||||
labelToshow = (result)?'@G::LoadTranslation(ID_MSG_CONFIRM_DELETE_IDOCUMENT)':'@G::LoadTranslation(ID_MSG_CONFIRM_DELETE_DYNAFORM)';
|
labelToshow = (result)?'@G::LoadTranslation(ID_MSG_CONFIRM_DELETE_IDOCUMENT)':'@G::LoadTranslation(ID_MSG_CONFIRM_DELETE_DYNAFORM)';
|
||||||
|
|||||||
Reference in New Issue
Block a user