]> _ Git - cubeextranet.git/commitdiff
wip #3202 @1
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Tue, 19 Nov 2019 19:14:38 +0000 (19:14 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Tue, 19 Nov 2019 19:14:38 +0000 (19:14 +0000)
inc/ws/Metier/class.ws.book.parametres.php

index 1b28327db735124527e5131fd2c81d17a1490443..0fa7e62046b8e34dce5ecff789689aea7150975d 100644 (file)
@@ -49,6 +49,10 @@ class wsBookParametres extends wsParametres
         $svgFilter->name = __('Fichier SVG') . ' (*.svg)';
         $svgFilter->extensions = '*.svg';
 
+        $tabsFilter = new stdClass();
+        $tabsFilter->name = __('Fichier onglets') . ' (*.svg, *.zip)';
+        $tabsFilter->extensions = '*.svg;*.zip';
+
         $imageExtraFilter = new stdClass();
         $imageExtraFilter->name = __('Images') . ' (*.svg, *.jpg, *.png, *.gif)';
         $imageExtraFilter->extensions = '*.svg;*.jpg;*.png;*.gif';
@@ -65,6 +69,7 @@ class wsBookParametres extends wsParametres
         $cssFilter->name = __('Feuille de style') . ' (.css)';
         $cssFilter->extensions = '*.css';
 
+
         $branches = array('master : git (stable)' => 'stable',
             'master : local (dev)' => 'dev');
         $gitbranches = json_decode(file_get_contents(WS_CACHE . '/activebranches'));
@@ -84,6 +89,9 @@ class wsBookParametres extends wsParametres
             __('Icône + Label') => 'icon',
             __('Image') => 'image'];
 
+        $pagesNumbers = array(__('Virtuelle') => 'virtual',
+            __('Physique') => 'physical');
+
         $this->fields['mobileLVersion'] = array('type' => 'combo', 'default' => 'stable', 'editable' => true,
             'label' => __('Version logicielle'), 'grade' => 1,
             'datas' => $branches
@@ -351,8 +359,7 @@ class wsBookParametres extends wsParametres
         $this->fields['mobileChaptersStyle'] = array('type' => 'combo', 'default' => 'classic', 'editable' => true, 'label' => __('Style des chapîtres') . ' (' . __('version mobile') . ')'
         , 'datas' => array(__('Classique') => 'classic',
                 __('INA') => 'ina'));
-        $this->fields['chaptersPagesNumber'] = array('type' => 'combo', 'default' => 'virtual', 'editable' => true, 'label' => __('Numérotation du sommaire'), 'datas' => array(__('Virtuelle') => 'virtual',
-            __('Physique') => 'physical'));
+        $this->fields['chaptersPagesNumber'] = array('type' => 'combo', 'default' => 'virtual', 'editable' => true, 'label' => __('Numérotation du sommaire'), 'datas' => $pagesNumbers);
 
         $this->fields['chaptersPosition'] = array('type' => 'combo', 'default' => 'center', 'editable' => true, 'label' => __("Position du sommaire"),
             'datas' => array(__('Centré') => 'center',
@@ -362,24 +369,34 @@ class wsBookParametres extends wsParametres
         $this->forms['sommaire'] = array('label' => __('Sommaire'),
             'fieldsnames' => array('displayChaptersIcon', 'displayChaptersPopup', 'displayChaptersAtStart', 'chaptersPage', 'chaptersPosition', 'chaptersLevelLimit', 'chaptersCascade', 'chaptersPagesNumber', '|', 'chaptersColMaxWidth', 'chaptersColumns', 'displayChaptersLine', '|', 'externalChapters', 'fullExternalChapters', '|', 'externalChaptersHTML', '|', 'mobileChaptersStyle'));
         // .
-
-        $this->fields['ongletsXML'] = array('type' => 'textarea', 'default' => '', 'editable' => true, 'label' => __('XML de configuration des onglets'), 'grade' => 5);
-        $this->fields['ongletsSWF'] = array('type' => 'freefile', 'default' => '', 'editable' => true,
-            'label' => __('SWF pour onglets personnalisés'), 'grade' => 3, 'fileFilter' => $swfFilter);
-
-        $this->fields['tabs2DSWF'] = array('type' => 'freefile', 'default' => '', 'editable' => true,
-            'label' => __('SWF pour onglets 2D'), 'grade' => 3, 'fileFilter' => $swfFilter);
-
         $this->fields['tabsHTML5'] = array('type' => 'freefile', 'default' => '', 'editable' => true,
-            'label' => __('Onglets HTML5'), 'grade' => 3);
-
-        $this->fields['flatTabsAbsolute'] = array('type' => 'boolean', 'default' => false, "editable" => true,
-            'label' => __("Positionnement relatif à l'interface"), 'grade' => 5);
-
+            'label' => __('Fichier d\'onglets') . ' (SVG, ZIP)', 'grade' => 3, 'hint' => __('Charger un zip rendra les options ci-dessous inopérantes'), 'fileFilter' => $tabsFilter);
+        $this->fields['tabsSide'] = ['type' => 'combo', 'label' => __('Position des onglets'), 'editable' => true, 'default' => 'right', 'grade' => 5,
+            'datas' => [
+                __('Gauche') => 'left',
+                __('Droite') => 'right',
+            ]
+        ];
         $this->fields['tabsPriority'] = ['type' => 'integer', 'min' => 0, 'max' => 100, 'default' => 15, 'editable' => true, 'label' => 'Priorité des onglets sur les contenus (%)', 'hint' => 'La valeur indique la réduction permise de la taille de la publication.'];
-
-        $this->forms['tabs'] = array('label' => __('Onglets'),
-            'fieldsnames' => array('ongletsSWF', 'ongletsXML', '|', 'tabs2DSWF', 'flatTabsAbsolute', '|', 'tabsHTML5', 'tabsPriority'));
+        $this->fields['tabsPages'] = ['type' => 'text', 'label' => __('Pages des onglets'), 'editable' => true, 'default' => '', 'grade' => 5, 'hint' => __('Numéros de pages séparas par une virgule')];
+        $this->fields['tabsSections'] = ['type' => 'text', 'label' => __('Sections des onglets'), 'editable' => true, 'default' => '', 'grade' => 5, 'hint' => __('Numéros de pages séparés par une virgule')];
+        $this->fields['tabsPagesNumbers'] = ['type' => 'combo', 'label' => __('Numérotation utilisée'), 'editable' => true, 'default' => 'virtual', 'grade' => 5, 'datas' => $pagesNumbers];
+        $this->fields['tabsHideOnCover'] = ['type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __('Cacher les onglets sur la couverture'), 'grade' => 5];
+        $this->fields['tabsHideOnLastPage'] = ['type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Cacher les onglets sur la dernière page'), 'grade' => 5];
+        $this->fields['tabsHideOnPortrait'] = ['type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Cacher les onglets lorsque le fluidbook est en mode portrait'), 'grade' => 5];
+        $this->fields['tabsHideOnZoom'] = ['type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Cacher les onglets lorsque le fluidbook est zoomé'), 'grade' => 5];
+        $this->fields['tabsHideWhenOverlapingArrows'] = ['type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Cacher les onglets lorsqu\'ils passent sous les flèches de navigation'), 'grade' => 5];
+        $this->fields['tabsHideEdges'] = ['type' => 'combo', 'label' => __('Masquer les bordures du fluidbook'), 'editable' => true, 'default' => 'right', 'grade' => 5,
+            'datas' => [
+                __('Aucune') => 'none',
+                __('Gauche') => 'left',
+                __('Droite') => 'right',
+                __('Les deux') => 'both',
+            ]
+        ];
+        $this->fields['tabsMargin'] = ['type' => 'float', 'label' => __('Marge des onglets'), 'editable' => true, 'default' => '-10', 'grade' => 5, 'hint' => __('Une marge négative = les onglets passent sous la publication')];
+        $this->forms['tabs'] = ['label' => __('Onglets'),
+            'fieldsnames' => ['tabsHTML5', 'tabsPages', 'tabsSections', 'tabsPagesNumbers', '|', 'tabsSide', 'tabsMargin', 'tabsHideOnCover', 'tabsHideOnLastPage', 'tabsHideEdges', '|', 'tabsPriority', 'tabsHideWhenOverlapingArrows', 'tabsHideOnPortrait', 'tabsHideOnZoom']];
 
         $this->fields['customLinkClass'] = array('type' => 'text', 'default' => '', 'editable' => true, 'label' => __('Classe pour les liens personnalisés'), 'grade' => 5);
         $this->fields['permanentLinks'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __('Liens visibles en permanence'), 'grade' => 3);
@@ -397,7 +414,7 @@ class wsBookParametres extends wsParametres
         $this->fields['videoBigPlay'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Afficher le gros bouton Play'), 'grade' => 3);
         $this->fields['brightcovePlayerId'] = array('type' => 'text', 'default' => '', 'editable' => true, 'label' => __('Brightcove Player Id'), 'grade' => 3);
         $this->fields['brightcovePlayerSecret'] = array('type' => 'text', 'default' => '', 'editable' => true, 'label' => __('Brightcove Player Secret'), 'grade' => 3);
-        $this->fields['inlineSlideshowTransitionDuration'] = array('type' => 'float', 'default' => 0.75, 'editable' => true, 'label' => __('Durée de la transition des diaporamas intégrés aux pages (s)'));
+        $this->fields['inlineSlideshowTransitionDuration'] = array('type' => 'float', 'default' => 0.75, 'editable' => true, 'label' => __('Durée de la transition des diaporamas intégrés aux pages(s)'));
         $this->fields['inlineSlideshowDuration'] = array('type' => 'float', 'default' => 7, 'editable' => true, 'label' => __('Temps d\'attente des diaporamas intégrés aux pages (s)'));
         $this->fields['textPopupStylesheet'] = ['type' => 'freefile', 'default' => '', 'editable' => true, 'label' => __('Feuille de style des popups de texte'), 'fileFilter' => $cssFilter];
         $this->fields['textPopupWidth'] = ['type' => 'integer', 'default' => '600', 'editable' => true, 'label' => __('Largeur optimale des popups')];
@@ -615,6 +632,20 @@ class wsBookParametres extends wsParametres
         $this->forms['scorm'] = array('label' => __('SCORM'),
             'fieldsnames' => array('scorm_enable', 'scorm_version', 'scorm_id', 'scorm_org', 'scorm_title', 'scorm_variables', '|', 'scorm_complete_on_exit', 'scorm_complete_on_last_page', '|', 'scorm_quizdata', 'scorm_score', 'scorm_score_min', 'scorm_quiz_as_questionnaire'));
 
+
+        $this->fields['ongletsXML'] = array('type' => 'textarea', 'default' => '', 'editable' => true, 'label' => __('XML de configuration des onglets'), 'grade' => 5);
+        $this->fields['ongletsSWF'] = array('type' => 'freefile', 'default' => '', 'editable' => true,
+            'label' => __('SWF pour onglets personnalisés'), 'grade' => 3, 'fileFilter' => $swfFilter);
+
+        $this->fields['tabs2DSWF'] = array('type' => 'freefile', 'default' => '', 'editable' => true,
+            'label' => __('SWF pour onglets 2D'), 'grade' => 3, 'fileFilter' => $swfFilter);
+
+        $this->fields['flatTabsAbsolute'] = array('type' => 'boolean', 'default' => false, "editable" => true,
+            'label' => __("Positionnement relatif à l'interface"), 'grade' => 5);
+
+        $this->forms['flashtabs'] = array('label' => __('Onglets Flash'),
+            'fieldsnames' => array('ongletsSWF', 'ongletsXML', '|', 'tabs2DSWF', 'flatTabsAbsolute'));
+
         $versions = wsUrl::getFluidbookVersions(false);
         $ignore = ['v1', 'v2', 'phonegap'];
         $fields = [];
@@ -630,6 +661,7 @@ class wsBookParametres extends wsParametres
         $this->forms['downloads'] = array('label' => __('Versions disponibles au téléchargement'),
             'fieldsnames' => $fields);
 
+
     }
 
 }