1function isStorageAvailable(type) {
2    var storage;
3    try {
4        storage = window[type];
5        var x = '__storage_test__';
6        storage.setItem(x, x);
7        storage.removeItem(x);
8        return true;
9    }
10    catch(e) {
11        return e instanceof DOMException && (
12            // everything except Firefox
13            e.code === 22 ||
14            // Firefox
15            e.code === 1014 ||
16            // test name field too, because code might not be present
17            // everything except Firefox
18            e.name === 'QuotaExceededError' ||
19            // Firefox
20            e.name === 'NS_ERROR_DOM_QUOTA_REACHED') &&
21            // acknowledge QuotaExceededError only if there's something already stored
22            (storage && storage.length !== 0);
23    }
24};
25
26function openNav() {
27	var $StorageAvailable = isStorageAvailable('localStorage');
28	if ($StorageAvailable != true) {
29		console.warn("[docnavwiki] localStorage seem to be not available. no open/close state store: {",$StorageAvailable,"}");
30	}
31	if ( $StorageAvailable) {
32		try {
33			localStorage.setItem('sidebar','open');
34		} catch (e){
35			console.error("something went wrong when trying to access local storage : {",e,"}");
36		}
37	}
38	document.getElementById("navbar").style.visibility = "visible";
39	document.getElementById("main").style.left = "18em";
40	document.getElementById("openbtn").style.visibility = "hidden";
41}
42
43function closeNav() {
44	var $StorageAvailable = isStorageAvailable('localStorage');
45	if ($StorageAvailable != true) {
46		console.warn("[docnavwiki] localStorage seem to be not available. no open/close state store: {",$StorageAvailable,"}");
47	}
48	if ( $StorageAvailable) {
49		try {
50			localStorage.setItem('sidebar','closed');
51		} catch (e){
52			console.error("something went wrong when trying to access local storage : {",e,"}");
53		}
54	}
55	document.getElementById("navbar").style.visibility = "hidden";
56	document.getElementById("main").style.left = "0";
57	document.getElementById("openbtn").style.visibility = "visible";
58
59}
60
61function storeScrollPosition() {
62	localStorage.setItem('sidebarScrollPosition',navbar.scrollTop);
63}
64
65function SetScrollPosition() {
66	navbar.scrollTo(0,localStorage.getItem('sidebarScrollPosition'));
67}
68
69