mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-06-21 01:25:55 +02:00
Mark sidebar and navbar as permanent between Turbo history navigations.
This commit is contained in:
parent
5ec87f911b
commit
e26f6e5394
3 changed files with 22 additions and 2 deletions
|
@ -10,6 +10,11 @@ export default class extends TreeController {
|
|||
_storage_key;
|
||||
|
||||
connect() {
|
||||
//Check if the tree is already initialized, if so then skip initialization (useful when going back) to in history using Turbo
|
||||
if(this._isInitialized()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const default_mode = this.element.dataset.defaultMode;
|
||||
|
||||
this._storage_key = 'tree_' + this.element.id;
|
||||
|
|
|
@ -97,6 +97,21 @@ export default class extends Controller {
|
|||
$(tree).treeview('search', [data]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the tree is already initialized (meaning bootstrap treeview was called on the object)
|
||||
* @private
|
||||
*/
|
||||
_isInitialized() {
|
||||
const $tree = $(this.treeTarget).treeview(true);
|
||||
|
||||
//If the tree is not initialized yet, we just get an empty jquery object with the treeview functions missing
|
||||
if(typeof $tree.findNodes === 'undefined' ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
}
|
||||
|
||||
_getData() {
|
||||
//Use lambda function to preserve this context
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<body data-base-url="{{ url('homepage', {'_locale': app.request.locale}) }}" data-locale="{{ app.request.locale|default("en")|slice(0,2) }}">
|
||||
{% block body %}
|
||||
<header>
|
||||
<turbo-frame id="navbar-frame" target="content" data-turbo-action="advance">
|
||||
<turbo-frame id="navbar-frame" target="content" data-turbo-action="advance" data-turbo-permanent>
|
||||
{% include "_navbar.html.twig" %}
|
||||
</turbo-frame>
|
||||
</header>
|
||||
|
@ -74,7 +74,7 @@
|
|||
|
||||
<div class="collapse d-md-block bg-light" id="sidebar-container">
|
||||
<nav class="fixed-sidebar col-md-3 col-lg-2 " id="fixed-sidebar">
|
||||
<turbo-frame id="sidebar" target="content" data-turbo-action="advance">
|
||||
<turbo-frame id="sidebar" target="content" data-turbo-action="advance" data-turbo-permanent>
|
||||
{% include "_sidebar.html.twig" %}
|
||||
</turbo-frame>
|
||||
<noscript><b>{% trans %}vendor.base.javascript_hint{% endtrans %}</b></noscript>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue