diff --git a/controllers/BaseController.php b/controllers/BaseController.php index 177a0b51..8935a716 100644 --- a/controllers/BaseController.php +++ b/controllers/BaseController.php @@ -114,7 +114,7 @@ class BaseController return UsersService::getInstance(); } - protected function render($response, $page, $data = []) + protected function render($response, $viewName, $data = []) { $container = $this->AppContainer; @@ -159,8 +159,8 @@ class BaseController unset($constants[$constant]); } } - $this->View->set('featureFlags', $constants); + if (GROCY_AUTHENTICATED) { $this->View->set('permissions', User::PermissionList()); @@ -177,10 +177,12 @@ class BaseController $this->View->set('DEFAULT_MIN_AMOUNT', $defaultMinAmount); } - return $this->View->render($response, $page, $data); + $this->View->set('viewName', $viewName); + + return $this->View->render($response, $viewName, $data); } - protected function renderPage($response, $page, $data = []) + protected function renderPage($response, $viewName, $data = []) { $this->View->set('userentitiesForSidebar', $this->getDatabase()->userentities()->where('show_in_sidebar_menu = 1')->orderBy('name')); try @@ -200,7 +202,7 @@ class BaseController // Happens when database is not initialised or migrated... } - return $this->render($response, $page, $data); + return $this->render($response, $viewName, $data); } private static $htmlPurifierInstance = null; diff --git a/public/js/grocy_menu_layout.js b/public/js/grocy_menu_layout.js index 90eaba80..00d53e9a 100644 --- a/public/js/grocy_menu_layout.js +++ b/public/js/grocy_menu_layout.js @@ -33,33 +33,12 @@ if (window.localStorage.getItem("sidebar_state") === "collapsed") $("#sidenavToggler").click(); } -if (Grocy.ActiveNav) +// Make sure the current active menu item is visible +var activeMenuItem = $("li.active-page"); +if (activeMenuItem.length > 0) { - var menuItem = $('#sidebarResponsive').find("[data-nav-for-page='" + Grocy.ActiveNav + "']"); - if (menuItem) + if (!activeMenuItem.isVisibleInViewport(75)) { - menuItem.addClass('active-page'); - - var parentMenuSelector = menuItem.data("sub-menu-of"); - if (parentMenuSelector) - { - $(parentMenuSelector).collapse("show"); - $(parentMenuSelector).prev(".nav-link-collapse").addClass("active-page"); - - $(parentMenuSelector).on("shown.bs.collapse", function(e) - { - if (!menuItem.isVisibleInViewport(75)) - { - menuItem[0].scrollIntoView(); - } - }) - } - else - { - if (!menuItem.isVisibleInViewport(75)) - { - menuItem[0].scrollIntoView(); - } - } + activeMenuItem[0].scrollIntoView(); } } diff --git a/views/about.blade.php b/views/about.blade.php index 7549244e..9c78be4b 100644 --- a/views/about.blade.php +++ b/views/about.blade.php @@ -1,7 +1,6 @@ @extends('layout.default') @section('title', $__t('About Grocy')) -@section('viewJsName', 'about') @section('content')
diff --git a/views/barcodescannertesting.blade.php b/views/barcodescannertesting.blade.php index 581263d9..ff3b17cb 100644 --- a/views/barcodescannertesting.blade.php +++ b/views/barcodescannertesting.blade.php @@ -2,8 +2,6 @@ @section('title', $__t('Barcode scanner testing')) -@section('viewJsName', 'barcodescannertesting') - @push('pageScripts') diff --git a/views/batteries.blade.php b/views/batteries.blade.php index af88edce..d95341e1 100644 --- a/views/batteries.blade.php +++ b/views/batteries.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Batteries')) -@section('activeNav', 'batteries') -@section('viewJsName', 'batteries') @section('content')
diff --git a/views/batteriesjournal.blade.php b/views/batteriesjournal.blade.php index 8ae315fb..3af1a46e 100644 --- a/views/batteriesjournal.blade.php +++ b/views/batteriesjournal.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Batteries journal')) -@section('activeNav', 'batteriesjournal') -@section('viewJsName', 'batteriesjournal') @section('content')
diff --git a/views/batteriesoverview.blade.php b/views/batteriesoverview.blade.php index b1230550..dd14df28 100644 --- a/views/batteriesoverview.blade.php +++ b/views/batteriesoverview.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Batteries overview')) -@section('activeNav', 'batteriesoverview') -@section('viewJsName', 'batteriesoverview') @push('pageStyles')
diff --git a/views/batteryform.blade.php b/views/batteryform.blade.php index 47d107b6..37accd6b 100644 --- a/views/batteryform.blade.php +++ b/views/batteryform.blade.php @@ -6,8 +6,6 @@ @section('title', $__t('Create battery')) @endif -@section('viewJsName', 'batteryform') - @section('content')
diff --git a/views/batterytracking.blade.php b/views/batterytracking.blade.php index d1f566f1..2691ccd5 100644 --- a/views/batterytracking.blade.php +++ b/views/batterytracking.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Battery tracking')) -@section('activeNav', 'batterytracking') -@section('viewJsName', 'batterytracking') @section('content')
diff --git a/views/calendar.blade.php b/views/calendar.blade.php index 8e7a146c..9a4b71a8 100644 --- a/views/calendar.blade.php +++ b/views/calendar.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Calendar')) -@section('activeNav', 'calendar') -@section('viewJsName', 'calendar') @push('pageScripts') diff --git a/views/choreform.blade.php b/views/choreform.blade.php index 592b1c72..37316b67 100644 --- a/views/choreform.blade.php +++ b/views/choreform.blade.php @@ -6,8 +6,6 @@ @section('title', $__t('Create chore')) @endif -@section('viewJsName', 'choreform') - @section('content')
diff --git a/views/chores.blade.php b/views/chores.blade.php index 5791cc55..4f1b3027 100644 --- a/views/chores.blade.php +++ b/views/chores.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Chores')) -@section('activeNav', 'chores') -@section('viewJsName', 'chores') @section('content')
diff --git a/views/choresjournal.blade.php b/views/choresjournal.blade.php index 7be2be9f..63fc921d 100644 --- a/views/choresjournal.blade.php +++ b/views/choresjournal.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Chores journal')) -@section('activeNav', 'choresjournal') -@section('viewJsName', 'choresjournal') @section('content')
diff --git a/views/choresoverview.blade.php b/views/choresoverview.blade.php index e07e7161..76960448 100644 --- a/views/choresoverview.blade.php +++ b/views/choresoverview.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Chores overview')) -@section('activeNav', 'choresoverview') -@section('viewJsName', 'choresoverview') @push('pageStyles')
diff --git a/views/choretracking.blade.php b/views/choretracking.blade.php index cdb71299..372bd339 100644 --- a/views/choretracking.blade.php +++ b/views/choretracking.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Chore tracking')) -@section('activeNav', 'choretracking') -@section('viewJsName', 'choretracking') @section('content')
diff --git a/views/consume.blade.php b/views/consume.blade.php index faf84681..f2bba01f 100644 --- a/views/consume.blade.php +++ b/views/consume.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Consume')) -@section('activeNav', 'consume') -@section('viewJsName', 'consume') @push('pageScripts') diff --git a/views/equipment.blade.php b/views/equipment.blade.php index 63da017c..d25dec29 100644 --- a/views/equipment.blade.php +++ b/views/equipment.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Equipment')) -@section('activeNav', 'equipment') -@section('viewJsName', 'equipment') @section('content')
diff --git a/views/equipmentform.blade.php b/views/equipmentform.blade.php index 200a45e7..3082d4c5 100644 --- a/views/equipmentform.blade.php +++ b/views/equipmentform.blade.php @@ -6,8 +6,6 @@ @section('title', $__t('Create equipment')) @endif -@section('viewJsName', 'equipmentform') - @section('content')
diff --git a/views/inventory.blade.php b/views/inventory.blade.php index 7e0965f3..c8bb8861 100644 --- a/views/inventory.blade.php +++ b/views/inventory.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Inventory')) -@section('activeNav', 'inventory') -@section('viewJsName', 'inventory') @section('content') + @stack('pageScripts') @stack('componentScripts') - @hasSection('viewJsName')@endif + @if(file_exists(GROCY_DATAPATH . '/custom_js.html')) @php include GROCY_DATAPATH . '/custom_js.html' @endphp diff --git a/views/locationcontentsheet.blade.php b/views/locationcontentsheet.blade.php index cbd37d90..81096f7f 100644 --- a/views/locationcontentsheet.blade.php +++ b/views/locationcontentsheet.blade.php @@ -1,7 +1,6 @@ @extends('layout.default') @section('title', $__t('Location Content Sheet')) -@section('viewJsName', 'locationcontentsheet') @push('pageStyles') @endpush diff --git a/views/users.blade.php b/views/users.blade.php index 6689a6af..2820d571 100644 --- a/views/users.blade.php +++ b/views/users.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('Users')) -@section('activeNav', '') -@section('viewJsName', 'users') @section('content')
diff --git a/views/usersettings.blade.php b/views/usersettings.blade.php index ca5061f6..a27246c5 100644 --- a/views/usersettings.blade.php +++ b/views/usersettings.blade.php @@ -1,8 +1,6 @@ @extends('layout.default') @section('title', $__t('User settings')) -@section('activeNav', '') -@section('viewJsName', 'usersettings') @section('content')