]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - app/Resources/static/themes/material/js/shortcuts/main.js
Merge remote-tracking branch 'origin/master' into 2.3
[github/wallabag/wallabag.git] / app / Resources / static / themes / material / js / shortcuts / main.js
index 62b7ec6455e8fe71117c65630601e8258c2b948d..042b423c0e129cc23e7138d2e530fd5c94104882 100644 (file)
@@ -6,21 +6,31 @@ function toggleFocus(cardToToogleFocus) {
     $(cardToToogleFocus).toggleClass('z-depth-4');
   }
 }
-let card;
-let cardIndex;
-let cardNumber;
-let pagination;
 
 $(document).ready(() => {
-  cardIndex = 0;
-  cardNumber = $('#content ul.data > li').length;
-  card = $('#content ul.data > li')[cardIndex];
-  pagination = $('.pagination');
-
+  const cards = $('#content').find('.card');
+  const cardNumber = cards.length;
+  let cardIndex = 0;
   /* If we come from next page */
   if (window.location.hash === '#prev') {
     cardIndex = cardNumber - 1;
-    card = $('ul.data > li')[cardIndex];
+  }
+  let card = cards[cardIndex];
+  const pagination = $('.pagination');
+
+  /* Show nothing on quickstart */
+  if ($('#content > div.quickstart').length > 0) {
+    return;
+  }
+
+  /* Show nothing on login/register page */
+  if ($('#username').length > 0 || $('#fos_user_registration_form_username').length > 0) {
+    return;
+  }
+
+  /* Show nothing on login/register page */
+  if ($('#username').length > 0 || $('#fos_user_registration_form_username').length > 0) {
+    return;
   }
 
   /* Focus current card */
@@ -29,6 +39,12 @@ $(document).ready(() => {
   /* Actions */
   Mousetrap.bind('g n', () => {
     $('#nav-btn-add').trigger('click');
+    return false;
+  });
+
+  Mousetrap.bind('s', () => {
+    $('#nav-btn-search').trigger('click');
+    return false;
   });
 
   Mousetrap.bind('esc', () => {
@@ -40,13 +56,12 @@ $(document).ready(() => {
     if (cardIndex >= 0 && cardIndex < cardNumber - 1) {
       toggleFocus(card);
       cardIndex += 1;
-      card = $('ul.data > li')[cardIndex];
+      card = cards[cardIndex];
       toggleFocus(card);
       return;
     }
-    if (pagination != null && pagination.find('li.next') && cardIndex === cardNumber - 1) {
+    if (pagination.length > 0 && pagination.find('li.next:not(.disabled)').length > 0 && cardIndex === cardNumber - 1) {
       window.location.href = window.location.origin + $(pagination).find('li.next a').attr('href');
-      return;
     }
   });
 
@@ -55,13 +70,12 @@ $(document).ready(() => {
     if (cardIndex > 0 && cardIndex < cardNumber) {
       toggleFocus(card);
       cardIndex -= 1;
-      card = $('ul.data > li')[cardIndex];
+      card = cards[cardIndex];
       toggleFocus(card);
       return;
     }
-    if (pagination !== null && $(pagination).find('li.prev') && cardIndex === 0) {
+    if (pagination.length > 0 && $(pagination).find('li.prev:not(.disabled)').length > 0 && cardIndex === 0) {
       window.location.href = `${window.location.origin + $(pagination).find('li.prev a').attr('href')}#prev`;
-      return;
     }
   });