diff --git a/src/module_vmap/module/javascript/app/vmap/tools/select/select.js b/src/module_vmap/module/javascript/app/vmap/tools/select/select.js index ccee914f1af475c1a8cde0485931b31303b0280f..9abfe9a36f1f77f3e8d99a951d40988bc3a5bcca 100755 --- a/src/module_vmap/module/javascript/app/vmap/tools/select/select.js +++ b/src/module_vmap/module/javascript/app/vmap/tools/select/select.js @@ -1647,40 +1647,8 @@ nsVmap.nsToolsManager.Select.prototype.selectController.prototype.getFormData = nsVmap.nsToolsManager.Select.prototype.selectController.prototype.getFormDataFromValues = function (oValues) { oVmap.log('nsVmap.nsToolsManager.Select.prototype.selectController.prototype.getFormDataFromValues'); - var oFormData_ = new FormData(); - - for (var key in oValues) { - - var bIsMultipleFiles = false; - if (goog.isObject(oValues[key])) { - if (goog.isDefAndNotNull(oValues[key].length)) { - bIsMultipleFiles = true - } - } - - // Fichier ? - if (goog.isDefAndNotNull(oValues[key]['aFiles'])) { - oFormData_.append(key + '_attached_content', oValues[key]['aFiles'][0]); - oFormData_.append(key, oValues[key]['aFiles'][0]['name']); - } else if (bIsMultipleFiles) { - for (var i = 0; i < oValues[key].length; i++) { - if (oValues[key][i]._modified !== false) { - // Ajoute les fichiers - if (goog.isDefAndNotNull(oValues[key][i]['name'])) { - oFormData_.append(key + '[]', oValues[key][i], oValues[key][i]['name']); - } else { - oFormData_.append(key + '[]', oValues[key][i]); - } - } - } - } else { - if (oValues[key]._modified !== false) { - oFormData_.append(key, oValues[key]); - } - } - } - - return oFormData_; + var formSrvc = angular.element(vitisApp.appMainDrtv).injector().get(["formSrvc"]); + return formSrvc['getFormDataFromValues'](oValues); }; nsVmap.nsToolsManager.Select.prototype.selectController.prototype.getUnchangedFilesFromValues = function (oValues) { diff --git a/src/vitis/client/javascript/app/services/formSrvc.js b/src/vitis/client/javascript/app/services/formSrvc.js index 473d222f9c5c1d9d5fa6b61a886670229c726c4c..0bae8fcd8b256b94e96e24373a1fe7581425f47c 100755 --- a/src/vitis/client/javascript/app/services/formSrvc.js +++ b/src/vitis/client/javascript/app/services/formSrvc.js @@ -108,7 +108,6 @@ vitisApp.formSrvc = function (envSrvc, propertiesSrvc, sessionSrvc, formReaderSe } } - console.log("oFormKeysValues: ", oFormKeysValues); break; // Si double liste : valeurs séparé par un champ. case "double_select": @@ -169,6 +168,15 @@ vitisApp.formSrvc = function (envSrvc, propertiesSrvc, sessionSrvc, formReaderSe iRowIndex++; } + // vitis_deleted_files + if (goog.isDefAndNotNull(aFormValues['vitis_deleted_files'])) { + oFormKeysValues['vitis_deleted_files'] = JSON.stringify(aFormValues['vitis_deleted_files']); + } + // vitis_unchanged_files + if (goog.isDefAndNotNull(aFormValues['vitis_unchanged_files'])) { + oFormKeysValues['vitis_unchanged_files'] = JSON.stringify(aFormValues['vitis_unchanged_files']); + } + // Retourne un objet json ou un objet "FormData". if (bReturnJson === true) { oFormData = oFormKeysValues; @@ -181,22 +189,43 @@ vitisApp.formSrvc = function (envSrvc, propertiesSrvc, sessionSrvc, formReaderSe } } else { // Sauve les clés et valeurs dans un objet "FormData". - oFormData = new FormData(); - var aFormKeys = Object.keys(oFormKeysValues); - var i = 0; - while (i < aFormKeys.length) { - oFormData.append(aFormKeys[i], oFormKeysValues[aFormKeys[i]]); - i++; - } + oFormData = this['getFormDataFromValues'](oFormKeysValues); } - // vitis_deleted_files - if (goog.isDefAndNotNull(aFormValues['vitis_deleted_files'])) { - oFormKeysValues['vitis_deleted_files'] = JSON.stringify(aFormValues['vitis_deleted_files']); - } - // vitis_unchanged_files - if (goog.isDefAndNotNull(aFormValues['vitis_unchanged_files'])) { - oFormKeysValues['vitis_unchanged_files'] = JSON.stringify(aFormValues['vitis_unchanged_files']); + return oFormData; + }, + "getFormDataFromValues": function (oValues) { + + var oFormData = new FormData(); + + for (var key in oValues) { + + var bIsMultipleFiles = false; + if (goog.isObject(oValues[key])) { + if (goog.isDefAndNotNull(oValues[key].length)) { + bIsMultipleFiles = true + } + } + + // Fichiers multiples + if (bIsMultipleFiles) { + for (var i = 0; i < oValues[key].length; i++) { + if (oValues[key][i]._modified !== false) { + // Ajoute les fichiers + if (goog.isDefAndNotNull(oValues[key][i]['name'])) { + oFormData.append(key + '[]', oValues[key][i], oValues[key][i]['name']); + } else { + oFormData.append(key + '[]', oValues[key][i]); + } + } + } + } + // Fichier simple + else { + if (oValues[key]._modified !== false) { + oFormData.append(key, oValues[key]); + } + } } return oFormData; diff --git a/src/vitis/client/javascript/externs/formReader/formReaderDrtv.js b/src/vitis/client/javascript/externs/formReader/formReaderDrtv.js index 11eefa1260dfb392b9fd3df6ad8c32d65c89118c..861c396579ca50a11c2750ae464e2fb5c4729914 100644 --- a/src/vitis/client/javascript/externs/formReader/formReaderDrtv.js +++ b/src/vitis/client/javascript/externs/formReader/formReaderDrtv.js @@ -695,7 +695,7 @@ formReader.formReaderDirective = function ($q, formReaderService, propertiesSrvc }); setTimeout(function () { - $('#select_edit_form_reader').find('[data-app-file-picker=""]').each(function(index, elem){ + $(element).find('[data-app-file-picker=""]').each(function(index, elem){ var oFilePickerScope = angular.element($(elem).children()).scope(); oFilePickerScope['initComponent'](); })