diff --git a/assets/index.js b/assets/index.js index f4d6c6940..a8cfc4877 100755 --- a/assets/index.js +++ b/assets/index.js @@ -27,7 +27,7 @@ import './js/highlight'; /* Tools */ import { - savePercent, retrievePercent, initExport, initFilters, initRandom, initPreviewText, + savePercent, retrievePercent, initPreviewText, } from './js/tools'; /* Import shortcuts */ @@ -273,7 +273,10 @@ const articleScroll = () => { $(document).ready(() => { // sidenav - $('.sidenav').sidenav(); + document.querySelectorAll('.sidenav').forEach((element) => { + $(element).sidenav({ edge: element.getAttribute('data-edge') ?? 'left' }); + }); + $('select').formSelect(); $('.collapsible[data-collapsible="accordion"]').collapsible(); $('.collapsible[data-collapsible="expandable"]').collapsible({ @@ -291,9 +294,6 @@ $(document).ready(() => { $('.tooltipped').tooltip(); $('.fixed-action-btn').floatingActionButton(); - initFilters(); - initExport(); - initRandom(); stickyNav(); articleScroll(); initPreviewText(); diff --git a/assets/js/tools.js b/assets/js/tools.js index 55e5fc000..18528548d 100644 --- a/assets/js/tools.js +++ b/assets/js/tools.js @@ -31,35 +31,6 @@ function retrievePercent(id, resized) { return true; } -function initFilters() { - // no display if filters not available - if ($('div').is('#filters')) { - $('#button_filters').show(); - $('#filters.sidenav').sidenav({ edge: 'right' }); - $('#clear_form_filters').on('click', () => { - $('#filters input').val(''); - $('#filters :checked').removeAttr('checked'); - - return false; - }); - } -} - -function initExport() { - // no display if export not available - if ($('div').is('#export')) { - $('#button_export').show(); - $('#export.sidenav').sidenav({ edge: 'right' }); - } -} - -function initRandom() { - // no display if export (ie: entries) not available - if ($('div').is('#export')) { - $('#button_random').show(); - } -} - function initPreviewText() { // no display if preview_text not available if ($('div').is('#preview-article')) { @@ -79,8 +50,5 @@ function initPreviewText() { export { savePercent, retrievePercent, - initExport, - initFilters, - initRandom, initPreviewText, }; diff --git a/assets/scss/_nav.scss b/assets/scss/_nav.scss index 798a3a44a..a1db43486 100644 --- a/assets/scss/_nav.scss +++ b/assets/scss/_nav.scss @@ -143,14 +143,6 @@ nav { margin: 0 1%; } -.button-filters { - display: none; -} - -.button-export { - display: none; -} - .entry-nav-top--sticky { position: sticky; top: 0; diff --git a/templates/Entry/entries.html.twig b/templates/Entry/entries.html.twig index d437b1afd..047db12ac 100644 --- a/templates/Entry/entries.html.twig +++ b/templates/Entry/entries.html.twig @@ -1,5 +1,8 @@ {% extends "layout.html.twig" %} +{% set has_filters = form is not null %} +{% set has_exports = craue_setting('export_epub') or craue_setting('export_pdf') or craue_setting('export_json') or craue_setting('export_csv') or craue_setting('export_txt') or craue_setting('export_xml') or craue_setting('export_md') %} + {% block head %} {{ parent() }} {% if tag is defined and app.user.config.feedToken %} @@ -18,6 +21,30 @@ {% include "Entry/_title.html.twig" with {'filter': filter} %} {% endblock %} +{% block nav_panel_extra_actions %} + {% if active_route %} +