function MergeFileArrays($a_new_files, $a_saved_files) { if (isset($a_saved_files)) { foreach ($a_saved_files as $s_key => $a_def) { if (isset($a_new_files[$s_key])) { if (!IsUploadedFile($a_new_files[$s_key])) { $a_new_files[$s_key] = $a_def; } } else { $a_new_files[$s_key] = $a_def; } } } return $a_new_files; } RegisterData($aAllRawValues, MergeFileArrays($aFileVars, IsSetSession("FormSavedFiles") ? GetSession("FormSavedFiles") : array())); // // parse all fmcompute fields // if (is_array($SPECIAL_VALUES["fmcompute"])) { $nCompute = count($SPECIAL_VALUES["fmcompute"]); for ($iCompute = 0; $iCompute < $nCompute; $iCompute++) { Load($SPECIAL_VALUES["fmcompute"][$iCompute]); } } else { Load($SPECIAL_VALUES["fmcompute"]); } // // run computations // Compute($aFieldOrder, $aCleanedValues, $aRawDataValues, $aAllRawValues);
Error("fmcompute_regdata", GetMessage(MSG_COMP_REG_DATA, array("NAME" => $s_name, "ERROR" => $s_msg)), false, false); } } } foreach ($a_file_vars as $s_fld_name => $a_file_spec) { if (IsUploadedFile($a_file_spec)) { $s_value = $a_file_spec['name']; } else { $s_value = ""; } if (($s_msg = $FMCalc->RegisterExternalData("PHP", "string", $s_fld_name, "c", $s_value)) !== true) { Error("fmcompute_regdata", GetMessage(MSG_COMP_REG_DATA, array("NAME" => $s_fld_name, "ERROR" => $s_msg)), false, false); } } } RegisterData($aAllRawValues, $aFileVars); // // parse all fmcompute fields // if (is_array($SPECIAL_VALUES["fmcompute"])) { $nCompute = count($SPECIAL_VALUES["fmcompute"]); for ($iCompute = 0; $iCompute < $nCompute; $iCompute++) { Load($SPECIAL_VALUES["fmcompute"][$iCompute]); } } else { Load($SPECIAL_VALUES["fmcompute"]); } // // run computations // Compute($aFieldOrder, $aCleanedValues, $aRawDataValues, $aAllRawValues);