BUG 0000 Problems in the wizard of the triggers, fields type were not validation

- Adjustment in the wizard of the triggers,  validations in the fields
This commit is contained in:
Hector Cortez
2013-01-29 17:07:22 -04:00
parent 5a97a3afb2
commit 3b2d9f6914
6 changed files with 55 additions and 11 deletions

View File

@@ -34,6 +34,7 @@ $oProcessMap = new processMap( new DBConnection() );
$aDataTriggers = $_POST;
$aInfoFunction = explode( ",", $aDataTriggers['ALLFUNCTION'] );
$aInfoFunctionType = explode( ",", $aDataTriggers['ALLFUNCTION_TYPE'] );
$sPMfunction = "
/***************************************************
@@ -51,6 +52,7 @@ $sPMfunction = "
$methodParamsFinal = array ();
//Generate params to send
$i = 0;
foreach ($aInfoFunction as $k => $v) {
if ($v != '') {
@@ -64,8 +66,25 @@ foreach ($aInfoFunction as $k => $v) {
if ((strstr( $aDataTriggers[$sOptionTrigger], "@@" ))) {
$option = trim( $aDataTriggers[$sOptionTrigger] );
} else {
$aDataTriggers[$sOptionTrigger] = (strstr( $aDataTriggers[$sOptionTrigger], 'array' )) ? str_replace( "'", '"', $aDataTriggers[$sOptionTrigger] ) : str_replace( "'", "\'", $aDataTriggers[$sOptionTrigger] );
$option = (is_numeric( $aDataTriggers[$sOptionTrigger] )) ? trim( $aDataTriggers[$sOptionTrigger] ) : (strstr( $aDataTriggers[$sOptionTrigger], "array" )) ? trim( $aDataTriggers[$sOptionTrigger] ) : "'" . trim( $aDataTriggers[$sOptionTrigger] ) . "'";
switch(trim($aInfoFunctionType[$i])) {
case 'boolean' :
$option = $aDataTriggers[$sOptionTrigger];
break;
case 'int' :
$option = intval($aDataTriggers[$sOptionTrigger]);
break;
case 'float' :
case 'real' :
case 'double' :
$option = floatval($aDataTriggers[$sOptionTrigger]);
break;
default:
$option = (is_numeric( $aDataTriggers[$sOptionTrigger] ) || is_bool($aDataTriggers[$sOptionTrigger]) ) ? trim( $aDataTriggers[$sOptionTrigger] ) : (strstr( $aDataTriggers[$sOptionTrigger], "array" )) ? trim( $aDataTriggers[$sOptionTrigger] ) : "'" . trim( $aDataTriggers[$sOptionTrigger] ) . "'";
break;
}
}
} else {
$option = "''";
@@ -73,7 +92,7 @@ foreach ($aInfoFunction as $k => $v) {
$methodParamsFinal[] = $option;
}
$i++;
}
//G::pr($methodParamsFinal);die;
$sPMfunction .= (isset( $aDataTriggers['TRI_ANSWER'] ) && $aDataTriggers['TRI_ANSWER'] != '') ? $aDataTriggers['TRI_ANSWER'] . " = " : "";

View File

@@ -37,7 +37,7 @@ $aDataTriggers = $_POST;
$triUid = $_POST['TRI_UID'];
$aInfoFunction = explode( ",", $aDataTriggers['ALLFUNCTION'] );
$aInfoFunctionType = explode( ",", $aDataTriggers['ALLFUNCTION_TYPE'] );
$sPMfunction = "
/***************************************************
*
@@ -52,8 +52,10 @@ $sPMfunction = "
";
$methodParamsFinal = array ();
//Generate params to send
$i = 0;
foreach ($aInfoFunction as $k => $v) {
if ($v != '') {
@@ -69,8 +71,23 @@ foreach ($aInfoFunction as $k => $v) {
} else {
$aDataTriggers[$sOptionTrigger] = (strstr( $aDataTriggers[$sOptionTrigger], 'array' )) ? str_replace( "'", '"', $aDataTriggers[$sOptionTrigger] ) : str_replace( "'", "\'", $aDataTriggers[$sOptionTrigger] );
switch(trim($aInfoFunctionType[$i])) {
case 'boolean' :
$option = $aDataTriggers[$sOptionTrigger];
break;
case 'int' :
$option = intval($aDataTriggers[$sOptionTrigger]);
break;
case 'float' :
case 'real' :
case 'double' :
$option = floatval($aDataTriggers[$sOptionTrigger]);
break;
default:
$option = (is_numeric( $aDataTriggers[$sOptionTrigger] ) || is_bool($aDataTriggers[$sOptionTrigger]) ) ? trim( $aDataTriggers[$sOptionTrigger] ) : (strstr( $aDataTriggers[$sOptionTrigger], "array" )) ? trim( $aDataTriggers[$sOptionTrigger] ) : "'" . trim( $aDataTriggers[$sOptionTrigger] ) . "'";
break;
}
$option = (is_numeric( $aDataTriggers[$sOptionTrigger] )) ? trim( $aDataTriggers[$sOptionTrigger] ) : (strstr( $aDataTriggers[$sOptionTrigger], "array" )) ? trim( $aDataTriggers[$sOptionTrigger] ) : "'" . trim( $aDataTriggers[$sOptionTrigger] ) . "'";
}
} else {
$option = "' '";
@@ -78,7 +95,7 @@ foreach ($aInfoFunction as $k => $v) {
$methodParamsFinal[] = $option;
}
$i++;
}
$sPMfunction .= (isset( $aDataTriggers['TRI_ANSWER'] ) && $aDataTriggers['TRI_ANSWER'] != '') ? $aDataTriggers['TRI_ANSWER'] . " = " : "";

View File

@@ -117,6 +117,7 @@
<input type="hidden" name="PMFUNTION_NAME" value="{PMFUNTION}">
<input type="hidden" name="LIBRARY_CLASS" value="{LIBRARY_CLASS}">
<input type="hidden" id="PRO_UID" name="PRO_UID" value="{PRO_UID}">
<input type="hidden" id="ALLFUNCTION_TYPE" name="ALLFUNCTION_TYPE" value="{ALLFUNCTION_TYPE}">
<input type="hidden" id="ALLFUNCTION" name="ALLFUNCTION" value="{ALLFUNCTION}">
<input type="hidden" name="PAGED_TABLE_ID" id="PAGED_TABLE_ID" value="{PAGED_TABLE_ID}">
<input type="hidden" name="LIBRARY_NAME" id="LIBRARY_NAME" value="{LIBRARY_NAME}">

View File

@@ -75,7 +75,7 @@ try {
$bReturnValue = false;
$displayMode = 'display:none';
}
$aParametersFun = $methodParameters;
$triggerWizardTemplate = PATH_TPL . 'triggers' . PATH_SEP . 'triggers_CreateWizard.html';
$template = new TemplatePower ( $triggerWizardTemplate );
@@ -118,7 +118,7 @@ try {
$sPMfunction = $sNameFun . " (";
$methodParametersOnlyNames = array ();
$methodParametersNamesType = array ();
if (count ( $aParametersFun ) > 0) {
$template->newBlock ( 'paremetersTriggersGroup' );
$template->assign ( 'PARAMETERS_LABEL', G::LoadTranslation ( 'ID_PARAMETERS' ) );
@@ -126,11 +126,12 @@ try {
if ($v != '') {
$aParametersFunA = explode ( "|", $v );
$paramType = $aParametersFunA [0];
$methodParametersNamesType[] = $paramType;
$paramDefinition = $aParametersFunA [1];
$paramDefinitionA = explode ( "=", $paramDefinition );
$paramName = $paramDefinitionA [0];
$methodParametersOnlyNames [] = $paramName;
$paramDefaultValue = isset ( $paramDefinitionA [1] ) ? $paramDefinitionA [1] : "";
$paramDefaultValue = (isset($paramDefinitionA[1]))? trim($paramDefinitionA[1]) : "";
$paramLabel = isset ( $aParametersFunA [2] ) ? $aParametersFunA [2] : $paramName;
$paramDescription = isset ( $aParametersFunA [3] ) ? $aParametersFunA [3] : "";
$sPMfunction .= ($nrows != 2)
@@ -147,9 +148,8 @@ try {
. "onclick='showDynaformsFormVars($sNameTag , \"../controls/varsAjax\" , "
. " \"$sProUid\" , \"@@\");return;' >";
$template->assign ( 'ADD_TRI_VARIABLE', $tri_Button );
$template->assign ( 'ADD_TRI_VALUE',
str_replace ( "'", "", str_replace ( '"', '', $paramDefaultValue ) ) );
$template->assign("ADD_TRI_VARIABLE", $tri_Button);
$template->assign("ADD_TRI_VALUE", str_replace(array("\"", "'"), array(null, null), $paramDefaultValue));
$fieldDescription = ($paramDescription!="")?$paramDescription . "<br>":"";
if ($paramDefaultValue != "") {
@@ -166,6 +166,7 @@ try {
$template->gotoBlock ( '_ROOT' );
$template->assign ('FIELDS_REQUIRED', implode ( ",", $fieldRequired ));
$template->assign ( 'ALLFUNCTION_TYPE', implode ( ",", $methodParametersNamesType ) );
$template->assign ( 'ALLFUNCTION', implode ( ",", $methodParametersOnlyNames ) );
$sPMfunction .= ");";
$content = $template->getOutputContent ();
@@ -174,4 +175,6 @@ try {
} catch ( Exception $oException ) {
die ( $oException->getMessage () );
}
unset ($_SESSION ['PROCESS']);

View File

@@ -124,6 +124,7 @@
<input type="hidden" name="PMFUNTION_NAME" value="{PMFUNTION}">
<input type="hidden" name="LIBRARY_CLASS" value="{LIBRARY_CLASS}">
<input type="hidden" id="PRO_UID" name="PRO_UID" value="{PRO_UID}">
<input type="hidden" id="ALLFUNCTION_TYPE" name="ALLFUNCTION_TYPE" value="{ALLFUNCTION_TYPE}">
<input type="hidden" id="ALLFUNCTION" name="ALLFUNCTION" value="{ALLFUNCTION}">
<input type="hidden" name="PAGED_TABLE_ID" id="PAGED_TABLE_ID" value="{PAGED_TABLE_ID}">
<input type="hidden" name="LIBRARY_NAME" id="LIBRARY_NAME" value="{LIBRARY_NAME}">

View File

@@ -120,6 +120,7 @@ try {
$sPMfunction = $sNameFun . " (";
$methodParametersOnlyNames = array ();
$methodParametersNamesType = array ();
if (count ( $aParametersFun ) > 0) {
$template->newBlock ( 'paremetersTriggersGroup' );
$template->assign ( 'PARAMETERS_LABEL', G::LoadTranslation ( 'ID_PARAMETERS' ) );
@@ -127,6 +128,7 @@ try {
if ($v != '') {
$aParametersFunA = explode ( "|", $v );
$paramType = $aParametersFunA [0];
$methodParametersNamesType[] = $paramType;
$paramDefinition = $aParametersFunA [1];
$paramDefinitionA = explode ( "=", $paramDefinition );
$paramName = $paramDefinitionA [0];
@@ -172,6 +174,7 @@ try {
}
$template->gotoBlock ( '_ROOT' );
$template->assign ('FIELDS_REQUIRED', implode ( ",", $fieldRequired ));
$template->assign ( 'ALLFUNCTION_TYPE', implode ( ",", $methodParametersNamesType ) );
$template->assign ( 'ALLFUNCTION', implode ( ",", $methodParametersOnlyNames ) );
$sPMfunction .= ");";
$content = $template->getOutputContent ();