From a91eff8ca779a8926e40b167828e02f032306656 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Carretero?=
 <frederic.carretero@veremes.com>
Date: Thu, 22 Nov 2018 16:45:18 +0100
Subject: [PATCH] Correction de l'url du fichier html du widget d'un projet FME

---
 module/javascript/script_module.js  |  5 +++--
 web_service/ws/Workspaces.class.inc | 10 ++++++++++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/module/javascript/script_module.js b/module/javascript/script_module.js
index db3c69f1..55586632 100644
--- a/module/javascript/script_module.js
+++ b/module/javascript/script_module.js
@@ -2588,7 +2588,7 @@ vitisApp.on('appMainDrtvLoaded', function () {
                             "data": {"widgetFileContent": sCode},
                             "scope": scope,
                             "success": function(response) {
-                                oFormValues['url_widget_file'] = propertiesSrvc['web_server_name'] + '/' + propertiesSrvc['ws_data_alias'] + '/gtf/widget/' + response["data"]['workspace_key'] + '.html?token=' + oFormValues['token'];
+                                oFormValues['url_widget_file'] = response["data"]['widget_file_url'];
                                 oFormValues['btn_download_widget_file'] = oFormValues['url_widget_file'];
                                 formSrvc['getFormElementDefinition']('url_widget_file', envSrvc['sFormDefinitionName'])['visible'] = true;
                                 formSrvc['getFormElementDefinition']('btn_download_widget_file', envSrvc['sFormDefinitionName'])['visible'] = true;
@@ -2677,7 +2677,8 @@ vitisApp.on('appMainDrtvLoaded', function () {
                     "scope": scope,
                     "success": function(response) {
                         if (response["data"]['status'] === 1) {
-                            oFormValues['url_widget_file'] = propertiesSrvc['web_server_name'] + '/' + propertiesSrvc['ws_data_alias'] + '/gtf/widget/' + response["data"]['workspace_key'] + '.html?token=' + oFormValues['token'];
+                            var oFormValues = envSrvc['oFormValues'][envSrvc['sFormDefinitionName']];
+                            oFormValues['url_widget_file'] = response["data"]['widget_file_url'];
                             oFormValues['btn_download_widget_file'] = oFormValues['url_widget_file'];
                             formSrvc['getFormElementDefinition']('url_widget_file', envSrvc['sFormDefinitionName'])['visible'] = true;
                             formSrvc['getFormElementDefinition']('btn_download_widget_file', envSrvc['sFormDefinitionName'])['visible'] = true;
diff --git a/web_service/ws/Workspaces.class.inc b/web_service/ws/Workspaces.class.inc
index f38f5966..2ae96b41 100755
--- a/web_service/ws/Workspaces.class.inc
+++ b/web_service/ws/Workspaces.class.inc
@@ -322,6 +322,10 @@ class Workspaces extends GTF {
             $sWidgetHtml .= '' . PHP_EOL . '</body>' . PHP_EOL . '</html>';
             // Création du fichier du widget.
             if (putFileContentInWsDataDir('gtf', 'widget', '', '', $sWorkspace_key . ".html", $sWidgetHtml) !== false) {
+                // Url du fichier du widget.
+                $sFileUrl = getFileUrlInWsDataDir('gtf', 'widget', '', '', $sWorkspace_key . ".html");
+                if ($sFileUrl !== false)
+                    $this->aFields['widget_file_url'] = $sFileUrl;
                 $aXmlRacineAttribute['status'] = 1;
                 $sMessage = $this->asDocument('', 'vitis', $this->aValues['sEncoding'], True, $aXmlRacineAttribute, $this->aValues['sSourceEncoding'], $this->aValues['output']);
             }
@@ -1205,6 +1209,12 @@ class Workspaces extends GTF {
             $aReturn = array('status' => 0, 'error_code' => 13, 'message' => 'The file ' . $sWidgetFile . ' does not exist.');
             WriteToErrorLog("The file '$sWidgetFile' does not exist.");
         }
+        else {
+            // Url du fichier du widget.
+            $sFileUrl = getFileUrlInWsDataDir('gtf', 'widget', '', '', $sWidgetFile);
+            if ($sFileUrl !== false)
+                $this->aFields['widget_file_url'] = $sFileUrl;
+        }
         return $aReturn;
     }
 
-- 
GitLab