PageSourceSearch

http://numaboa.com.br/templates/numaboa/javascript/hide.js

js numaboa.com.br collected 2026-10-02 13:59:56 UTC 8,145 bytes, 309 lines download raw bytes

1// Angie Radtke 2009 //
2
3/*global window, localStorage, Cookie, altopen, altclose, big, small, rightopen, rightclose, bildauf, bildzu */
4
5Object.append(Browser.Features, {
6	localstorage: (function() {
7		return ('localStorage' in window) && window.localStorage !== null;
8	})()
9});
10
11function saveIt(name) {
12	var x = document.id(name).style.display;
13
14	if (!x) {
15		alert('No cookie available');
16	} else {
17		if (Browser.Features.localstorage) {
18			try {
19				localStorage[name] = x;
20			}
21			catch (e) {
22				// Most likely the storage is full or deactivated
23			}
24		} else {
25			Cookie.write(name, x, {duration: 7});
26		}
27	}
28}
29
30function readIt(name) {
31	if (Browser.Features.localstorage) {
32		return localStorage[name];
33	} else {
34		return Cookie.read(name);
35	}
36}
37
38function wrapperwidth(width) {
39	document.id('wrapper').setStyle('width', width);
40}
41
42// add Wai-Aria landmark-roles
43window.addEvent('domready', function () {
44
45	if (document.id('nav')) {
46		document.id('nav').setProperties( {
47			role : 'navigation'
48		});
49	}
50
51	if (document.id('mod-search-searchword')) {
52		document.id(document.id('mod-search-searchword').form).set( {
53			role : 'search'
54		});
55	}
56
57	if (document.id('main')) {
58		document.id('main').setProperties( {
59			role : 'main'
60		});
61	}
62
63	if (document.id('right')) {
64		document.id('right').setProperties( {
65			role : 'contentinfo'
66		});
67	}
68
69});
70
71window.addEvent('domready', function() {
72
73		// get ankers
74		var myankers = document.id(document.body).getElements('a.opencloselink');
75		myankers.each(function(element) {
76			element.setProperty('role', 'tab');
77			var myid = element.getProperty('id');
78			myid = myid.split('_');
79			myid = 'module_' + myid[1];
80			document.id(element).setProperty('aria-controls', myid);
81		});
82
83		var list = document.id(document.body).getElements('div.moduletable_js');
84		list.each(function(element) {
85
86			if (element.getElement('div.module_content')) {
87
88				var el = element.getElement('div.module_content');
89				el.setProperty('role', 'tabpanel');
90				var myid = el.getProperty('id');
91				myid = myid.split('_');
92				myid = 'link_' + myid[1];
93				el.setProperty('aria-labelledby', myid);
94				var myclass = el.get('class');
95				var one = myclass.split(' ');
96				// search for active menu-item
97				var listelement = el.getElement('a.active');
98				var unique = el.id;
99				var nocookieset = readIt(unique);
100				if ((listelement) ||
101						((one[1] == 'open') && (nocookieset == null))) {
102					el.setStyle('display', 'block');
103					var eltern = el.getParent();
104					var elternh = eltern.getElement('h3');
105					var elternbild = eltern.getElement('img');
106					elternbild.setProperties( {
107						alt : altopen,
108						src : bildzu
109					});
110					elternbild.focus();
111				} else {
112					el.setStyle('display', 'none');
113					el.setProperty('aria-expanded', 'false');
114				}
115
116				unique = el.id;
117				var cookieset = readIt(unique);
118				if (cookieset == 'block') {
119					el.setStyle('display', 'block');
120					el.setProperty('aria-expanded', 'true');
121					el.slide('show');//.slide('hide').slide('in');
122					el.getParent().setProperty('class', 'slide');
123					var eltern = el.getParent().getParent();
124					var elternh = eltern.getElement('h3');
125					var elternbild = eltern.getElement('img');
126					elternbild.setProperties( {
127					alt : altopen,
128					src : bildzu
129					});
130				}
131
132			}
133		});
134	});
135
136window.addEvent('domready', function() {
137	var what = document.id('right');
138	// if rightcolumn
139		if (what != null) {
140			var whatid = what.id;
141			var rightcookie = readIt(whatid);
142			if (rightcookie == 'none') {
143				what.setStyle('display', 'none');
144				document.id('nav').addClass('leftbigger');
145				wrapperwidth(big);
146				var grafik = document.id('bild');
147				grafik.innerHTML = rightopen;
148				grafik.focus();
149			}
150		}
151	});
152
153function auf(key) {
154	var el = document.id(key);
155
156	if (el.style.display == 'none') {
157		el.setStyle('display', 'block');
158		el.setProperty('aria-expanded', 'true');
159
160		if (key != 'right') {
161			el.slide('hide').slide('in');
162			el.getParent().setProperty('class', 'slide');
163			eltern = el.getParent().getParent();
164			elternh = eltern.getElement('h3');
165			elternh.addClass('high');
166			elternbild = eltern.getElement('img');
167			// elternbild.focus();
168			el.focus();
169			elternbild.setProperties( {
170				alt : altopen,
171				src : bildzu
172			});
173		}
174
175		if (key == 'right') {
176			document.id('right').setStyle('display', 'block');
177			wrapperwidth(small);
178			document.id('nav').removeClass('leftbigger');
179			grafik = document.id('bild');
180			document.id('bild').innerHTML = rightclose;
181			grafik.focus();
182		}
183	} else {
184		el.setStyle('display', 'none');
185		el.setProperty('aria-expanded', 'false');
186
187		el.removeClass('open');
188
189		if (key != 'right') {
190			eltern = el.getParent().getParent();
191			elternh = eltern.getElement('h3');
192			elternh.removeClass('high');
193			elternbild = eltern.getElement('img');
194			// alert(bildauf);
195			elternbild.setProperties( {
196				alt : altclose,
197				src : bildauf
198			});
199			elternbild.focus();
200		}
201
202		if (key == 'right') {
203			document.id('right').setStyle('display', 'none');
204			wrapperwidth(big);
205			document.id('nav').addClass('leftbigger');
206			grafik = document.id('bild');
207			grafik.innerHTML = rightopen;
208			grafik.focus();
209		}
210	}
211	// write cookie
212	saveIt(key);
213}
214
215// ########### Tabfunctions ####################
216
217window.addEvent('domready', function() {
218	var alldivs = document.id(document.body).getElements('div.tabcontent');
219	var outerdivs = document.id(document.body).getElements('div.tabouter');
220	outerdivs = outerdivs.getProperty('id');
221
222	for (var i = 0; i < outerdivs.length; i++) {
223		alldivs = document.id(outerdivs[i]).getElements('div.tabcontent');
224		count = 0;
225		alldivs.each(function(element) {
226			count++;
227			var el = document.id(element);
228			el.setProperty('role', 'tabpanel');
229			el.setProperty('aria-hidden', 'false');
230			el.setProperty('aria-expanded', 'true');
231			elid = el.getProperty('id');
232			elid = elid.split('_');
233			elid = 'link_' + elid[1];
234			el.setProperty('aria-labelledby', elid);
235
236			if (count != 1) {
237				el.addClass('tabclosed').removeClass('tabopen');
238				el.setProperty('aria-hidden', 'true');
239				el.setProperty('aria-expanded', 'false');
240			}
241		});
242
243		countankers = 0;
244		allankers = document.id(outerdivs[i]).getElement('ul.tabs').getElements('a');
245
246		allankers.each(function(element) {
247			countankers++;
248			var el = document.id(element);
249			el.setProperty('aria-selected', 'true');
250			el.setProperty('role', 'tab');
251			linkid = el.getProperty('id');
252			moduleid = linkid.split('_');
253			moduleid = 'module_' + moduleid[1];
254			el.setProperty('aria-controls', moduleid);
255
256			if (countankers != 1) {
257				el.addClass('linkclosed').removeClass('linkopen');
258				el.setProperty('aria-selected', 'false');
259			}
260		});
261	}
262});
263
264function tabshow(elid) {
265	var el = document.id(elid);
266	var outerdiv = el.getParent();
267	outerdiv = outerdiv.getProperty('id');
268
269	var alldivs = document.id(outerdiv).getElements('div.tabcontent');
270	var liste = document.id(outerdiv).getElement('ul.tabs');
271
272	liste.getElements('a').setProperty('aria-selected', 'false');
273
274	alldivs.each(function(element) {
275		element.addClass('tabclosed').removeClass('tabopen');
276		element.setProperty('aria-hidden', 'true');
277		element.setProperty('aria-expanded', 'false');
278	});
279
280	el.addClass('tabopen').removeClass('tabclosed');
281	el.setProperty('aria-hidden', 'false');
282	el.setProperty('aria-expanded', 'true');
283	el.focus();
284	var getid = elid.split('_');
285	var activelink = 'link_' + getid[1];
286	document.id(activelink).setProperty('aria-selected', 'true');
287	liste.getElements('a').addClass('linkclosed').removeClass('linkopen');
288	document.id(activelink).addClass('linkopen').removeClass('linkclosed');
289}
290
291function nexttab(el) {
292	var outerdiv = document.id(el).getParent();
293	var liste = outerdiv.getElement('ul.tabs');
294	var getid = el.split('_');
295	var activelink = 'link_' + getid[1];
296	var aktiverlink = document.id(activelink).getProperty('aria-selected');
297	var tablinks = liste.getElements('a').getProperty('id');
298
299	for ( var i = 0; i < tablinks.length; i++) {
300
301		if (tablinks[i] == activelink) {
302
303			if (document.id(tablinks[i + 1]) != null) {
304				document.id(tablinks[i + 1]).onclick();
305				break;
306			}
307		}
308	}
309}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.