]
];
$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->fields['tabsLinkWidth'] = ['type' => 'float', 'label' => __('Largeur des onglets'), 'editable' => true, 'default' => '100', 'grade' => 5];
$this->forms['tabs'] = ['label' => __('Onglets'),
- 'fieldsnames' => ['tabsHTML5', 'tabsPages', 'tabsSections', 'tabsPagesNumbers', '|', 'tabsSide', 'tabsMargin', 'tabsHideOnCover', 'tabsHideOnLastPage', 'tabsHideEdges', '|', 'tabsPriority', 'tabsHideWhenOverlapingArrows', 'tabsHideOnPortrait', 'tabsHideOnZoom']];
+ 'fieldsnames' => ['tabsHTML5', 'tabsPages', 'tabsSections', 'tabsPagesNumbers', '|', 'tabsSide', 'tabsMargin', 'tabsLinkWidth', '|', '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);
'js/libs/fluidbook/fluidbook.slideshow.js',
'js/libs/fluidbook/fluidbook.print.js',
'js/libs/fluidbook/fluidbook.secure.js',
+ 'js/libs/fluidbook/fluidbook.tabs.js',
'js/libs/fluidbook/fluidbook.js',
'js/main.js'],
'mobilefirst' => [
}
if ($this->book->parametres->tabsHTML5 != '' && file_exists($this->wdir . '/' . $this->book->parametres->tabsHTML5)) {
- $links[] = [
- 'page' => 'background',
- 'top' => 0,
- 'left' => 0,
- 'width' => 100,
- 'height' => 100,
- 'type' => 6,
- 'to' => $this->book->parametres->tabsHTML5,
- 'alternative' => $this->book->parametres->tabsHTML5,
- 'image' => '',
- 'inline' => 1,
- 'interactive' => 1,
- 'class' => 'tabslink',
- 'uid' => 'tabs',
- ];
+ $ext = CubeIT_Files::getExtension($this->book->parametres->tabsHTML5);
+ if ($ext === 'zip') {
+ $links[] = [
+ 'page' => 'background',
+ 'top' => 0,
+ 'left' => 0,
+ 'width' => 100,
+ 'height' => 100,
+ 'type' => 6,
+ 'to' => $this->book->parametres->tabsHTML5,
+ 'alternative' => $this->book->parametres->tabsHTML5,
+ 'image' => '',
+ 'inline' => 1,
+ 'interactive' => 1,
+ 'class' => 'tabslink',
+ 'uid' => 'tabs',
+ ];
+ } else if ($ext === 'svg') {
+ $this->vdir->copy($this->wdir . '/' . $this->book->parametres->tabsHTML5, 'data/tabs.svg');
+ $this->config->svgTabs = true;
+ $pagesLists = ['tabsPages', 'tabsSections'];
+ foreach ($pagesLists as $pagesList) {
+ $e = explode(',', $this->book->parametres->$pagesList);
+ $list = [];
+ foreach ($e as $k => $v) {
+ $v = trim($v);
+ if ($v === '') {
+ continue;
+ }
+ if ($this->book->parametres->tabsPagesNumbers === 'virtual') {
+ $v = $this->virtualToPhysical($v);
+ }
+ $list[] = $v;
+ }
+ $this->config->$pagesList = $list;
+ }
+ }
}
$pagesOfCustomLinks = [];