]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - app/Resources/static/themes/material/index.js
Merge pull request #3526 from wallabag/add-random-article
[github/wallabag/wallabag.git] / app / Resources / static / themes / material / index.js
index bdccc534ae9627ada30ac6c84820161cc37a71f1..0579459778266ea0e93847af721a86bf946c1de0 100755 (executable)
@@ -8,7 +8,7 @@ import 'materialize-css/dist/js/materialize';
 import '../_global/index';
 
 /* Tools */
-import { initExport, initFilters } from './js/tools';
+import { initExport, initFilters, initRandom } from './js/tools';
 
 /* Import shortcuts */
 import './js/shortcuts/main';
@@ -32,8 +32,17 @@ $(document).ready(() => {
     format: 'dd/mm/yyyy',
     container: 'body',
   });
+
   initFilters();
   initExport();
+  initRandom();
+
+  const toggleNav = (toShow, toFocus) => {
+    $('.nav-panel-actions').hide(100);
+    $(toShow).show(100);
+    $('.nav-panels').css('background', 'white');
+    $(toFocus).focus();
+  };
 
   $('#nav-btn-add-tag').on('click', () => {
     $('.nav-panel-add-tag').toggle(100);
@@ -42,10 +51,7 @@ $(document).ready(() => {
     return false;
   });
   $('#nav-btn-add').on('click', () => {
-    $('.nav-panel-actions').hide(100);
-    $('.nav-panel-add').show(100);
-    $('.nav-panels').css('background', 'white');
-    $('#entry_url').focus();
+    toggleNav('.nav-panel-add', '#entry_url');
     return false;
   });
   const materialAddForm = $('.nav-panel-add');
@@ -54,15 +60,11 @@ $(document).ready(() => {
     $('input#entry_url', materialAddForm).prop('readonly', true).trigger('blur');
   });
   $('#nav-btn-search').on('click', () => {
-    $('.nav-panel-actions').hide(100);
-    $('.nav-panel-search').show(100);
-    $('.nav-panels').css('background', 'white');
-    $('#search_entry_term').focus();
+    toggleNav('.nav-panel-search', '#search_entry_term');
     return false;
   });
-  $('.close').on('click', () => {
-    $('.nav-panel-add').hide(100);
-    $('.nav-panel-search').hide(100);
+  $('.close').on('click', (e) => {
+    $(e.target).parent('.nav-panel-item').hide(100);
     $('.nav-panel-actions').show(100);
     $('.nav-panels').css('background', 'transparent');
     return false;