<?php include_once 'includes/configuration/core_configuration.php'; include_once "includes/commonPages/system_header.php"; if ($_SESSION['posted']) { //This form has been posted so prevent a refresh errors::errorMessage("The Form cannot be re-posted! Please go back to the home page"); } else { //Indicate the form has been posted $_SESSION['posted'] = true; debug::transferFormPosts($_POST); //Fetch the plans from the database $planGraphList = graphPlanDatabaseAccess::getPlanGraphList($_POST['workflowID']); $result = planAction::actOnPlan($planGraphList, "edgeProgression"); $plannerProgress[0] = $result['actionPackets']; $match = false; $edgeProgressionResult = true; $goal = false; $indexTest = 1; while (!$match && $edgeProgressionResult && !$goal) { //Process all edgeProgression actions //Fetch the action packets $actionPackets = $plannerProgress[0]; //Check the edgeprogression action has been matched $edgeProgressionPacket = planningAgent::action($actionPackets, $_POST); //Retreive whether the edge progression test was passed $edgeProgressionResult = $edgeProgressionPacket['match']; //Retrive the selected action packet $selectedActionPacket = $edgeProgressionPacket['actionPacket']; if ($edgeProgressionResult) { //The edgeprogression test succeded
} } } function findDatabaseActions($actionList) { $result = array(); for ($index = 0; $index < sizeof($actionList); $index++) { if ($actionList[$index]->getPredicateName() == 'databaseFetch') { array_push($result, $actionList[$index]); } } return $result; } //Fetch the plan list $planGraphList = graphPlanDatabaseAccess::getPlanGraphList($_GET['workflowID']); $result = planAction::actOnPlan($planGraphList, "formSubmission"); //Seperate the action list from the graph plans $actionList = $result['actionList']; $javaConstraints = $result['javaConstraints']; //Convert constraints plans into Javascript arrays $planString = "\nvar planCollection = Array();\n"; for ($index = 0; $index < sizeof($javaConstraints); $index++) { $planString .= $javaConstraints[$index]->toJavascriptArray($index); } //Find all javaScript predicates and use order to dictate user entry $javaScriptPredicates = javaScript::findJavaScriptActions($actionList); $prologTimeLine = javaScript::javascriptArray($javaScriptPredicates); //Begin JAVAscript controls ?>