init
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
var Drawer = {
|
||||
open: function (key) {
|
||||
document.querySelector('#drawer').dataset.type = key;
|
||||
MovimTpl.pushAnchorState(key, function () { Drawer.clear(key) });
|
||||
},
|
||||
filled: function () {
|
||||
return (document.querySelector('#drawer').innerHTML != '');
|
||||
},
|
||||
hasTabs: function () {
|
||||
return Drawer.filled()
|
||||
&& document.querySelector('#drawer').contains(document.querySelector('#navtabs'));
|
||||
},
|
||||
clear: function (key) {
|
||||
if (key && document.querySelector('#drawer').dataset.type == key) {
|
||||
Drawer_ajaxClear();
|
||||
return;
|
||||
}
|
||||
|
||||
if (key == undefined) {
|
||||
MovimTpl.clearAnchorState();
|
||||
Drawer_ajaxClear();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (typeof MovimWebsocket != 'undefined') {
|
||||
MovimWebsocket.initiate(() => document.querySelector('#drawer').innerHTML = '');
|
||||
}
|
||||
|
||||
MovimEvents.registerBody('click', 'drawer', (e) => {
|
||||
if (Drawer.filled()
|
||||
&& document.querySelector('body') == e.target) {
|
||||
e.stopPropagation();
|
||||
history.back();
|
||||
}
|
||||
});
|
||||
|
||||
MovimEvents.registerBody('keydown', 'drawer', (e) => {
|
||||
if (Drawer.filled()
|
||||
&& e.key == 'Escape') {
|
||||
history.back();
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user