aboutsummaryrefslogtreecommitdiff
path: root/resources/assets/javascripts/lib/responsive.js
blob: 1f751e163f27f8a895645cb958f7f9efb8187372 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import HeaderMagic from './header_magic.js';

const Responsive = {
    media_query: window.matchMedia('(max-width: 767px)'),

    setResponsiveDisplay (state = true) {
        $('html').toggleClass('responsive-display', state);

        if (state) {
            HeaderMagic.disable();
        } else {
            HeaderMagic.enable();
        }
    },

    engage () {
        Responsive.setResponsiveDisplay(Responsive.isResponsive());

        Responsive.media_query.addEventListener('change', () => {
            Responsive.setResponsiveDisplay(Responsive.isResponsive());
        });
    },

    isResponsive() {
        return Responsive.media_query.matches;
    },

    isCompactNavigation() {
        const cache = STUDIP.Cache.getInstance('responsive.');
        let result = false;
        if (STUDIP.USER_ID) {
            result = cache.get('fullscreen-mode') ?? false;
        } else {
            cache.remove('fullscreen-mode');
        }
        return result;
    }
};

export default Responsive;