From 70e82c1f24afd62be4bac002d32e61234a816704 Mon Sep 17 00:00:00 2001
From: Benjamin Renard <benjamin.renard@akka.eu>
Date: Tue, 7 Apr 2020 17:26:00 +0200
Subject: [PATCH] Fix doPlot

---
 src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php | 15 +++++++++++----
 src/InputOutput/IHMImpl/Tools/IHMParamTemplateClass.php                   |  1 -
 src/Request/ParamsRequestImpl/ParamsRequestClass.php                      |  8 ++++----
 src/Request/ParamsRequestImpl/ParamsRequestDataClass.php                  | 11 +++++++++++
 4 files changed, 26 insertions(+), 9 deletions(-)

diff --git a/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php b/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php
index 97a9b17..77f93e3 100644
--- a/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php
+++ b/src/InputOutput/IHMImpl/Params/PlotImpl/IHMInputOutputParamsPlotClass.php
@@ -16,6 +16,8 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 	private $isInstantPlot = false;
 	
 	private $interactiveTimeSelectionState = array();
+        private $interactivePlotTitle = array();
+        private $interactivePlotIndex = array();
 	private $interactiveCrtTTFileIndex = -1;
 	private $interactivePreview = false;
 	
@@ -41,10 +43,11 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 		//Request
 		$this->isInteractiveRequest = ($input->{'file-output'} == 'INTERACTIVE');
 		$this->isFromWS = ($input->{'file-output'} == 'WS');
+		$this->paramsData->setRequestIndex($input->{'tab-index'});
 		$postProcessCmd = "";
 
 		if ($forceTimeZoomReset)
-			$this->resetZoomListForTab($input->{'id'}, $forceTimeZoomReset);
+			$this->resetZoomListForTab($input->{'tab-index'}, $forceTimeZoomReset);
 			
 		$requestNode = $this->paramsData->addRequestNode();
 		$outputsNode = $requestNode->getOutputsNode();
@@ -95,7 +98,7 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 		$filePrefix = "plot_";
 		if ($input->{'file-prefix'} && ($input->{'file-prefix'} != ""))
 			$filePrefix = $input->{'file-prefix'};
-		$filePrefix .= $input->{'id'};
+		$filePrefix .= $input->{'tab-index'};
 			
 		$plotOutputNode->setFilePrefix($filePrefix);
 			
@@ -197,9 +200,11 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 			
 		if ($this->isInteractiveRequest)
 		{
-			$this->interactiveTimeSelectionState[PLOT_RESULT_FILE_KEY."_".$input->{'id'}] = $isIntervalRequest;
+			$this->interactiveTimeSelectionState[PLOT_RESULT_FILE_KEY."_".$input->{'tab-index'}] = $isIntervalRequest;
+                        $this->interactivePlotTitle[PLOT_RESULT_FILE_KEY."_".$input->{'tab-index'}] = $input->{'tab-title'};
+			$this->interactivePlotIndex[PLOT_RESULT_FILE_KEY."_".$input->{'tab-index'}] = $input->{'tab-index'};
 			$this->interactivePreview = isset($input->{'interactive-preview'}) && ($input->{'interactive-preview'});
-			$this->paramsData->addWaitingResult(PLOT_RESULT_FILE_KEY."_".$input->{'id'}, $waitingResultFile);
+			$this->paramsData->addWaitingResult(PLOT_RESULT_FILE_KEY."_".$input->{'tab-index'}, $waitingResultFile);
 		}
 		else
 			$this->paramsData->addWaitingResult(PLOT_RESULT_FILE_KEY, $waitingResultFile);
@@ -1404,8 +1409,10 @@ class IHMInputOutputParamsPlotClass extends IHMInputOutputParamsAbstractClass
 					
 					$result[] = array(
 						"id" => $key,
+						"title" => $this->interactivePlotTitle[$key],
 						"preview" => $this->interactivePreview,
 						"isInterval" => $this->interactiveTimeSelectionState[$key],
+						"index" => $this->interactivePlotIndex[$key],
 						"ttFileIndex" => $this->interactiveCrtTTFileIndex,
 						"context" => IHMPlotContextFileClass::parse($this->getWorkingPath().$contextResult),
 						"plot" => $waitingResult,
diff --git a/src/InputOutput/IHMImpl/Tools/IHMParamTemplateClass.php b/src/InputOutput/IHMImpl/Tools/IHMParamTemplateClass.php
index 13087ae..5963ea7 100644
--- a/src/InputOutput/IHMImpl/Tools/IHMParamTemplateClass.php
+++ b/src/InputOutput/IHMImpl/Tools/IHMParamTemplateClass.php
@@ -114,7 +114,6 @@ class IHMParamTemplateClass
 		}
 		
 		$exploded_args = sscanf($template_args_str , $args_format);
-		error_log($exploded_args);
 		
 		if ($exploded_args === -1)
 			return FALSE;
diff --git a/src/Request/ParamsRequestImpl/ParamsRequestClass.php b/src/Request/ParamsRequestImpl/ParamsRequestClass.php
index ee35f0d..d8f48ce 100644
--- a/src/Request/ParamsRequestImpl/ParamsRequestClass.php
+++ b/src/Request/ParamsRequestImpl/ParamsRequestClass.php
@@ -27,7 +27,7 @@ class ParamsRequestClass extends ProcessRequestClass
 				{
 					if ($cmd != "")
 						$cmd .= " && ";
-					$cmd .= KernelConfigClass::getKernelBinPath()."amdaXMLRequestorTool ".$this->getRequestFilePath(0);
+					$cmd .= KernelConfigClass::getKernelBinPath()."amdaXMLRequestorTool ".$this->getRequestFilePath();
 				}
 				$this->requestData->setCmd($cmd);
 				break;
@@ -78,7 +78,7 @@ class ParamsRequestClass extends ProcessRequestClass
 			
 				$doc->appendChild($xmlNode);
 
-				if (!$doc->save($this->getRequestFilePath(0)))
+				if (!$doc->save($this->getRequestFilePath()))
 				{
 					$this->requestData->setLastErrorMessage('Cannot save params request XML file for request');
 					return false;
@@ -243,9 +243,9 @@ class ParamsRequestClass extends ProcessRequestClass
 	/*
 	 * @brief Get the request file path for AMDA_Kernel
 	*/
-	private function getRequestFilePath($requestIndex)
+	private function getRequestFilePath()
 	{
-		return $this->requestData->getWorkingPath()."request_".$requestIndex.".xml";
+		return $this->requestData->getWorkingPath()."request_".$this->requestData->getRequestIndex().".xml";
 	}
 }
 ?>
diff --git a/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php b/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php
index 24d1ed9..c13c4e5 100644
--- a/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php
+++ b/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php
@@ -32,6 +32,7 @@ class ParamsRequestDataClass extends ProcessRequestDataClass
 	private $paramId               = "";
 	private $datasetId             = array();
 	private $task                  = "";
+	private $requestIndex          = 0;
 
 	function __construct()
 	{
@@ -77,6 +78,16 @@ class ParamsRequestDataClass extends ProcessRequestDataClass
 	{
 		$this->task = $task;
 	}
+
+	public function getRequestIndex()
+	{
+		return $this->requestIndex;
+	}
+
+	public function setRequestIndex($requestIndex)
+	{
+		$this->requestIndex = $requestIndex;
+	}
 	
 	public function addRequestNode()
 	{
--
libgit2 0.21.2