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')