/* - - - - - - - - - - - - - - - - - - - - -

 * Functions.js - Bridge Initiative website
 * @author: Phil Bast <contact@philbast.com>
 * @copyright: 2009 Phil Bast
 * @created: 08/12/2009
 * @modified: 08/15/2009
 * @version: 1.06

- - - - - - - - - - - - - - - - - - - - - */

function makeTitleLinks() {
	try { var obj = document.getElementById('blocks').getElementsByTagName('p'); }
	catch(e) { return false; }
	for (var i=0; i < obj.length; i++) {
		el = obj[i];
		if (el.className.match('title')) {
			el.onmouseover = function() { toggleBg(this,'over'); }
			el.onmouseout  = function() { toggleBg(this,'out'); }
			el.onclick     = function() {
				var id = get_nextsibling(this).id;
				animatedcollapse.toggle(id);
				toggleBg(this,'toggle');
			}
		}
	}
}

function makeAnimCollapse() {
	try { var obj = document.getElementsByTagName('div'); }
	catch(e) { return false; }
	for (var i=0; i < obj.length; i++) {
		el = obj[i];
		if (el.id.match('acc')) { animatedcollapse.addDiv(el.id); }
	}
	if (i>0) { animatedcollapse.init(); }
}

function toggleBg(el,flag) {
	var cls = el.className;
	switch(flag) {
		case "over":
			cls = (cls.match('out')) ? cls.replace('out', 'over') : cls + ' over';
			cls = cls.split('  ').join(' ');
			el.className = cls;
		break;
	
		case "out":
			cls = cls.replace('over', '');
			el.className = cls;
		break;
	
		case "toggle":
			cls = (cls.match('more')) ? cls.replace('more', 'less') : cls.replace('less', 'more');
			el.className = cls;
		break;
	}
}

function get_nextsibling(n) {
	x = n.nextSibling;
	while (x.nodeType != 1) { x = x.nextSibling; }
	return x;
}

// loader //
addLoadEvent(makeTitleLinks);
addLoadEvent(makeAnimCollapse);
