aboutsummaryrefslogtreecommitdiff
path: root/htdocs/js/common/30-static-manager.js
blob: 772df32e48034ba8ada5059c02f93fd8960eff19 (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
var StaticManager = {
    loadedStyles: [],
    versions: {},

    init: function(loadedStyles, versions) {
        this.loadedStyles = loadedStyles;
        this.versions = versions;
    },

    loadStyle: function(name, theme, callback) {
        var url;
        if (!window.appConfig.devMode) {
            if (theme === 'dark')
                name += '_dark';
            url = '/css/'+name+'.css?'+this.versions.css[name];
        } else {
            url = '/sass.php?name='+name+'&theme='+theme+'&v='+timestamp();
        }

        var el = document.createElement('link');
        el.onerror = callback;
        el.onload = callback;
        el.setAttribute('rel', 'stylesheet');
        el.setAttribute('type', 'text/css');
        el.setAttribute('id', 'style_'+name);
        el.setAttribute('href', url);

        document.getElementsByTagName('head')[0].appendChild(el);
    }
};