]> git.immae.eu Git - github/wallabag/wallabag.git/blame - app/Resources/static/themes/material/js/shortcuts/main.js
Fix the box shadow on the card entry
[github/wallabag/wallabag.git] / app / Resources / static / themes / material / js / shortcuts / main.js
CommitLineData
5637a26e
TC
1import Mousetrap from 'mousetrap';
2import $ from 'jquery';
3
4function toggleFocus(cardToToogleFocus) {
5 if (cardToToogleFocus) {
6 $(cardToToogleFocus).toggleClass('z-depth-4');
7 }
8}
5637a26e
TC
9
10$(document).ready(() => {
78d6c309
S
11 const cards = $('#content').find('.card');
12 const cardNumber = cards.length;
c9309923 13 let cardIndex = 0;
78d6c309
S
14 /* If we come from next page */
15 if (window.location.hash === '#prev') {
16 cardIndex = cardNumber - 1;
17 }
18 let card = cards[cardIndex];
c9309923 19 const pagination = $('.pagination');
5637a26e 20
10a1ffae
TC
21 /* Show nothing on quickstart */
22 if ($('#content > div.quickstart').length > 0) {
23 return;
24 }
25
5637a26e
TC
26 /* Focus current card */
27 toggleFocus(card);
28
29 /* Actions */
30 Mousetrap.bind('g n', () => {
16ef7607 31 $('#nav-btn-add').trigger('click');
995c2044
NL
32 return false;
33 });
34
35 Mousetrap.bind('s', () => {
36 $('#nav-btn-search').trigger('click');
37 return false;
5637a26e 38 });
16ef7607 39
5637a26e 40 Mousetrap.bind('esc', () => {
16ef7607 41 $('.close').trigger('click');
5637a26e
TC
42 });
43
44 /* Select right card. If there's a next page, go to next page */
45 Mousetrap.bind('right', () => {
46 if (cardIndex >= 0 && cardIndex < cardNumber - 1) {
47 toggleFocus(card);
48 cardIndex += 1;
78d6c309 49 card = cards[cardIndex];
5637a26e
TC
50 toggleFocus(card);
51 return;
52 }
c9309923 53 if (pagination.length > 0 && pagination.find('li.next:not(.disabled)').length > 0 && cardIndex === cardNumber - 1) {
5637a26e 54 window.location.href = window.location.origin + $(pagination).find('li.next a').attr('href');
5637a26e
TC
55 }
56 });
57
58 /* Select previous card. If there's a previous page, go to next page */
59 Mousetrap.bind('left', () => {
60 if (cardIndex > 0 && cardIndex < cardNumber) {
61 toggleFocus(card);
62 cardIndex -= 1;
78d6c309 63 card = cards[cardIndex];
5637a26e
TC
64 toggleFocus(card);
65 return;
66 }
c9309923 67 if (pagination.length > 0 && $(pagination).find('li.prev:not(.disabled)').length > 0 && cardIndex === 0) {
5637a26e 68 window.location.href = `${window.location.origin + $(pagination).find('li.prev a').attr('href')}#prev`;
5637a26e
TC
69 }
70 });
16ef7607 71
5637a26e
TC
72 Mousetrap.bind('enter', () => {
73 window.location.href = window.location.origin + $(card).find('span.card-title a').attr('href');
74 });
16ef7607 75});