From f08771825368ce13b3f61831fc2d22c888d21e67 Mon Sep 17 00:00:00 2001
From: Armand Bahi <armand.bahi@veremes.com>
Date: Fri, 25 Jan 2019 09:29:23 +0100
Subject: [PATCH] =?UTF-8?q?Boutons=20image=20suivante=20/=20pr=C3=A9c?=
 =?UTF-8?q?=C3=A9dente?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../component/file_picker/file_picker.js      | 63 +++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/src/vitis/client/javascript/externs/formReader/component/file_picker/file_picker.js b/src/vitis/client/javascript/externs/formReader/component/file_picker/file_picker.js
index 5e493a47..6e109445 100644
--- a/src/vitis/client/javascript/externs/formReader/component/file_picker/file_picker.js
+++ b/src/vitis/client/javascript/externs/formReader/component/file_picker/file_picker.js
@@ -468,6 +468,20 @@ nsVitisComponent.FilePickerDirective = function ($timeout, $translate, propertie
                     scope['downloadFile'](oImage);
                 });
 
+                /**
+                 * Image suivante
+                 */
+                $(domImageToolsNext).click(function(){
+                    scope['showNextImageModal'](oImage, dialog);
+                });
+
+                /**
+                 * Image précédente
+                 */
+                $(domImageToolsPrev).click(function(){
+                    scope['showNextImageModal'](oImage, dialog, true);
+                });
+
                 $(domModalcontent).append(domImage);
                 $(domImageToolsContainer).append(domImageToolsPrev);
                 $(domImageToolsContainer).append(domImageToolsNext);
@@ -479,10 +493,59 @@ nsVitisComponent.FilePickerDirective = function ($timeout, $translate, propertie
                 var dialog = bootbox['dialog']({
                     'title': oImage['name'],
                     'className': 'filepicker-image-zoom-modal',
+                    'animate': false,
                     'message': domModalcontent
                 });
             }
 
+            /**
+             * Affiche l'image suivante
+             *
+             * @param  {object} oImage
+             * @param  {object} oBootbox
+             * @param  {boolean} bPrev true pour affiche l'ímage suivante
+             */
+            scope['showNextImageModal'] = function(oImage, oBootbox, bPrev) {
+                $log.log("formReader.FilePickerDirective.showNextImageModal");
+
+                if (!goog.isDefAndNotNull(oImage)) {
+                    console.error('oImage not defined or null');
+                    return 0;
+                }
+
+                if (goog.isDefAndNotNull(oImage['name'])) {
+
+                    var iImageIndex;
+                    for (var i = 0; i < scope['aPreviewImages'].length; i++) {
+                        if(scope['aPreviewImages'][i]['name'] === oImage['name']){
+                            iImageIndex = angular.copy(i);
+                        }
+                    }
+
+                    if (goog.isDefAndNotNull(iImageIndex)) {
+
+                        var oNextImage;
+                        if (bPrev === true) {
+                            oNextImage = scope['aPreviewImages'][iImageIndex - 1];
+                        } else {
+                            oNextImage = scope['aPreviewImages'][iImageIndex + 1];
+                        }
+
+                        if (goog.isDefAndNotNull(oNextImage)) {
+                            if (goog.isDefAndNotNull(oNextImage['name']) &&
+                                goog.isDefAndNotNull(oNextImage['src'])) {
+                                oBootbox['modal']('hide');
+                                scope['showImageModal'](oNextImage);
+                            }
+                        }
+
+                    } else {
+                        console.error('iImageIndex not founded');
+                    }
+                }
+
+            }
+
             /**
              * Sauvegarde les fichiers sur oFormValues
              */
-- 
GitLab