diff --git a/application/modules/admin/controllers/TemplateController.php b/application/modules/admin/controllers/TemplateController.php index a3df6a80fb8e4398ef6dfd619d9713901400a445..b00a10659281583f431790954c4b2516f96204f5 100644 --- a/application/modules/admin/controllers/TemplateController.php +++ b/application/modules/admin/controllers/TemplateController.php @@ -77,4 +77,25 @@ class Admin_TemplateController extends ZendAfi_Controller_Action { $this->_helper->notify($this->_('Thème %s mis à jour', $template->getId())); return $this->_redirectClose($this->_getReferer()); } + + + public function applyAction() { + if(!$this->view->template = (new Class_Template_Loader)->find($this->_getParam('template'))) { + $this->_helper->notify($this->_('Une erreur c\'est produite. Vous ne pouvez pas tester le template')); + return $this->_redirectToIndex(); + } + + $this->view->titre = $this->_('Appliquer le thème %s à un profil', + $this->view->template->getTitle()); + + if(!$profile = Class_Profil::find($this->_getParam('on'))) + return; + + if(!$profile_id = $this->view->template->applyOn($profile)) { + $this->_helper->notify($this->_('Une erreur c\'est produite.')); + return $this->_redirectToIndex(); + } + + $this->_redirect('/opac/index/index/id_profil/' . $profile_id); + } } \ No newline at end of file diff --git a/application/modules/admin/views/scripts/template/apply.phtml b/application/modules/admin/views/scripts/template/apply.phtml new file mode 100644 index 0000000000000000000000000000000000000000..4ceed4cc1333ee6fd340396d309eab691c909f82 --- /dev/null +++ b/application/modules/admin/views/scripts/template/apply.phtml @@ -0,0 +1,32 @@ +<?php +$description = (new Class_TableDescription('profiles')) + ->addColumn($this->_('ID'), function($profile) + { + return $profile->getId(); + }) + ->addColumn($this->_('Profil'), function($profile) + { + return $profile->getLibelle(); + }) + + ->addColumn($this->_('Thème courant'), function($profile) + { + return $profile->getTemplate(); + }) + + ->addRowAction(function($profile) { return $this->renderModelActions($profile, + [ + ['url' => ['module' => 'admin', + 'controller' => 'template', + 'action' => 'apply', + 'template' => $this->template->getId(), + 'on' => '%s', + 'render' => ''], + 'id' => $profile->getId(), + 'icon' => 'validate', + 'anchorOptions' => ['target' => '_blank'], + 'label' => $this->_('Appliquer le thème sur le profil %s', + $profile->getLibelle())]]); + }); + +echo $this->renderTable($description, Class_Profil::findTopProfils()); diff --git a/library/Class/Article.php b/library/Class/Article.php index 33ac09b17082c3f8070a6510d598363334ef0df8..c2fabaa2294bc40ce8bf87c295c7f87ce3962423 100644 --- a/library/Class/Article.php +++ b/library/Class/Article.php @@ -119,6 +119,9 @@ class ArticleLoader extends Storm_Model_Loader { * @return ArticleLoader */ protected function _whereEventDateIn($event_date) { + if (!$this->_select) + return $this; + if ($this->_events_only) { $this->_select->where('EVENTS_DEBUT IS NOT NULL'); $this->_select->where('EVENTS_FIN IS NOT NULL'); @@ -141,6 +144,9 @@ class ArticleLoader extends Storm_Model_Loader { * @return ArticleLoader */ protected function _whereEventStartAfter($event_date) { + if (!$this->_select) + return $this; + if (!$event_date || (7 > strlen($event_date))) return $this; @@ -155,6 +161,9 @@ class ArticleLoader extends Storm_Model_Loader { protected function _whereEventEndAfter($event_date) { + if (!$this->_select) + return $this; + if (!$event_date || (10 > strlen($event_date))) return $this; diff --git a/library/Class/Template.php b/library/Class/Template.php index 56dad7c2dd62ecff33800e3807f494510fc3c665..88b36d432540bc0ca6089a3f6069a41a70ebc8aa 100644 --- a/library/Class/Template.php +++ b/library/Class/Template.php @@ -100,6 +100,11 @@ class Class_Template { } + public function getApplyUrl() { + return Class_Url::relative(sprintf('/admin/template/apply/template/%s', $this->getId())); + } + + public function getEditUrl() { return Class_Url::relative(sprintf('/admin/template/edit/template/%s', $this->getId())); } @@ -136,6 +141,21 @@ class Class_Template { } + public function applyOn($profile) { + if(!$profile) + return null; + + $profile + ->setTemplate($this->getId()) + ->save(); + + Class_Profil::setCurrentProfil($profile); + $profile = $this->_patchProfile($profile); + $profile->save(); + return $profile->getId(); + } + + public function createFrom($profile) { if(!$profile) return null; diff --git a/library/Class/Template/Loader.php b/library/Class/Template/Loader.php index 4248f4d477a2fefe8d9cefca754da4b8e116c34b..ba14b3aecc30f5070693f906d6fa87a17036087f 100644 --- a/library/Class/Template/Loader.php +++ b/library/Class/Template/Loader.php @@ -27,7 +27,9 @@ class Class_Template_Loader { public function getTemplates() { return [new Historic_Template, new Intonation_Template, - new MyBibApp_Template]; + new MyBibApp_Template, + new TerreDuMilieu_Template + ]; } diff --git a/library/ZendAfi/Controller/Plugin/Manager/Template.php b/library/ZendAfi/Controller/Plugin/Manager/Template.php index b0c96f359c146e71e680c95c980f24539b1426e9..8613f38177c3b8d3b6f7624e031d65e7fec1a19e 100644 --- a/library/ZendAfi/Controller/Plugin/Manager/Template.php +++ b/library/ZendAfi/Controller/Plugin/Manager/Template.php @@ -34,14 +34,19 @@ class ZendAfi_Controller_Plugin_Manager_Template extends ZendAfi_Controller_Plug 'anchorOptions' => ['data-popup' => true]], ['url' => $model->getResetUrl(), - 'icon' => 'reload', + 'icon' => 'cancel', 'label' => $this->_('Réinitialiser le thème %s', $model->getTitle()), 'anchorOptions' => $this->_confirm($this->_('Etes-vous sur de vouloir réinitialiser le thème %s ?', $model->getTitle()))], ['url' => $model->getUpdateUrl(), 'icon' => 'batch', 'label' => $this->_('Mettre à jour le thème %s', $model->getTitle()), - 'anchorOptions' => $this->_confirm($this->_('Etes-vous sur de vouloir mettre à jour le thème %s ?', $model->getTitle()))] + 'anchorOptions' => $this->_confirm($this->_('Etes-vous sur de vouloir mettre à jour le thème %s ?', $model->getTitle()))], + + ['url' => $model->getApplyUrl(), + 'icon' => 'copy_profil', + 'label' => $this->_('Appliquer le thème %s sur le profil souhaité', $model->getTitle()), + 'anchorOptions' => ['data-popup' => true]] ]; } diff --git a/library/ZendAfi/View/Helper/Admin/FrontNavEntries.php b/library/ZendAfi/View/Helper/Admin/FrontNavEntries.php index 5eef112ffce0f5cc705f4936806d1859092304f6..a8799beac56b32d86ceb3badc6c4f9df1c2bb430 100644 --- a/library/ZendAfi/View/Helper/Admin/FrontNavEntries.php +++ b/library/ZendAfi/View/Helper/Admin/FrontNavEntries.php @@ -102,50 +102,9 @@ class ZendAfi_View_Helper_Admin_FrontNavEntries extends ZendAfi_View_Helper_Base protected function _adminActions() { $actions = []; - if ($this->_isAllowed('profil', 'accueil') && Class_Users::isCurrentUserAllowedToEditProfile(Class_Profil::getCurrentProfil())) { - $actions[] = $this->view->tagAnchor($this->view->url(['module' => 'admin', - 'controller' => 'profil', - 'action' => 'edit', - 'id_profil' => Class_Profil::getCurrentProfil()->getId()], - null, - true), - $this->_('Configuration du profil') . - $this->view->tagImg(Class_Admin_Skin::current() - ->getIconUrl('icons', - 'profiles')), - [ - 'class' => 'menu_admin_front_anchor', - 'title' => $this->_('Configurer le profil ' . Class_Profil::getCurrentProfil()->getLibelle()), - 'data-popup' => 'true']); - - $actions[] = $this->view->tagAnchor($this->view->url(['module' => 'admin', - 'controller' => 'profil', - 'action' => 'accueil', - 'id_profil' => Class_Profil::getCurrentProfil()->getId()], - null, - true), - $this->_('Configuration de la page') . - $this->view->tagImg(Class_Admin_Skin::current() - ->getIconUrl('actions', - 'edit')), - ['class' => 'menu_admin_front_anchor', - 'title' => $this->_('Configurer la page ' . Class_Profil::getCurrentProfil()->getLibelle()), - 'data-popup' => 'true']); - - $actions[] = $this->view->tagAnchor($this->view->url(['module' => 'admin', - 'controller' => 'widget', - 'action' => 'add-from-template', - 'id_profil' => Class_Profil::getCurrentProfil()->getId()], - null, - true), - $this->_('Ajouter une boîte') . - $this->view->tagImg(Class_Admin_Skin::current() - ->getIconUrl('actions', - 'add')), - ['class' => 'menu_admin_front_anchor', - 'title' => $this->_('Ajouter une boîte à cette page'), - 'data-popup' => 'true']); - } + + if ($this->_isAllowed('profil', 'accueil') && Class_Users::isCurrentUserAllowedToEditProfile(Class_Profil::getCurrentProfil())) + $actions = $this->_profileActions($actions); $actions []= $this->view->tagAnchor(Class_Url::absolute('/admin/index/clearcache/'), $this->_('Vider le cache') . @@ -179,6 +138,69 @@ class ZendAfi_View_Helper_Admin_FrontNavEntries extends ZendAfi_View_Helper_Base } + protected function _profileActions($actions) { + if (!Class_Template::current()->isLegacy()) + $actions [] = $this->view->tagAnchor($this->view->url(['module' => 'admin', + 'controller' => 'template', + 'action' => 'edit', + 'template' => Class_Template::current()->getId()], + null, + true), + $this->_('Configuration du template') . + $this->view->tagImg(Class_Admin_Skin::current() + ->getIconUrl('icons', + 'image_cache')), + [ + 'class' => 'menu_admin_front_anchor', + 'title' => $this->_('Configurer le template ' . Class_Template::current()->getTitle()), + 'data-popup' => 'true']); + + $actions [] = $this->view->tagAnchor($this->view->url(['module' => 'admin', + 'controller' => 'profil', + 'action' => 'edit', + 'id_profil' => Class_Profil::getCurrentProfil()->getId()], + null, + true), + $this->_('Configuration du profil') . + $this->view->tagImg(Class_Admin_Skin::current() + ->getIconUrl('icons', + 'profiles')), + [ + 'class' => 'menu_admin_front_anchor', + 'title' => $this->_('Configurer le profil ' . Class_Profil::getCurrentProfil()->getLibelle()), + 'data-popup' => 'true']); + + $actions [] = $this->view->tagAnchor($this->view->url(['module' => 'admin', + 'controller' => 'profil', + 'action' => 'accueil', + 'id_profil' => Class_Profil::getCurrentProfil()->getId()], + null, + true), + $this->_('Configuration de la page') . + $this->view->tagImg(Class_Admin_Skin::current() + ->getIconUrl('actions', + 'edit')), + ['class' => 'menu_admin_front_anchor', + 'title' => $this->_('Configurer la page ' . Class_Profil::getCurrentProfil()->getLibelle()), + 'data-popup' => 'true']); + + $actions [] = $this->view->tagAnchor($this->view->url(['module' => 'admin', + 'controller' => 'widget', + 'action' => 'add-from-template', + 'id_profil' => Class_Profil::getCurrentProfil()->getId()], + null, + true), + $this->_('Ajouter une boîte') . + $this->view->tagImg(Class_Admin_Skin::current() + ->getIconUrl('actions', + 'add')), + ['class' => 'menu_admin_front_anchor', + 'title' => $this->_('Ajouter une boîte à cette page'), + 'data-popup' => 'true']); + return $actions; + } + + protected function _toggleAnchor($label, $key, $js_on, $js_off) { $toggleFy = function($function_name, $img) use ($label, $key) { return $this->_tag('a', diff --git a/library/ZendAfi/View/Helper/Template/Base.php b/library/ZendAfi/View/Helper/Template/Base.php index c83b1df74d557da3e9a768dc9c632a57a30cb631..19c019e87cb782267ffb115fad8b652f1dd7eabe 100644 --- a/library/ZendAfi/View/Helper/Template/Base.php +++ b/library/ZendAfi/View/Helper/Template/Base.php @@ -54,7 +54,7 @@ class ZendAfi_View_Helper_Template_Base extends ZendAfi_View_Helper_BaseHelper { return $this->_tag('div', implode($html) . $this->_getAdminTools(), - ['id' => 'boite_' . $this->_widget->getId(), + ['id' => 'boite_' . $this->_widget->getIdForHtml(), 'class' => sprintf('boite %s %s', $this->_getClasses(), $this->_widget->wrapperClasses())]); diff --git a/library/templates/Intonation/Library/Widget/AdminTools/Form.php b/library/templates/Intonation/Library/Widget/AdminTools/Form.php index a77f4e46214cebdb73f2a6c8c25410f964727c7c..e8f1c2bf28533bca1609f41ee8e58dfca3a704d9 100644 --- a/library/templates/Intonation/Library/Widget/AdminTools/Form.php +++ b/library/templates/Intonation/Library/Widget/AdminTools/Form.php @@ -26,7 +26,7 @@ class Intonation_Library_Widget_AdminTools_Form extends ZendAfi_Form_Configurati $this ->addElement('radio', 'display_mode', - ['label' => $this->_('Disposition des outils d\administration'), + ['label' => $this->_('Disposition des outils d\'administration'), 'multiOptions' => [Intonation_Library_Widget_AdminTools_Definition::TOGGLE => $this->_('Voir un bouton à bascule'), Intonation_Library_Widget_AdminTools_Definition::FULL => $this->_('Voir tous les boutons')]]) diff --git a/library/templates/Intonation/Library/Widget/AdminTools/View.php b/library/templates/Intonation/Library/Widget/AdminTools/View.php index 8d34e7cb73b3bbb6ffc7da27c76190e6521ea264..b77071108f887df481bed944149d7ad3926dd42c 100644 --- a/library/templates/Intonation/Library/Widget/AdminTools/View.php +++ b/library/templates/Intonation/Library/Widget/AdminTools/View.php @@ -61,7 +61,10 @@ class Intonation_Library_Widget_Admintools_View extends Zendafi_View_Helper_Accu return $this->view->tag('div', $this->view->tag('button', - $this->_tag('i','', ['class' => 'fas fa-user-cog']), + $this->_tag('i','', ['class' => 'fas fa-user-cog']) + . $this->_tag('span', + $this->_('Administration'), + ['class' => 'button_text d-inline']), ['id' => $id, 'data-toggle' => 'dropdown', 'aria-haspopup' => 'true', diff --git a/library/templates/Intonation/Library/Widget/Carousel/Agenda/View.php b/library/templates/Intonation/Library/Widget/Carousel/Agenda/View.php index 19bc91d969678b58ad08c558b035b42dc1b76101..5cf50c5be06c5b9ce8c75d5c3fde227c849162e2 100644 --- a/library/templates/Intonation/Library/Widget/Carousel/Agenda/View.php +++ b/library/templates/Intonation/Library/Widget/Carousel/Agenda/View.php @@ -55,7 +55,7 @@ class Intonation_Library_Widget_Carousel_Agenda_View extends Intonation_Library_ protected function _getLinkToAllTitle() { - return ''; + return $this->_('Voir tous les événements de la boite %s dans une liste', $this->titre); } diff --git a/library/templates/Intonation/Library/Widget/Carousel/Author/View.php b/library/templates/Intonation/Library/Widget/Carousel/Author/View.php index c0311c5d6717bfc5907796c887f5bde475a5a04b..13c17fa955c648286bfaaba9465eb824568e213b 100644 --- a/library/templates/Intonation/Library/Widget/Carousel/Author/View.php +++ b/library/templates/Intonation/Library/Widget/Carousel/Author/View.php @@ -39,7 +39,7 @@ class Intonation_Library_Widget_Carousel_Author_View extends Intonation_Library_ protected function _getLinkToAllTitle() { - return ''; + return $this->_('Voir tous les auteurs de la boite %s dans une liste', $this->titre); } diff --git a/library/templates/Intonation/Library/Widget/Carousel/Domain/View.php b/library/templates/Intonation/Library/Widget/Carousel/Domain/View.php index 3947c53245389c2fea4c22b0aef0bf96373e4dc4..ef9f3b658a8a0242b2a5b3dbe031ce5d2a3b0b2b 100644 --- a/library/templates/Intonation/Library/Widget/Carousel/Domain/View.php +++ b/library/templates/Intonation/Library/Widget/Carousel/Domain/View.php @@ -46,7 +46,7 @@ class Intonation_Library_Widget_Carousel_Domain_View extends Intonation_Library_ protected function _getLinkToAllTitle() { - return ''; + return $this->_('Voir tous les domaines de la boite %s dans une liste', $this->titre); } diff --git a/library/templates/Intonation/Library/Widget/Carousel/Library/View.php b/library/templates/Intonation/Library/Widget/Carousel/Library/View.php index b267c8ab4a98a210f2483115526aacfb9bf645ba..f753cdf686e0021676aeabc7f9789fb256ee8912 100644 --- a/library/templates/Intonation/Library/Widget/Carousel/Library/View.php +++ b/library/templates/Intonation/Library/Widget/Carousel/Library/View.php @@ -52,7 +52,7 @@ class Intonation_Library_Widget_Carousel_Library_View extends Intonation_Library protected function _getLinkToAllTitle() { - return ''; + return $this->_('Voir toutes les bibliothèques de la boite %s dans une liste', $this->titre); } diff --git a/library/templates/Intonation/Library/Widget/Carousel/Newsletter/View.php b/library/templates/Intonation/Library/Widget/Carousel/Newsletter/View.php index 5bd69ef1fb77f87738164c136db087570b86a858..3edfd97f1f7b81345a0c17c16ff89770035715ff 100644 --- a/library/templates/Intonation/Library/Widget/Carousel/Newsletter/View.php +++ b/library/templates/Intonation/Library/Widget/Carousel/Newsletter/View.php @@ -40,7 +40,7 @@ class Intonation_Library_Widget_Carousel_Newsletter_View extends Intonation_Libr protected function _getLinkToAllTitle() { - return ''; + return $this->_('Voir toutes les lettres d\'informations de la boite %s dans une liste', $this->titre); } diff --git a/library/templates/Intonation/Library/Widget/Nav/View.php b/library/templates/Intonation/Library/Widget/Nav/View.php index 991a1b491b5fab18166b0ada0c7a4da15d032a9d..69e6ef7c35667742ca97ef45dfb8442e13a16dd4 100644 --- a/library/templates/Intonation/Library/Widget/Nav/View.php +++ b/library/templates/Intonation/Library/Widget/Nav/View.php @@ -108,6 +108,9 @@ class Intonation_Library_Widget_Nav_View extends Zendafi_View_Helper_Accueil_Bas protected function _renderPicto($params) { + if (!isset($params['picto'])) + return ''; + if (!$src = $params['picto']) return ''; @@ -169,24 +172,35 @@ class Intonation_Library_Widget_Nav_View extends Zendafi_View_Helper_Accueil_Bas ->load()) return ''; - $label = $this->_renderPicto($child->getLocalSettings()) . $child->getLabel(); - $html = $child->isMenu() - ? $this->view->tagAnchor('#', - $label - . $this->_tag('span', '', ['class' => 'caret']), - ['class' => 'nav-link dropdown-toggle', - 'title' => $this->_('Afficher ou masquer le menu "%s"', $child->getLabel()), - 'data-toggle' => 'dropdown', - 'role' => 'button', - 'aria-haspopup' => 'true', - 'aria-expanded' => 'false']) - - : $this->view->tagAnchor($child->getLink(), - $label, - ['title' => $this->_('Accéder à "%s"', $child->getLabel()), - 'class' => 'nav-link']); + $label = $this->_renderPicto($child->getLocalSettings()) . $this->_tag('div', + $child->getLabel(), + ['class' => 'button_text d-sm-inline text-left']); + + $html = $this->_getHtml($child, $label); return $html . $this->view->tagEditMenu($id, $this->_profile_id, $parent); } + + + protected function _getHtml($instance, $label) { + if ($instance->isMenu()) + return $this->view->tagAnchor('#', + $label + . $this->_tag('span', '', ['class' => 'caret']), + ['class' => 'nav-link dropdown-toggle', + 'title' => $this->_('Afficher ou masquer le menu "%s"', $instance->getLabel()), + 'data-toggle' => 'dropdown', + 'role' => 'button', + 'aria-haspopup' => 'true', + 'aria-expanded' => 'false']); + + if ($instance->isWidget()) + return Class_Template::current()->renderWidget($instance, $this->view); + + return $this->view->tagAnchor($instance->getLink(), + $label, + ['title' => $this->_('Accéder à "%s"', $instance->getLabel()), + 'class' => 'nav-link']); + } } diff --git a/library/templates/Intonation/Library/Widget/Search/View.php b/library/templates/Intonation/Library/Widget/Search/View.php index d3b85c9d7e0f9b1593bce0310e4d0e1debab9c01..da4f96626ecee1791d4eecb76c7cc30e6de15f37 100644 --- a/library/templates/Intonation/Library/Widget/Search/View.php +++ b/library/templates/Intonation/Library/Widget/Search/View.php @@ -120,7 +120,7 @@ abstract class IntonationSearchRenderAbstract { $form ->addElement('hidden', - 'tri', + uniqid() . 'tri', ['value' => $this->_getOrder()]) ->addElement('search', @@ -152,16 +152,30 @@ abstract class IntonationSearchRenderAbstract { 'onclick' => 'var form = $(this).closest(\'form\'); form.attr(\'action\', \'' . $this->_view->url(['controller' => 'recherche', 'action' => 'simple'], null, true) . '\'); form.find(\'.expressionRecherche\').attr(\'value\', \'\'); $(this).hide(); form.find(\'.criteres_recherche\').hide();']); }]) - ->addElement('submit', - 'search_submit', - ['label' => $this->_settings->getSearchButton(), + ->addElement('button', + uniqid() . 'search_submit', + ['content' => $this->_renderPicto($this->_settings->getSearchButton()), + 'title' => $this>_('Rechercher'), + 'type' => 'submit', + 'escape' => false, 'onclick' => '$(this).parents(\'form\').submit()', - 'order' => 10]); + 'order' => 10]) + + ->addElement('submit', + uniqid() . 'submit', + ['style' => 'display: none !important;']); return $form; } + protected function _renderPicto($text) { + return false === strpos($text, ' ') + ? $text + : Class_Template::current()->getIco($this->_view, $text); + } + + protected function _getForm() { $form = $this->_getMainForm(); $elements = $this->_getOptionalElements(); diff --git a/library/templates/Intonation/Library/WidgetTemplates.php b/library/templates/Intonation/Library/WidgetTemplates.php index bdffc943c62768075533b682a75182384fb03387..d61834997539321f291184850ff96d16814329fb 100644 --- a/library/templates/Intonation/Library/WidgetTemplates.php +++ b/library/templates/Intonation/Library/WidgetTemplates.php @@ -138,7 +138,7 @@ class Intonation_Library_WidgetTemplates { unset($layout['title']); $templates [] = ['title' => $title, - 'icon' => Class_Template::current()->getId() . '_' . $type . '.jpg', + 'icon' => 'TEMPLATE_' . $type . '.jpg', 'type' => $type, 'configuration' => array_merge($layout, ['boite' => $boite])]; @@ -177,7 +177,7 @@ class Intonation_Library_WidgetTemplates { } $templates [] = ['title' => $title, - 'icon' => Class_Template::current()->getId() . '_' . $type . '_' . $layout . '.jpg', + 'icon' => 'TEMPLATE_' . $type . '_' . $layout . '.jpg', 'type' => $type, 'configuration' => ['rendering' => $rendering, 'layout' => $layout, diff --git a/library/templates/Intonation/System/Abstract.php b/library/templates/Intonation/System/Abstract.php index e3c4bbcc37349efe3fe8b75ee867db722f1172a6..6c7d7aa2407b411a1c264d54e039673cd99e40d0 100644 --- a/library/templates/Intonation/System/Abstract.php +++ b/library/templates/Intonation/System/Abstract.php @@ -47,6 +47,14 @@ abstract class Intonation_System_Abstract { } + public function getIdForHtml() { + if (!$parent = $this->getParent()) + return $this->getId(); + + return $parent . '-' . $this->getId(); + } + + protected function _getViewHelper($view) { $base = new ZendAfi_View_Helper_Template_Base($this, $view); diff --git a/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css b/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css new file mode 100644 index 0000000000000000000000000000000000000000..c49261620c955e81d05d3ddc1b3c8db6c404d701 --- /dev/null +++ b/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css @@ -0,0 +1,338 @@ +:root { + --tdm-search-color: #e83a3b; + --tdm-link-color: #f1cb00; + --tdm-button-text-color: #000; + --tdm-footer-link-color: #f9f9f9; + + --tdm-main-background: #f9f9f9; + --main-nav-button-background-color: #3dae9a; + --first-division-background-color: #1a6362; + --main-division-background-color: #f9f9f9; + --third-division-background-color: #f2f2f2; + --footer-background-color: #3dae9a; + --footer-widget-background-color: #000; +} + +header { + background: url(../images/header.jpg); + background-position: top 3em center; + background-repeat: no-repeat; + background-size: cover; +} + +.tdm_search_widget { + padding-bottom: 5em; +} + +.tdm_search_widget .form-control, +.tdm_search_widget button { + background-color: rgba(255, 255, 255, 0.90); + font-size: 1.2em; + color: var(--tdm-search-color); + vertical-align: middle; + margin: 0; +} + +.tdm_search_widget .form-control { + padding:0; +} + +.tdm_search_widget button { + height: 2em; + padding: 0 1em; + border-left: 2px dotted var(--tdm-search-color) !important; +} + +.tdm_search_widget .form-row > .col { + margin: 0; + padding: 0; +} + +.tdm_search_widget ::placeholder, +.tdm_search_widget .expressionRecherche { + color: var(--tdm-search-color); + padding-left: 5px; + width: 100%; +} + +.tdm_social_network_widget .button_text { + display: none !important; +} + +.tdm_social_network_widget .nav-link:hover { + color: black !important; +} + +.tdm_social_network_widget .navbar { + padding: 0; +} + +.widget.login ul { + margin: 0; +} + +.widget.login { + padding-top: 0.5em; + padding-bottom: 0.5em +} + +.tdm_main_nav_widget { + background: url('../images/nav.png'); + background-position: top center; + background-repeat: no-repeat; + padding: 7em 0 0 0 !important; +} + + +.tdm_main_nav_widget .nav-link { + background-color: rgba(0,0,0,0.8); + padding: 0.5em 1em !important; + color: wheat !important; +} + +.tdm_main_nav_widget .nav-item { + margin-right: 5px; + display: inline-table; +} + +.tdm_main_nav_widget .nav-item:last-child { + margin: 0; +} + +.tdm_main_nav_widget .nav-link:last-child { + background-color: var(--main-nav-button-background-color) !important; +} + +.tdm_main_nav_widget .nav-link:hover { + opacity: 0.7; +} + +aside[data-division='1'] { + background-color: var(--first-division-background-color) !important; +} + +body { + background-color: var(--main-division-background-color); +} + +aside[data-division='3'] { + background-color: var(--third-division-background-color); +} + +footer { + background-color: var(--footer-background-color); +} + +footer .widget { + background-color: var(--footer-widget-background-color); +} + +footer .widget .nav-item a, +footer .widget .nav-item a:hover, +footer .widget btn, +footer .widget btn:hover, +footer .badge { + color: var(--tdm-footer-link-color) !important; + background: none; +} + +footer .widget a, +footer .widget a:hover { + color: var(--tdm-link-color) !important; + background: none; +} + +footer .widget a.btn[href*='render-all'] { + background: var(--main-division-background-color); + color: var(--tdm-button-text-color) !important; +} + +.widget > .card-footer, +.card-footer { + background: none; +} + +h1, +h2, +h3, +.card-title, +.card-header { + color: var(--tdm-link-color) !important; + background: none; + font-weight: bold; + font-size: 1em; + text-transform: uppercase; +} + +h1.content_title, +.widget-header { + font-size: 1.5em; + padding-left: 0; + margin-left: 0; +} + +a, +a.text-primary, +a.text-secondary, +.tdm_widget .btn, +.tdm_widget .text-primary, +.tdm_widget .text-secondary { + color: var(--tdm-button-text-color) !important; +} + +.tdm_widget .btn { + background-color: var(--tdm-link-color) !important; +} + +a.text-primary:hover, +a.text-secondary:hover, +.btn:hover, +a:hover { + color: var(--tdm-button-text-color) !important; +} + +a[href*='render-all'] { + border-radius: 100px !important; +} + +a[href*='render-all'] i, +a[href*='render-all'] div { + display: none !important; +} + +a[href*='render-all']:after { + content: '+'; + font-size: 2em; + width: 35px; + display: inline-block; +} + +.widget-footer { + position: absolute; + bottom: 0; + right: 0; +} + +.btn:hover, +a:hover { + opacity: 0.7; +} + +.border-primary { + border-color: var(--tdm-link-color) !important; +} + +.border-bottom { + border-bottom-style: dotted !important; + border-bottom-width: 2px !important; +} + +.border-left { + border-left-style: dotted !important; + border-left-width: 2px !important; +} + +.widget.admin_tools .dropdown-menu, +.widget.admin_tools .dropdown-menu *:not(img) { + background: var(--footer-background-color) !important; +} + +.widget.admin_tools a, +.widget.admin_tools a:hover { + color: var(--tdm-button-text-color) !important; +} + +nav .nav-link { + display: inline; +} + +.widget.login, +.widget.login .dropdown.show { + position: unset !important; +} + +.widget.login .dropdown-menu.show { + width: 100%; + text-align: center; + background-color: var(--tdm-main-background); + transform: translate3d(0px, 45px, 0px) !important; +} + +.widget.login .dropdown-menu.show > * { + width: 300px; + display: inline-block; +} + +.widget.login .dropdown-menu.show * { + text-align: center; + background-color: var(--tdm-main-background); +} + +.widget.login .dropdown-menu.show a:hover, +.widget.login .dropdown-menu.show a, +.widget.login .dropdown-menu.show a * { + color: var(--tdm-main-background); + background-color: var(--tdm-button-text-color); + display:inline !important; +} + +header { + background-color: var(--tdm-main-background); +} + +.widget.login #login:hover, +.widget.login #login { + color: var(--tdm-link-color); + background-color: var(--footer-widget-background-color); +} + +.tdm_flying_widget .navbar-collapse.collapsing, +.tdm_flying_widget .navbar-collapse.collapse, +.tdm_flying_widget a { + color: var(--tdm-main-background) !important; + background-color: var(--footer-widget-background-color); + text-transform: uppercase; +} + +.tdm_flying_widget .navbar-collapse.collapsing, +.tdm_flying_widget .navbar-collapse.collapse { + padding: 2em 0.5em; + height: 3000px; + overflow:visible; +} + +.tdm_flying_widget .navbar.navbar-collapse { + display: block; + padding: 0; +} + +.tdm_flying_widget .navbar-header { + display: block !important; + text-align: right !important; + border-radius: 100px !important; + background-color: var(--tdm-link-color); + float: right; +} + +.tdm_flying_widget .navbar-toggler { + padding: 1em; +} + +.tdm_flying_widget .nav.navbar-nav { + display: block; + margin-top: 3em; + padding: 0 1em; +} + +.tdm_flying_widget .widget { + padding: 1em 0; +} + +.tdm_flying_widget .widget .form-row div button { + display: none; +} + +.tdm_flying_widget * { + transition-delay: unset; + transition-duration: unset; +} \ No newline at end of file diff --git a/library/templates/TerreDuMilieu/Assets/images/bokeh.png b/library/templates/TerreDuMilieu/Assets/images/bokeh.png new file mode 100644 index 0000000000000000000000000000000000000000..3b77505628e8af6772fc0f11a1e34440c42f0db1 Binary files /dev/null and b/library/templates/TerreDuMilieu/Assets/images/bokeh.png differ diff --git a/library/templates/TerreDuMilieu/Assets/images/franceconnect.jpg b/library/templates/TerreDuMilieu/Assets/images/franceconnect.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9774cb0d287548d652741bfd918a180e48dbd9b8 Binary files /dev/null and b/library/templates/TerreDuMilieu/Assets/images/franceconnect.jpg differ diff --git a/library/templates/TerreDuMilieu/Assets/images/header.jpg b/library/templates/TerreDuMilieu/Assets/images/header.jpg new file mode 100644 index 0000000000000000000000000000000000000000..90414424e1c6bef6575ad7ca71604705fb41f1dc Binary files /dev/null and b/library/templates/TerreDuMilieu/Assets/images/header.jpg differ diff --git a/library/templates/TerreDuMilieu/Assets/images/nav.png b/library/templates/TerreDuMilieu/Assets/images/nav.png new file mode 100644 index 0000000000000000000000000000000000000000..dcb7785e3cfa3f4112e6556e820823bd1eedab62 Binary files /dev/null and b/library/templates/TerreDuMilieu/Assets/images/nav.png differ diff --git a/library/templates/TerreDuMilieu/Library/FormCustomizer.php b/library/templates/TerreDuMilieu/Library/FormCustomizer.php new file mode 100644 index 0000000000000000000000000000000000000000..8528ba2dd1ba65059df07af7bb9098cd6fdaae06 --- /dev/null +++ b/library/templates/TerreDuMilieu/Library/FormCustomizer.php @@ -0,0 +1,27 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +class TerreDuMilieu_Library_FormCustomizer extends Intonation_Library_FormCustomizer { + public function getTemplateForm($form) { + return (new TerreDuMilieu_Library_FormCustomizer_Template($this->_template, $form))->getForm(); + } +} diff --git a/library/templates/TerreDuMilieu/Library/FormCustomizer/Template.php b/library/templates/TerreDuMilieu/Library/FormCustomizer/Template.php new file mode 100644 index 0000000000000000000000000000000000000000..2f0e9c70ddac17113de8bdab47bef57e07d2be39 --- /dev/null +++ b/library/templates/TerreDuMilieu/Library/FormCustomizer/Template.php @@ -0,0 +1,37 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +class TerreDuMilieu_Library_FormCustomizer_Template extends Intonation_Library_FormCustomizer_Template { + public function getForm() { + parent::getForm(); + + $this->_form + ->addElement('checkbox', + $this->_template->withNameSpace('terredumilieu_css'), + ['label' => $this->_('terredumilieu.css'), + 'order' => 3]); + + $this->_addToTemplateGroup(['terredumilieu_css']); + + return $this; + } +} diff --git a/library/templates/TerreDuMilieu/Library/ProfilePatcher.php b/library/templates/TerreDuMilieu/Library/ProfilePatcher.php new file mode 100644 index 0000000000000000000000000000000000000000..5aeaf287acc6b3ae38c0f2bce88bca21385c8cc1 --- /dev/null +++ b/library/templates/TerreDuMilieu/Library/ProfilePatcher.php @@ -0,0 +1,449 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +class TerreDuMilieu_Library_ProfilePatcher extends Intonation_Library_ProfilePatcher { + + protected + $_flying_menu, + $_social_network_top_menu, + $_social_network_bottom_menu, + $_credits_menu; + + protected function _upgradeProfile() { + parent::_upgradeProfile(); + + $this->_profile + ->setAccessLevel(-1) + ->setLibelle($this->_('Accueil TerreDuMilieu')); + + Class_AdminVar::set('MENU_BOITE', 1); + + return $this; + } + + + protected function _upgradeSections() { + $section_main = ((new Class_Systeme_Widget_Section_Main) + ->setProfileId($this->_profile_id) + ->load()); + + $section_main + ->setNewDatas(['boite' => ['no_border_radius','m-auto', 'pt-3', 'pb-3'], + $this->_template->withNameSpace('width_xsmall') => 11, + $this->_template->withNameSpace('width_small') => 10, + $this->_template->withNameSpace('width_medium') => 8, + $this->_template->withNameSpace('width_large') => 7]) + ->updateProfile(); + + Class_Profil::clearCache(); + + $first_section = ((new Class_Systeme_Widget_Section_FirstSide) + ->setProfileId($this->_profile_id) + ->load()); + + $first_section + ->setNewDatas(['boite' => ['pt-3', 'pb-3'], + $this->_template->withNameSpace('width_xsmall') => 12, + $this->_template->withNameSpace('visibility_index') => 1, + $this->_template->withNameSpace('visibility_recherche') => 0, + $this->_template->withNameSpace('visibility_abonne') => 0, + $this->_template->withNameSpace('visibility_cms') => 0, + $this->_template->withNameSpace('visibility_blog') => 0, + $this->_template->withNameSpace('visibility_auth') => 0]) + + ->updateProfile(); + + Class_Profil::clearCache(); + + $second_section = ((new Class_Systeme_Widget_Section_SecondSide) + ->setProfileId($this->_profile_id) + ->load()); + + $second_section + ->setNewDatas(['boite' => ['pt-3', 'pb-3'], + $this->_template->withNameSpace('width_xsmall') => 12, + $this->_template->withNameSpace('visibility_index') => 1, + $this->_template->withNameSpace('visibility_recherche') => 0, + $this->_template->withNameSpace('visibility_abonne') => 0, + $this->_template->withNameSpace('visibility_cms') => 0, + $this->_template->withNameSpace('visibility_blog') => 0, + $this->_template->withNameSpace('visibility_auth') => 0]) + ->updateProfile(); + + Class_Profil::clearCache(); + $this->_profile = Class_Profil::find($this->_profile_id); + + return $this; + } + + + protected function _upgradeMenus() { + $this->_menu_id = $this->_profile + ->addMenu(['libelle' => $this->_('Menu principal'), + 'picto' => '', + 'menus' => [ + ['type_menu' => 'ACCUEIL', + 'libelle' => $this->_('Accueil'), + 'use_profil' => $this->_profile_id], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Réseau'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Collections'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Numérique'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Infos pratiques'), + 'url' => ''] + ] + ]); + + $this->_flying_menu = $this->_profile + ->addMenu(['libelle' => $this->_('Menu volant'), + 'picto' => '', + 'menus' => [ + ['type_menu' => 'ACCUEIL', + 'libelle' => $this->_('Accueil'), + 'use_profil' => $this->_profile_id], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Agenda'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Préinscription'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Contact'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('S\'identifier avec France Connect'), + 'url' => ''], + + ['type_menu' => 'MODULE_ACCUEIL_RECH_SIMPLE', + 'type_module' => 'RECH_SIMPLE', + 'libelle' => $this->_('Rechercher'), + 'preferences' => ['titre' => $this->_('Recherche'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'tdm_search_widget', 'm-auto'], + 'search_button' => 'class fas fa-search', + 'placeholder' => $this->_('Titre, auteur…'), + 'type_doc' => '', + $this->_template->withNameSpace('form_style') => 'inline', + $this->_template->withNameSpace('width_xsmall') => 12, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]] + ] + ]); + + $this->_social_network_top_menu = $this->_profile + ->addMenu(['libelle' => $this->_('Menu réseaux sociaux haut de page'), + 'picto' => '', + 'menus' => [ + ['type_menu' => 'URL', + 'libelle' => $this->_('Facebook'), + 'url' => '', + 'picto' => 'class fab fa-facebook-f'], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Twitter'), + 'url' => '', + 'picto' => 'class fab fa-twitter'], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Instagram'), + 'url' => '', + 'picto' => 'class fab fa-instagram'], + + ['type_menu' => 'URL', + 'libelle' => $this->_('SoundCloud'), + 'url' => '', + 'picto' => 'class fab fa-soundcloud'], + + ['type_menu' => 'URL', + 'libelle' => $this->_('France Connect'), + 'url' => 'https://fcp.integ01.dev-franceconnect.fr/', + 'picto' => Class_Url::absolute('/library/templates/TerreDuMilieu/Assets/images/franceconnect.jpg')] + ] + ]); + + $this->_social_network_bottom_menu = $this->_profile + ->addMenu(['libelle' => $this->_('Menu réseaux sociaux bas de page'), + 'picto' => '', + 'menus' => [ + ['type_menu' => 'URL', + 'libelle' => $this->_('Bokeh'), + 'url' => '', + 'picto' => Class_Url::absolute('/library/templates/TerreDuMilieu/Assets/images/bokeh.png')], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Facebook'), + 'url' => '', + 'picto' => 'class fab fa-facebook-f'], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Twitter'), + 'url' => '', + 'picto' => 'class fab fa-twitter'], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Instagram'), + 'url' => '', + 'picto' => 'class fab fa-instagram'], + + ['type_menu' => 'URL', + 'libelle' => $this->_('Youtube'), + 'url' => '', + 'picto' => 'class fab fa-youtube'], + + ] + ]); + + $this->_credits_menu = $this->_profile + ->addMenu(['libelle' => $this->_('Menu crédits'), + 'picto' => '', + 'menus' => [ + ['type_menu' => 'URL', + 'libelle' => $this->_('> Plan du site'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('> Mentions légales'), + 'url' => ''], + + ['type_menu' => 'URL', + 'libelle' => $this->_('> Crédits'), + 'url' => ''], + ] + ]); + + $this->_profile->save(); + + return $this; + } + + + protected function _upgradeWidgets() { + $this + ->_removeWidgets() + + ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE, + Class_Profil::DIV_BANNIERE, + ['titre' => $this->_('Menu réseau sociaux haut'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_social_network_widget', 'tdm_widget'], + 'menu' => $this->_profile_id . '-' . $this->_social_network_top_menu, + $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL, + $this->_template->withNameSpace('width_xsmall') => 6, + $this->_template->withNameSpace('width_medium') => 5, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addWidget(Intonation_Library_Widget_Login_Definition::CODE, + Class_Profil::DIV_BANNIERE, + ['titre' => $this->_('Connexion'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background'], + 'titre_connecte' => $this->_('Mon compte'), + 'message_connecte' => '', + 'identifiant' => '', + 'identifiant_exemple' => $this->_('N° de carte'), + 'mot_de_passe' => '', + 'mot_de_passe_exemple' => $this->_('Année de naissance'), + 'lien_connexion' => $this->_('Valider'), + 'lien_deconnection' => $this->_('Se déconnecter'), + 'lien_mot_de_passe_oublie' => $this->_('Mot de passe oublié'), + 'lien_compte' => $this->_('Mon compte'), + 'lien_creer_compte' => $this->_('S\'enregistrer'), + $this->_template->withNameSpace('form_style') => 'toggle', + $this->_template->withNameSpace('width_xsmall') => 6, + $this->_template->withNameSpace('width_medium') => 7, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addWidget(Intonation_Library_Widget_Nav_Definition::CODE, + Class_Profil::DIV_BANNIERE, + ['titre' => $this->_('Menu réseau sociaux haut'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_main_nav_widget', 'tdm_widget'], + 'menu' => $this->_profile_id . '-' . $this->_menu_id, + $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL, + $this->_template->withNameSpace('width_xsmall') => 12, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addWidget(Intonation_Library_Widget_Search_Definition::CODE, + Class_Profil::DIV_BANNIERE, + ['titre' => $this->_('Recherche'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'no_background', 'tdm_search_widget', 'm-auto', 'pt-3'], + 'search_button' => 'class fas fa-search', + 'placeholder' => $this->_('Titre, auteur…'), + 'type_doc' => '', + $this->_template->withNameSpace('form_style') => 'inline', + $this->_template->withNameSpace('width_xsmall') => 11, + $this->_template->withNameSpace('width_small') => 8, + $this->_template->withNameSpace('width_medium') => 5, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addWidget(Intonation_Library_Widget_Carousel_Agenda_Definition::CODE, + Class_Profil::DIV_FIRST_SIDE, + ['titre' => $this->_('Agenda'), + 'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'tdm_widget'], + 'rendering' => 'card', + 'layout' => 'multiple_carousel', + 'size' => 3, + 'order' => 'EventDebut', + 'enabled_filters' => 'day;date;place', + 'link_to_all' => 1, + $this->_template->withNameSpace('width_xsmall') => 11, + $this->_template->withNameSpace('width_small') => 10, + $this->_template->withNameSpace('width_medium') => 8, + $this->_template->withNameSpace('width_large') => 7, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 1]) + + ->_addWidget(Intonation_Library_Widget_Carousel_Author_Definition::CODE, + Class_Profil::DIV_MAIN, + ['titre' => $this->_('Acteurs de comédie'), + 'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'auto_col', 'tdm_widget'], + 'rendering' => 'card-overlay', + 'layout' => 'wall', + 'size' => 9, + 'link_to_all' => 1, + $this->_template->withNameSpace('width_xsmall') => 12, + $this->_template->withNameSpace('show_header') => 1, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 1]) + + ->_addWidget(Intonation_Library_Widget_Carousel_Article_Definition::CODE, + Class_Profil::DIV_MAIN, + ['titre' => $this->_('En ce moment'), + 'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'tdm_widget'], + 'rendering' => 'card-overlay', + 'layout' => 'carousel', + 'size' => 1, + $this->_template->withNameSpace('width_xsmall') => 12, + $this->_template->withNameSpace('show_header') => 1, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addWidget(Intonation_Library_Widget_Carousel_Review_Definition::CODE, + Class_Profil::DIV_SECOND_SIDE, + ['titre' => $this->_('Les critiques'), + 'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'auto_col', 'tdm_widget'], + 'rendering' => 'card', + 'layout' => 'wall', + 'size' => 5, + 'link_to_all' => 1, + $this->_template->withNameSpace('width_xsmall') => 11, + $this->_template->withNameSpace('width_small') => 10, + $this->_template->withNameSpace('width_medium') => 8, + $this->_template->withNameSpace('width_large') => 7, + $this->_template->withNameSpace('show_header') => 1, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 1]) + + ->_addWidget(Intonation_Library_Widget_Carousel_Record_Definition::CODE, + Class_Profil::DIV_SECOND_SIDE, + ['titre' => $this->_('L\'anjou'), + 'boite' => ['no_background', 'no_border', 'no_border_radius', 'no_shadow', 'm-auto', 'auto_col', 'tdm_widget'], + 'rendering' => 'card-overlay', + 'layout' => 'wall', + 'size' => 5, + 'link_to_all' => 1, + $this->_template->withNameSpace('width_xsmall') => 11, + $this->_template->withNameSpace('width_small') => 10, + $this->_template->withNameSpace('width_medium') => 8, + $this->_template->withNameSpace('width_large') => 7, + $this->_template->withNameSpace('show_header') => 1, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 1]) + + ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE, + Class_Profil::DIV_FOOTER, + ['titre' => $this->_('Menu réseau sociaux bas'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_social_network_widget', 'pt-3', 'pb-3'], + 'menu' => $this->_profile_id . '-' . $this->_social_network_bottom_menu, + $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL, + $this->_template->withNameSpace('width_xsmall') => 3, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addWidget(Intonation_Library_Widget_Carousel_Library_Definition::CODE, + Class_Profil::DIV_FOOTER, + ['titre' => $this->_('Adresse bibliothèque'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-3', 'pb-3', 'border-primary', 'border-left'], + 'rendering' => 'card-description', + 'layout' => 'carousel', + 'osm_map' => 0, + 'size' => 1, + 'link_to_all' => 1, + $this->_template->withNameSpace('width_xsmall') => 3, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 1]) + + ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE, + Class_Profil::DIV_FOOTER, + ['titre' => $this->_('Menu crédits'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'pt-3', 'pb-3', 'border-primary', 'border-left'], + 'menu' => $this->_profile_id . '-' . $this->_credits_menu, + 'layout' => 'vertical', + $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_XSMALL, + $this->_template->withNameSpace('width_xsmall') => 3, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addWidget(Intonation_Library_Widget_Menu_Definition::CODE, + Class_Profil::DIV_BANNIERE, + ['titre' => $this->_('Menu volant'), + 'boite' => ['no_border', 'no_border_radius', 'no_shadow', 'tdm_flying_widget', 'position_fixed_top_right'], + 'menu' => $this->_profile_id . '-' . $this->_flying_menu, + $this->_template->withNameSpace('expand_breakpoint') => Intonation_Library_Constants::RESPONSIVE_MODE_ALWAYS, + $this->_template->withNameSpace('width_xsmall') => 6, + $this->_template->withNameSpace('width_medium') => 4, + $this->_template->withNameSpace('width_large') => 3, + $this->_template->withNameSpace('show_header') => 0, + $this->_template->withNameSpace('show_content') => 0, + $this->_template->withNameSpace('show_footer') => 0]) + + ->_addScrollTopWidget() + ->_addAdminWidget() + ->_addAccessibilityWidget() + ->_addNotificationWidget(); + + return $this; + } +} \ No newline at end of file diff --git a/library/templates/TerreDuMilieu/Library/Settings.php b/library/templates/TerreDuMilieu/Library/Settings.php new file mode 100644 index 0000000000000000000000000000000000000000..f1a55f21e23e72e4a727abc0cbdeee84dd1743a1 --- /dev/null +++ b/library/templates/TerreDuMilieu/Library/Settings.php @@ -0,0 +1,63 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +class TerreDuMilieu_Library_Settings extends Intonation_Library_Settings { + protected function _getDefaultSettings() { + $settings = parent::_getDefaultSettings(); + $settings[$this->_template->withNameSpace('terredumilieu_css')] = 1; + + $custom_css_classes = $settings[$this->_template->withNameSpace('custom_css_class')]; + + $custom_css_classes = ['position_fixed_bottom', + 'position_fixed_bottom_left', + 'position_fixed_bottom_right', + 'position_fixed_top', + 'position_fixed_top_left', + 'position_fixed_top_right', + 'position_fixed_mid_left', + 'position_fixed_mid_right', + 'pt-3', + 'pb-3', + 'no_border', + 'no_border_radius', + 'no_shadow', + 'm-auto', + 'align-items-center', + 'auto_col', + 'tdm_widget', + 'tdm_flying_widget', + 'tdm_search_widget', + 'tdm_social_network_widget', + 'tdm_main_nav_widget', + 'border-primary', + 'border-left']; + + $settings[$this->_template->withNameSpace('custom_css_class')] = $custom_css_classes; + + $hydrating_mapping = $settings[$this->_template->withNameSpace('hydrating_mapping')]; + + $hydrating_mapping['a class nav-link'] = ''; + + $settings[$this->_template->withNameSpace('hydrating_mapping')] = $hydrating_mapping; + return $settings; + } +} diff --git a/library/templates/TerreDuMilieu/Template.php b/library/templates/TerreDuMilieu/Template.php new file mode 100644 index 0000000000000000000000000000000000000000..ad2c1745779942180e0e7f83615331769ecf72f1 --- /dev/null +++ b/library/templates/TerreDuMilieu/Template.php @@ -0,0 +1,63 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +class TerreDuMilieu_Template extends Intonation_Template { + + const ID = 'TERREDUMILIEU'; + + + public function __construct() { + $this->setId(static::ID) + ->setTitle($this->_('TerreDuMilieu')) + ->setSettings(new TerreDuMilieu_Library_Settings($this)) + ->setPatcher(new TerreDuMilieu_Library_ProfilePatcher($this)); + } + + + public function getProfile() { + if ($this->_profile) + return $this->_profile; + + if ($this->_profile = Class_Profil::findFirstBy(['template' => $this->getId()])) + return $this->_profile; + + $this->createFrom(Class_Profil::getPortail()); + + return $this->_profile = Class_Profil::getCurrentProfil(); + } + + + public function renderOpac($view) { + return (new TerreDuMilieu_View_Opac($this, $view))->render(); + } + + + public function renderSubModal($view) { + return (new TerreDuMilieu_View_SubModal($this, $view))->render(); + } + + + public function customTemplateForm($form) { + $helper = new TerreDuMilieu_Library_FormCustomizer($this); + return $helper->getTemplateForm($form); + } +} diff --git a/library/templates/TerreDuMilieu/View/Opac.php b/library/templates/TerreDuMilieu/View/Opac.php new file mode 100644 index 0000000000000000000000000000000000000000..a786e3b8e9a957145de3af394d00ebbdfabf0cce --- /dev/null +++ b/library/templates/TerreDuMilieu/View/Opac.php @@ -0,0 +1,29 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +class TerreDuMilieu_View_Opac extends Intonation_View_Opac { + protected function _headContent() { + Class_ScriptLoader::getInstance() + ->addStyleSheet(Class_Url::absolute('/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css')); + return parent::_headContent(); + } +} diff --git a/library/templates/TerreDuMilieu/View/SubModal.php b/library/templates/TerreDuMilieu/View/SubModal.php new file mode 100644 index 0000000000000000000000000000000000000000..a6ce53ef1d7ab0c4f0ab36fb51bcba98513971fa --- /dev/null +++ b/library/templates/TerreDuMilieu/View/SubModal.php @@ -0,0 +1,29 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +class TerreDuMilieu_View_SubModal extends Intonation_View_SubModal { + protected function _headContent() { + Class_ScriptLoader::getInstance() + ->addStyleSheet(Class_Url::absolute('/library/templates/TerreDuMilieu/Assets/css/terredumilieu.css')); + return parent::_headContent(); + } +} diff --git a/public/opac/js/widget_templates/INTONATION_ACCESSIBILITY.jpg b/public/opac/js/widget_templates/INTONATION_ACCESSIBILITY.jpg deleted file mode 100644 index 62c3d20d13ea38ee8a0be7a0ef4b24b6de0cafe1..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_ACCESSIBILITY.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_ARIANE.jpg b/public/opac/js/widget_templates/INTONATION_ARIANE.jpg deleted file mode 100644 index dfe1492cca4fea7a9826d6a058e61eb225324c26..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_ARIANE.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_AUTHORS_carousel.jpg b/public/opac/js/widget_templates/INTONATION_AUTHORS_carousel.jpg deleted file mode 100644 index 97a53b23653bb76fba6261ed33cc6fbeaf061399..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_AUTHORS_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_AUTHORS_horizontal_list.jpg b/public/opac/js/widget_templates/INTONATION_AUTHORS_horizontal_list.jpg deleted file mode 100644 index 6d94fccde62bb06799d50bb0cc9bf0d67b0069ef..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_AUTHORS_horizontal_list.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_AUTHORS_multiple_carousel.jpg b/public/opac/js/widget_templates/INTONATION_AUTHORS_multiple_carousel.jpg deleted file mode 100644 index f8539aa810afe9872369bdd2cc5e126a7d24c881..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_AUTHORS_multiple_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_AUTHORS_wall.jpg b/public/opac/js/widget_templates/INTONATION_AUTHORS_wall.jpg deleted file mode 100644 index 113ca814c02fb40f1253ada37b8a82807f734741..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_AUTHORS_wall.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_CALENDAR_carousel.jpg b/public/opac/js/widget_templates/INTONATION_CALENDAR_carousel.jpg deleted file mode 100644 index bb1bfb9aedbbdadec7a1642c4e1851c1caaea5ab..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_CALENDAR_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_CALENDAR_list.jpg b/public/opac/js/widget_templates/INTONATION_CALENDAR_list.jpg deleted file mode 100644 index 5b29fa05ab80b07347e4581cc412abc87a2624ce..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_CALENDAR_list.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_CALENDAR_multiple_carousel.jpg b/public/opac/js/widget_templates/INTONATION_CALENDAR_multiple_carousel.jpg deleted file mode 100644 index 7fc49b788576711041e896a4c7eb94650edb485a..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_CALENDAR_multiple_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_CALENDAR_wall.jpg b/public/opac/js/widget_templates/INTONATION_CALENDAR_wall.jpg deleted file mode 100644 index 1b6fcbac39efefbd9b51a7aedbe59e520e5dfb6c..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_CALENDAR_wall.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_CREDITS.jpg b/public/opac/js/widget_templates/INTONATION_CREDITS.jpg deleted file mode 100644 index 82b1be19c581bfad83b57ff68baafea3d1e26d03..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_CREDITS.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_CRITIQUES_carousel.jpg b/public/opac/js/widget_templates/INTONATION_CRITIQUES_carousel.jpg deleted file mode 100644 index a2e9a4cdb3059aea9b60c0592af97d2da28896d8..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_CRITIQUES_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_CRITIQUES_multiple_carousel.jpg b/public/opac/js/widget_templates/INTONATION_CRITIQUES_multiple_carousel.jpg deleted file mode 100644 index c152b68b886cfbcaf4fe6ec486d6120297747249..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_CRITIQUES_multiple_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_IMAGE.jpg b/public/opac/js/widget_templates/INTONATION_IMAGE.jpg deleted file mode 100644 index 2840155c62aa1a61ea441831bcf3503c49d4d440..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_IMAGE.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_KIOSQUE_carousel.png b/public/opac/js/widget_templates/INTONATION_KIOSQUE_carousel.png deleted file mode 100644 index 92223ace79ae708dfbdd43c65f93f5a2d6e347c9..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_KIOSQUE_carousel.png and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_KIOSQUE_horizontal_list.jpg b/public/opac/js/widget_templates/INTONATION_KIOSQUE_horizontal_list.jpg deleted file mode 100644 index 14faef34276478aa43e348d0ba044055202d6dd4..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_KIOSQUE_horizontal_list.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_KIOSQUE_list.jpg b/public/opac/js/widget_templates/INTONATION_KIOSQUE_list.jpg deleted file mode 100644 index 6c4c81b4652e70024d09a67dec40a6b3191fdd7f..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_KIOSQUE_list.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_KIOSQUE_multiple_carousel.jpg b/public/opac/js/widget_templates/INTONATION_KIOSQUE_multiple_carousel.jpg deleted file mode 100644 index bec9dc61325fcda28e88a41cbba94ba516c9482a..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_KIOSQUE_multiple_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_KIOSQUE_wall.jpg b/public/opac/js/widget_templates/INTONATION_KIOSQUE_wall.jpg deleted file mode 100644 index b51c4e84315b639ed9c026c40c780635a76c0eb6..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_KIOSQUE_wall.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_LIBRARY_carousel.jpg b/public/opac/js/widget_templates/INTONATION_LIBRARY_carousel.jpg deleted file mode 100644 index bcb3a5ac83efb852902295a02de25b6267fb4331..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_LIBRARY_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_LOGIN.jpg b/public/opac/js/widget_templates/INTONATION_LOGIN.jpg deleted file mode 100644 index 02aca7d11c5122b0394f02d29de1d98f8059aa68..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_LOGIN.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_NAV.jpg b/public/opac/js/widget_templates/INTONATION_NAV.jpg deleted file mode 100644 index 7eb85b16f3c0459cd18eb2fd1bd591fe84dc4629..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_NAV.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_NEWS_carousel.jpg b/public/opac/js/widget_templates/INTONATION_NEWS_carousel.jpg deleted file mode 100644 index 7bf85e7d87522fff3e48f483a1f3fca2cad0bffa..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_NEWS_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_NEWS_horizontal_list.jpg b/public/opac/js/widget_templates/INTONATION_NEWS_horizontal_list.jpg deleted file mode 100644 index bbdaa642ebf9e644a1f747fbec4a3c8db49b4454..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_NEWS_horizontal_list.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_NEWS_list.jpg b/public/opac/js/widget_templates/INTONATION_NEWS_list.jpg deleted file mode 100644 index b49253b8039b1930ed4113c927b2024674a38f81..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_NEWS_list.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_NEWS_multiple_carousel.jpg b/public/opac/js/widget_templates/INTONATION_NEWS_multiple_carousel.jpg deleted file mode 100644 index 782786cf4690c78336318a36763c8f326e6b77ee..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_NEWS_multiple_carousel.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_NEWS_wall.jpg b/public/opac/js/widget_templates/INTONATION_NEWS_wall.jpg deleted file mode 100644 index 3f699b8da7f26c05688a0b53c0c9dce849fd8219..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_NEWS_wall.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_NOTIFY.jpg b/public/opac/js/widget_templates/INTONATION_NOTIFY.jpg deleted file mode 100644 index f1782fea68a5353802f8a516ebcb4b3569ba82ac..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_NOTIFY.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_RECH_SIMPLE.jpg b/public/opac/js/widget_templates/INTONATION_RECH_SIMPLE.jpg deleted file mode 100644 index 947c3c5b17d0f208dd6d7dae88ca1cb856a5f4aa..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_RECH_SIMPLE.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/INTONATION_SCROLL.jpg b/public/opac/js/widget_templates/INTONATION_SCROLL.jpg deleted file mode 100644 index b9f770d5bacf2de485da30e6a2fa2121419ee3fb..0000000000000000000000000000000000000000 Binary files a/public/opac/js/widget_templates/INTONATION_SCROLL.jpg and /dev/null differ diff --git a/public/opac/js/widget_templates/TEMPLATE_ACCESSIBILITY.jpg b/public/opac/js/widget_templates/TEMPLATE_ACCESSIBILITY.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f6b07b7db0b352579932c8dd59410d6d794c98e2 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_ACCESSIBILITY.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_ADMIN_TOOLS.jpg b/public/opac/js/widget_templates/TEMPLATE_ADMIN_TOOLS.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0f2ecc7b579151c088e9625f09dac1dec9664999 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_ADMIN_TOOLS.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_ARIANE.jpg b/public/opac/js/widget_templates/TEMPLATE_ARIANE.jpg new file mode 100644 index 0000000000000000000000000000000000000000..23a96ee91999b477ba33606c7665bd617657e48e Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_ARIANE.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_AUTHORS_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_AUTHORS_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_AUTHORS_list.jpg b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_AUTHORS_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_AUTHORS_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_AUTHORS_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CALENDAR_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CALENDAR_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CALENDAR_list.jpg b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CALENDAR_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CALENDAR_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CALENDAR_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CREDITS.jpg b/public/opac/js/widget_templates/TEMPLATE_CREDITS.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6369daaf48d0b71bab2d10b729df0f9daf71718e Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CREDITS.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_list.jpg b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_CRITIQUES_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_horizontal_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_horizontal_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_horizontal_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_list.jpg b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_DOMAIN_BROWSER_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_FREE.jpg b/public/opac/js/widget_templates/TEMPLATE_FREE.jpg new file mode 100644 index 0000000000000000000000000000000000000000..89a038db0881d8670fdf229b4be02707cd88a2ef Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_FREE.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_IMAGE.jpg b/public/opac/js/widget_templates/TEMPLATE_IMAGE.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ce409dc76a3add04ffc328dac931099af05bf427 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_IMAGE.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_list.jpg b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_KIOSQUE_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_LIBRARY_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_LIBRARY_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_LIBRARY_list.jpg b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_LIBRARY_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_LIBRARY_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_LIBRARY_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_LOGIN.jpg b/public/opac/js/widget_templates/TEMPLATE_LOGIN.jpg new file mode 100644 index 0000000000000000000000000000000000000000..433a40cec8989609ff5ee539543bdce5b91ea16e Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_LOGIN.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_MENU.jpg b/public/opac/js/widget_templates/TEMPLATE_MENU.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2c1f9cf7cf75e0aeab72ba781ec0dfc1b94a46e5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_MENU.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NAV.jpg b/public/opac/js/widget_templates/TEMPLATE_NAV.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b9d6ebae33827d9615aabe5ce6e86877e427a8e7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NAV.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_list.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_list_with_options.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_list_with_options.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4c9eed2ccf8867a15a5077e5eff0658193f96c32 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_list_with_options.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWSLETTERS_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWS_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWS_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a132751308233de99aaefe4eafcdbdcab1e1ffe5 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWS_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWS_horizontal_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWS_horizontal_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWS_horizontal_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWS_horizontal_list.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWS_horizontal_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b187c4827d9251c42dec055eb06d0451a4fdc79b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWS_horizontal_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWS_list.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWS_list.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ab6688812f686cdcd97da7c9826f11311cab241 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWS_list.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWS_multiple_carousel.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWS_multiple_carousel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6db456a6977b29d4e5a6faf0f2908899974580b7 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWS_multiple_carousel.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NEWS_wall.jpg b/public/opac/js/widget_templates/TEMPLATE_NEWS_wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..54f1ad3af2759dece751bc2d7c5fbeccbcbbebe3 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NEWS_wall.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_NOTIFY.jpg b/public/opac/js/widget_templates/TEMPLATE_NOTIFY.jpg new file mode 100644 index 0000000000000000000000000000000000000000..97539b2071e620f677fdc93c0993d58080bee238 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_NOTIFY.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_RECH_SIMPLE.jpg b/public/opac/js/widget_templates/TEMPLATE_RECH_SIMPLE.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5a4590da1e6e62e27ceebdf241b18e702a7ee9fc Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_RECH_SIMPLE.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_SCROLL.jpg b/public/opac/js/widget_templates/TEMPLATE_SCROLL.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f9d90107a1ad409e46c9e540a0e58fa8e16b2485 Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_SCROLL.jpg differ diff --git a/public/opac/js/widget_templates/TEMPLATE_SHARE.jpg b/public/opac/js/widget_templates/TEMPLATE_SHARE.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c9ce9979df6b855b7e3bb1d15f6d7d1f3dda3f2b Binary files /dev/null and b/public/opac/js/widget_templates/TEMPLATE_SHARE.jpg differ diff --git a/tests/scenarios/Templates/MyBibAppTemplateTest.php b/tests/scenarios/Templates/MyBibAppTemplateTest.php index 441c59edec8068dd33ac856c197a7ab20228e67c..e193bf875e461ceddd72272333b5106bcceb799f 100644 --- a/tests/scenarios/Templates/MyBibAppTemplateTest.php +++ b/tests/scenarios/Templates/MyBibAppTemplateTest.php @@ -90,6 +90,12 @@ class MyBibAppTemplateProfilePatcherTest extends MyBibAppTemplateTestCase { $this->assertXPath(sprintf('//div[contains(@class, "widget")][contains(@class, "%s")]', $widget_class)); } + + + /** @test */ + public function editTemplateMyBibAppShouldBePresent() { + $this->assertXPathContentContains('//a[contains(@href, "admin/template/edit/template/MYBIBAPP")]', 'Configuration du template'); + } } diff --git a/tests/scenarios/Templates/TemplatesTest.php b/tests/scenarios/Templates/TemplatesTest.php index 03ae0845972888f9ff29f01dd438b40dd620810a..93685c1c02b193ea9e7a11863d620bf2f9ba0db7 100644 --- a/tests/scenarios/Templates/TemplatesTest.php +++ b/tests/scenarios/Templates/TemplatesTest.php @@ -72,6 +72,55 @@ class TemplatesControllerIndexDispatchTest extends TemplatesEnabledTestCase { public function updateIntonationShouldBePresent() { $this->assertXPath('//table//a[contains(@href,"/admin/template/update/template/INTONATION")]'); } + + + /** @test */ + public function applyIntonationShouldBePresent() { + $this->assertXPath('//table//a[contains(@href,"/admin/template/apply/template/INTONATION")]'); + } +} + + + +class TemplatesControllerApplyIntonationTest extends TemplatesEnabledTestCase { + protected $_storm_default_to_volatile = true; + + public function setUp() { + parent::setUp(); + $this->fixture('Class_Profil', + ['id' => 1, + 'parent_id' => null, + 'libelle' => 'Accueil']); + $this->fixture('Class_Profil', + ['id' => 2, + 'parent_id' => null, + 'libelle' => 'Adultes']); + $this->fixture('Class_Profil', + ['id' => 3, + 'parent_id' => null, + 'libelle' => 'Jeunesse']); + } + + + /** @test */ + public function shouldDisplayProfiles() { + $this->dispatch('/admin/template/apply/template/INTONATION'); + $this->assertXPath('//table//td//a[contains(@href, "admin/template/apply/template/INTONATION/on/3")]'); + } + + + /** @test */ + public function shouldRedirectToProfile2() { + $this->dispatch('/admin/template/apply/template/INTONATION/on/2'); + $this->assertRedirectTo('/opac/index/index/id_profil/2'); + } + + + /** @test */ + public function profile3ShouldUseTemplateIntonation() { + $this->dispatch('/admin/template/apply/template/INTONATION/on/3'); + $this->assertEquals('INTONATION', Class_Profil::find(3)->getTemplate()); + } } @@ -251,6 +300,7 @@ abstract class TemplatesIntonationTestCase extends TemplatesEnabledTestCase { 'picto' => 'vide.gif', 'preferences' => ['clef_profil' => '2']], ['type_menu' => 'MODULE_ACCUEIL_RECH_SIMPLE', + 'type_module' => 'RECH_SIMPLE', 'libelle' => 'rechercher', 'picto' => 'search.gif'], ['type_menu' => 'MENU', @@ -4437,9 +4487,9 @@ class TemplatesDispatchWidgetAddWidgetTest extends TemplatesIntonationTestCase { /** @test */ - public function addWidgetShouldDynamicImage() { + public function shouldContainsAdminToolsJpg() { $this->dispatch('/admin/widget/add-from-template/id_profil/72'); - $this->assertXPath('//div//img[contains(@src, "/INTONATION_ADMIN_TOOLS.jpg")]'); + $this->assertXPath('//div//img[contains(@src, "/TEMPLATE_ADMIN_TOOLS.jpg")]'); } @@ -4539,7 +4589,7 @@ class TemplatesDispatchWidgetRenderAllTest extends TemplatesIntonationTestCase { * @test */ public function withWidgetShouldRenderExpectedDom($widget_id, $dom) { $this->dispatch('/opac/widget/render-all/profile_id/72/widget_id/' . $widget_id); - $this->assertXPath($dom, $this->_response->getBody()); + $this->assertXPath($dom, $this->_response->getBody()); } } diff --git a/tests/scenarios/Templates/TerreDuMilieuTemplateTest.php b/tests/scenarios/Templates/TerreDuMilieuTemplateTest.php new file mode 100644 index 0000000000000000000000000000000000000000..5a4ec2f9ac3c60231d4e1ef4340d19d31ccba3b5 --- /dev/null +++ b/tests/scenarios/Templates/TerreDuMilieuTemplateTest.php @@ -0,0 +1,162 @@ +<?php +/** + * Copyright (c) 2012-2019, Agence Française Informatique (AFI). All rights reserved. + * + * BOKEH is free software; you can redistribute it and/or modify + * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by + * the Free Software Foundation. + * + * There are special exceptions to the terms and conditions of the AGPL as it + * is applied to this software (see README file). + * + * BOKEH is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE + * along with BOKEH; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + + +abstract class TerreDuMilieuTemplateTestCase extends AbstractControllerTestCase { + protected $_storm_default_to_volatile = true; + + public function setUp() { + parent::setUp(); + Class_Systeme_ModulesAccueil::reset(); + Class_AdminVar::set('TEMPLATING', 1); + + $profile = $this->fixture('Class_Profil', + ['id' => 23]); + + (new TerreDuMilieu_Template)->tryOn($profile); + (new Class_Profil_Promoter())->promote($profile); + + } + + + public function tearDown() { + parent::tearDown(); + Class_Systeme_ModulesAccueil::reset(); + } +} + + + + +class TerreDuMilieuTemplateAdminTemplateIndexDispatchTest extends TerreDuMilieuTemplateTestCase { + + public function setUp() { + parent::setUp(); + $this->dispatch('/admin/template/index'); + } + + + /** @test */ + public function editTerreDuMilieuUrlShouldBeDisplay() { + $this->assertXPath('//table//a[contains(@href,"/admin/template/edit/template/TERREDUMILIEU")]'); + } +} + + + +class TerreDuMilieuTemplateProfilePatcherTest extends TerreDuMilieuTemplateTestCase { + + public function setUp() { + parent::setUp(); + $this->dispatch('/opac/index/index'); + } + + + public function widgetsClasses() { + return [ + ['login'], + ['accessibility'], + ['rech_simple'], + ['admin_tools'], + ['scroll'], + ['library'], + ['critiques'], + ]; + } + + + /** + * @dataProvider widgetsClasses + * @test */ + public function indexShouldContainsWidgets($widget_class) { + $this->assertXPath(sprintf('//div[contains(@class, "widget")][contains(@class, "%s")]', + $widget_class)); + } + + + /** @test */ + public function editTemplateTerreDuMilieuShouldBePresent() { + $this->assertXPathContentContains('//a[contains(@href, "admin/template/edit/template/TERREDUMILIEU")]', 'Configuration du template'); + } +} + + + +class TerreDuMilieuTemplateOpacIndexWithUserAgentTest extends TerreDuMilieuTemplateTestCase { + public function setUp() { + parent::setUp(); + $this->dispatch('/opac/index/index'); + } + + + /** @test */ + public function pageTitleShouldBeTestCharteTerreDuMilieu() { + $this->assertXPathContentContains('//head/title', 'TerreDuMilieu'); + } + + + /** @test */ + public function pageShouldLoadTerreDuMilieuCss() { + $this->assertXPath('//head/link[contains(@href, "/templates/TerreDuMilieu/Assets/css/terredumilieu.css")]'); + } + + + /** @test */ + public function pageShouldBeHtml5Valid() { + $this->assertHTML5(); + } + + + /** @test */ + public function pageShouldBeAccessible() { + $this->assertAccessible($this->_response->getBody()); + } +} + + + +class TerreDuMilieuTemplateEditTemplateTest extends Admin_AbstractControllerTestCase { + protected $_storm_default_to_volatile = true; + + public function setUp() { + parent::setUp(); + + Class_AdminVar::set('TEMPLATING', 1); + + $settings = $this->fixture('Class_Template_Settings', + ['id' => 456, + 'template' => 'TERREDUMILIEU']); + + $this->dispatch('/admin/template/edit/template/terredumilieu'); + } + + + /** @test */ + public function checkboxTerreDuMilieuCssShouldBeChecked() { + $this->assertXPath('//form//input[@type="checkbox"][@name="TerredumilieuTerredumilieuCss"][@checked]'); + } + + + /** @test */ + public function customCssShouldContainsClassTdmWidget() { + $this->assertContains('"tdm_widget"', $this->_response->getBody()); + } +} \ No newline at end of file