diff --git a/library/Class/Systeme/Widget/Menu.php b/library/Class/Systeme/Widget/Menu.php index 0d59fe25f21b6ea0618f6afeec2888c008c2d429..6513990bc764af27ac8fab4da5659fa335502705 100644 --- a/library/Class/Systeme/Widget/Menu.php +++ b/library/Class/Systeme/Widget/Menu.php @@ -77,6 +77,10 @@ class Class_Systeme_Widget_Menu extends Class_Systeme_Widget_Abstract { $datas = array_merge($this->getLocalSettings(), $this->getNewDatas()); + if(isset($datas['preferences'])) + unset($datas['preferences']); + + $datas['preferences'] = $datas; $sub_menus = null; if(isset($datas['children'])) $sub_menus = $this->_convertChildren($datas['children']); diff --git a/library/ZendAfi/View/Helper/Admin/Menus.php b/library/ZendAfi/View/Helper/Admin/Menus.php index 8513a05b257417c70f8ff127be064f32e5e84331..75bfb6273382d0ea81cd031efdb3f398f15a85ef 100644 --- a/library/ZendAfi/View/Helper/Admin/Menus.php +++ b/library/ZendAfi/View/Helper/Admin/Menus.php @@ -42,7 +42,7 @@ class ZendAfi_View_Helper_Admin_Menus extends Zendafi_View_Helper_Basehelper { protected function _renderNav($params) { - $params['libelle'] = $this->_tagDuplicateNav() . $params['libelle']; + $params['libelle'] = $params['libelle'] . $this->_tagDuplicateNav(); return $this->_renderMenu('H', $params); } diff --git a/public/admin/css/subModal.css b/public/admin/css/subModal.css index e5e3cec05dfed1eed5ed2e918c440d2de588c0a2..8a70a5cdc3715f05be6721e1a6b5e274b7bf43a9 100644 --- a/public/admin/css/subModal.css +++ b/public/admin/css/subModal.css @@ -58,22 +58,21 @@ cursor: pointer; } -body.admin a[data-popup="true"].image-loading-status { - display: inline-block; -} - a[data-popup="true"].image-loading-status { background-image: url(../images/patience.gif); - background-size: 1em; + background-size: 16px; background-position: center; background-repeat: no-repeat; + display: inline-block !important; min-width: 16px; min-height: 16px; overflow: hidden; color: transparent; -moz-transition: all 0s ease-out; -webkit-transition: all 0s ease-out; - + margin: 0 !important; + padding: 0 !important; + cursor: progress; } a[data-popup="true"].image-loading-status img { diff --git a/public/admin/skins/bokeh74/form.css b/public/admin/skins/bokeh74/form.css index 2999eae5c26f4a68e7a8c9c6cb9dde50a81dc5ac..e79705992ecb8afe8df15cff8c510a3e2147ce81 100644 --- a/public/admin/skins/bokeh74/form.css +++ b/public/admin/skins/bokeh74/form.css @@ -10,6 +10,16 @@ background: var(--widget-background); } +.admin-form .input_connect_list h2 { + color: var(--main-text); + background: var(--main-background); +} + +.admin-form input { + height: auto; + width: auto; +} + .admin-form * { font-family: arial, sans-serif; font-size: 1em; @@ -75,6 +85,7 @@ .current_edition:after { content: ''; + cursor: progress; height: 100%; width: 100%; position: absolute; @@ -108,3 +119,8 @@ .admin-form table td.droite { text-align: right !important; } + +.current_edition .configuration_module { + display: block !important; + opacity: 1 !important; +} \ No newline at end of file diff --git a/public/admin/skins/bokeh74/jquery.css b/public/admin/skins/bokeh74/jquery.css index 772e2ba805dd1f23def9488ae8928479c8194618..babd470fa4ce3db765fee853ceb9e0809aab991d 100644 --- a/public/admin/skins/bokeh74/jquery.css +++ b/public/admin/skins/bokeh74/jquery.css @@ -177,4 +177,8 @@ body .ui-state-active .ui-accordion-header-icon { body .ui-front { z-index: 101; +} + +body .ui-dialog .show_drag_and_drop { + max-height: 2em; } \ No newline at end of file diff --git a/public/opac/css/global.css b/public/opac/css/global.css index be7852e39bf6d74a3b0d3b819e28e726ecceee8d..7d61e668e972dd13654b453abb6c0715cb502503 100644 --- a/public/opac/css/global.css +++ b/public/opac/css/global.css @@ -3502,16 +3502,25 @@ th.actions { padding: 1em; } +a.edit_menu:focus, +a.edit_menu:hover, a.edit_menu { display: block; - margin: 0; + margin: 0 !important; + padding: 0 !important; left: 0; top: 3px; z-index: 101; + background-color: transparent !important; + margin: 0 !important; + padding: 0 !important; + height: auto !important; + width: auto !important; } a.edit_menu img { - height: 16px; - width: 16px; - margin: 0; + height: 16px !important; + width: 16px !important; + margin: 0 !important; + padding: 0 !important; } \ No newline at end of file diff --git a/public/opac/js/input_connect_list/input_connect_list.css b/public/opac/js/input_connect_list/input_connect_list.css index 280512b338679ba414948888eac796ea551dbb9a..76f5bcebb43c59c17532331521c2d7c484c44605 100644 --- a/public/opac/js/input_connect_list/input_connect_list.css +++ b/public/opac/js/input_connect_list/input_connect_list.css @@ -45,6 +45,7 @@ width: 90%; padding: 0 5px; overflow: hidden; + overflow-y: auto; } .show_inline { diff --git a/public/opac/js/responsive.js b/public/opac/js/responsive.js index 54d3bdbe6ee85a1feaaf8b01cd9b4d4970d7ce9d..8feb8e707865dcd71f6e5478c5d3a9a20bb679fd 100644 --- a/public/opac/js/responsive.js +++ b/public/opac/js/responsive.js @@ -5,7 +5,9 @@ $(document).ready(function() { $(this).toggleClass('show_menu'); }); - $("div:not(.boite)[class*='menu_horizontal'] *, .menu_vertical.toggle_menu * ").not('.configuration_module *').click(function(e) { + $("div:not(.boite)[class*='menu_horizontal'] *, .menu_vertical.toggle_menu * ") + .not('.configuration_module *,[class*="edit_"], [class*="edit_"] *') + .click(function(e) { e.stopImmediatePropagation(); }); } @@ -16,9 +18,11 @@ $(document).ready(function() { $(this).toggleClass('show_content'); }); - excludeExternalLinks($("#col_wrapper .colGauche div.boite *, .facette_outer *")).not('.configuration_module *').click(function(e) { - e.stopPropagation(); - }); + excludeExternalLinks($("#col_wrapper .colGauche div.boite *, .facette_outer *")) + .not('.configuration_module *,[class*="edit_"], [class*="edit_"] *') + .click(function(e) { + e.stopPropagation(); + }); } diff --git a/public/opac/js/subModal.js b/public/opac/js/subModal.js index 6bc1cc57568960e3f499d8c531906e2ebbd9ebd7..4fccbd1ac2c6fe210c6a9a82653b86c3baf6367a 100644 --- a/public/opac/js/subModal.js +++ b/public/opac/js/subModal.js @@ -76,8 +76,12 @@ addLoadingClass(); var popup = $(event.target).closest('.ui-widget'); popup.addClass('fixed_popup'); - if(parseInt(popup.css('top')) > 500) + + if((parseInt(popup.css('top')) > 500) || (parseInt(popup.css('top')) < 1)) popup.css('top', '25%'); + + if(parseInt(popup.css('left')) < 1) + popup.css('left', '25%'); } @@ -157,7 +161,7 @@ var modal = container.dialog({ title: data['title'], width: 'auto', - height: 300, + height: 'auto', modal:show_modal, position: {'my': 'center bottom', 'at': 'center center', 'of': window}, close: function(event, ui) { diff --git a/tests/scenarios/Widgets/WidgetsTest.php b/tests/scenarios/Widgets/WidgetsTest.php index 5a4540256756b6a97d792de1ea55c24bfea0e552..744b0c54cacd5bc4d15860411142a5fa1bc1d9be 100644 --- a/tests/scenarios/Widgets/WidgetsTest.php +++ b/tests/scenarios/Widgets/WidgetsTest.php @@ -191,19 +191,20 @@ class WidgetsEditNavEntryPostDispatchTest extends WidgetsNavSimpleTestCase { /** @test */ public function profilShouldContainsLinkToProfil() { $this->postDispatch('admin/widget/edit-menu/id/1/id_profil/2/parent/H', ['libelle' => 'home', - 'picto' => 'home.gif', - 'clef_profil' => '1']); + 'picto' => 'home.gif', + 'clef_profil' => '25']); $this->assertEquals('PROFIL', Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[1]['type_menu']); $this->assertEquals('1', Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[1]['id_module']); - $this->assertEquals('1', Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[1]['clef_profil']); + $this->assertEquals('25', Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[1]['clef_profil']); + $this->assertEquals('25', Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[1]['preferences']['clef_profil']); } /** @test */ public function profilShouldContainsMenu() { $this->postDispatch('admin/widget/edit-menu/id/3/id_profil/2/parent/H', ['libelle' => 'menu', - 'picto' => 'vide.gif', - 'children' => 'PANIER;4;RECH_SIMPLE;']); + 'picto' => 'vide.gif', + 'children' => 'PANIER;4;RECH_SIMPLE;']); $this->assertEquals('MENU', Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[3]['type_menu']); $this->assertEquals('3', Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[3]['id_module']); $this->assertEquals([4 => ['type_module' => 'PANIER', @@ -231,15 +232,21 @@ class WidgetsEditNavEntryPostDispatchTest extends WidgetsNavSimpleTestCase { /** @test */ public function profilShouldContainsLinkToProfilAgenda() { $this->postDispatch('admin/widget/edit-menu/id/4/id_profil/2/parent/H', ['libelle' => 'agenda', - 'picto' => 'agenda.svg', - 'clef_profil' => '7']); + 'picto' => 'agenda.svg', + 'clef_profil' => '7']); $this->assertEquals(['type_menu' => 'PROFIL', 'type_module' => 'PROFIL', 'action' => '', 'libelle' => 'agenda', 'picto' => 'agenda.svg', 'clef_profil' => '7', - 'preferences' => ['clef_profil' => '5'], + 'preferences' => ['clef_profil' => '7', + 'type_module' => 'PROFIL', + 'type_menu' => 'PROFIL', + 'id_module' => '4', + 'libelle' => 'agenda', + 'picto' => 'agenda.svg', + 'action' => ''], 'id_module' => 4], Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[3]['sous_menus'][4]); } @@ -350,7 +357,13 @@ class WidgetsNavMenuPostTest extends Admin_AbstractControllerTestCase { 'action' => '', 'libelle' => 'new profil', 'picto' => 'home.gif', - 'preferences' => ['clef_profil' => '2'], + 'preferences' => ['clef_profil' => '4', + 'type_module' => 'PROFIL', + 'type_menu' => 'PROFIL', + 'id_module' => '1', + 'libelle' => 'new profil', + 'picto' => 'home.gif', + 'action' => ''], 'id_module' => 1, 'clef_profil' => '4'], Class_Profil::getCurrentProfil()->getCfgMenuHorizontal()[0]['sous_menus'][1]); } @@ -456,7 +469,7 @@ class WidgetsPostEditVerticalMenuTest extends WidgetsSimpleTestCase { } - /** @test */ + /** @test */ public function newMenuShouldInMenuCfg() { $this->assertEquals(['libelle' => 'Nouveau menu', 'picto' => '',