From a726b007bc644f83e35266adc56c958ff25f6c29 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Carretero?=
 <frederic.carretero@veremes.com>
Date: Fri, 16 Nov 2018 11:56:32 +0100
Subject: [PATCH] Upload et copie du fichier .fmw d'un projet FME sur S3.

---
 web_service/ws/Workspaces.class.inc | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/web_service/ws/Workspaces.class.inc b/web_service/ws/Workspaces.class.inc
index 521713a1..38f2feb4 100755
--- a/web_service/ws/Workspaces.class.inc
+++ b/web_service/ws/Workspaces.class.inc
@@ -504,17 +504,22 @@ class Workspaces extends GTF {
                                 // Si le répertoire existe déja : suppression.
                                 if (is_dir($sDirName))
                                     clearDir($sDirName);
-                                //
+                                // Création de l'arboresence.
                                 mkdir($sDirName, 0777, true);
                                 mkdir($sDirName . "/form", 0777, true);
                                 mkdir($sDirName . "/form/ressources", 0777, true);
                                 mkdir($sDirName . "/fme", 0777, true);
-                                uploadFile('fmw_file', "fmw", $sDirName . "/fme/" . $_FILES['fmw_file']['name'], $_FILES['fmw_file']['size'] + 1);
-                                // Fichier .fmw original en .bak.
-                                copy($sDirName . "/fme/" . utf8_decode($_FILES['fmw_file']['name']), $sDirName . "/fme/" . utf8_decode($_FILES['fmw_file']['name']) . '.bak');
-                                //
+                                // Upload du fichier fmw.
+                                $sErrorMessage = uploadInWsDataDir ("gtf", "workspace", $this->aValues["my_vitis_id"], "fmw_file", $this->aValues, -1, "fmw");
+                                // Copie du .fmw original en .bak.
+                                if (empty($sErrorMessage))
+                                    copyFileInWsDataDir ('gtf', 'workspace', $this->aValues["my_vitis_id"], 'fmw_file', $_FILES['fmw_file']['name'], $_FILES['fmw_file']['name'] . '.bak');
+                                else
+                                    writeToErrorLog($sErrorMessage);
+                                // Création des fichiers de ressources js et css.
                                 fclose(fopen($sDirName . "/form/ressources/Subform.js", "w+"));
                                 fclose(fopen($sDirName . "/form/ressources/Subform.css", "w+"));
+                                // Ressources complémentaires.
                                 if ($this->aValues["comp_file"] != "") {
                                     uploadFile('comp_file', "", $sDirName . "/fme/" . $_FILES['comp_file']['name'], $_FILES['comp_file']['size'] + 1);
                                     $ext = pathinfo($_FILES['comp_file']['name'], PATHINFO_EXTENSION);
-- 
GitLab