// if(typeof sIFR == "function"){
// 	sIFR.replaceElement('.bp-nav li.selected', named({
// 		sFlashSrc: "./fago.swf", 
// 		sColor: "#7A2684"
// 	}));
// 	sIFR.replaceElement('.bp-nav li.unselected', named({
// 		sFlashSrc: "./fago.swf", 
// 		sColor: "#005D87",
// 		sFlashVars: "underline=true"
// 	}));
// };

// TODO: clean up when copy!? is satisfied
var state;
document.observe('dom:loaded', function() {
	// if(typeof sIFR == "function"){
	// 	$$('.bp-nav li').each(function(element) {
	// 		if (!element.hasClassName('selected')) {
	// 			element.addClassName('unselected')
	// 		}	
	// 	})
	// }

	$$(".hidden-item").each(function(element) {
		element.hide();
	})
	
	$$(".more").each(function(element) {
		var link = $(element).down('a');
		var container = $(element).up('div.bp-item');
		var hidden_item = container.down('div.hidden-item');
		var meer = container.getElementsByClassName('bp-item-ft')[0].down('a');
		var minder = meer.next();
		
		$(element).observe('click', function(event) {
			event.stop();
			event.element().blur()
			if (in_motion_pulldown) return
			if (!hidden_item.visible()) {
				link.update("minder");
				hidden_item.blindDown({ 
					duration: 0.3,
					beforeStart: function() { in_motion_pulldown = true },
					afterFinish: function() { in_motion_pulldown = false }
				})
				meer.addClassName('disabled')
				minder.removeClassName('disabled')
			} else {
				link.update("meer");
				hidden_item.blindUp({ 
					duration: 0.3,
					beforeStart: function() { in_motion_pulldown = true },
					afterFinish: function() { in_motion_pulldown = false }
				})
				meer.removeClassName('disabled')
				minder.addClassName('disabled')
			}
		})
	})
	
	$$(".bp-item-ft").each(function(element) {
		var meer = $(element).down('a');
		var minder = meer.next()
		
		meer.observe('click', function(event) {
			event.stop();
			event.element().blur()
			if (in_motion_pulldown) return
			var link = event.element();
			var container = link.up('div.bp-item');
			var hidden_item = container.down('div.hidden-item')
			if (!hidden_item.visible()) {
				hidden_item.blindDown({ 
					duration: 0.3,
					beforeStart: function() { in_motion_pulldown = true },
					afterFinish: function() { in_motion_pulldown = false }
				})
				container.getElementsByClassName('more')[0].down('a').update('minder')
				meer.addClassName('disabled')
				minder.removeClassName('disabled')
			}
		});
		
		minder.observe('click', function(event) {
			event.stop();
			event.element().blur()
			if (in_motion_pulldown) return
			var link = event.element();
			var container = link.up('div.bp-item');
			var hidden_item = link.up('div.bp-item').down('div.hidden-item')
			if (hidden_item.visible()) {
					hidden_item.blindUp({ duration: 0.3,
					beforeStart: function() { in_motion_pulldown = true },
					afterFinish: function() { in_motion_pulldown = false }
				})
				container.getElementsByClassName('more')[0].down('a').update('meer')
				meer.removeClassName('disabled')
				minder.addClassName('disabled')
			}
		})
	})
	
	
	
	$$(".jb-item-ft").each(function(element) {
		var meer = $(element).down('a');
		var minder = meer.next()
		
		meer.observe('click', function(event) {
			event.stop();
			event.element().blur()
			if (in_motion_pulldown) return
			var link = event.element();
			var container = link.up('div.jbcol');
			var hidden_item = container.down('div.hidden-item')
			if (!hidden_item.visible()) {
				hidden_item.blindDown({ 
					duration: 0.3,
					beforeStart: function() { in_motion_pulldown = true },
					afterFinish: function() { in_motion_pulldown = false }
				})
				meer.addClassName('disabled')
				minder.removeClassName('disabled')
			}
		});
		
		minder.observe('click', function(event) {
			event.stop();
			event.element().blur()
			if (in_motion_pulldown) return
			var link = event.element();
			var container = link.up('div.jbcol');
			var hidden_item = container.down('div.hidden-item')
			if (hidden_item.visible()) {
					hidden_item.blindUp({ duration: 0.3,
					beforeStart: function() { in_motion_pulldown = true },
					afterFinish: function() { in_motion_pulldown = false }
				})
				meer.removeClassName('disabled')
				minder.addClassName('disabled')
			}
		})
	})
	
	if ($('means')) {
		// change dom to fit the needs of changing visuals and text
		var means = $$('#means .visuals-container').first();
		var the_content = means.innerHTML
		means.update('')
		var initial_visual = $$('.bp-content-hd .visual').first();
		initial_visual.insert({ after: the_content })
		$$('.bp-content-hd .visual').each(function(element) { element.hide() })
		initial_visual.show();
		
		// add events to do stuff
		$('switch-trigger').observe('click', function(event) {
			event.stop()
		});
		$('switch-trigger').observe('mouseover', function(event) {
			var theswitch = $('switch').down('div.switch-inner');
			if (!theswitch.visible() && !in_motion) {
				theswitch.blindDown({ 
					duration: 0.3,
					beforeStart: function() { in_motion = true },
					afterFinish: function() { in_motion = false }
				})
			}
			//window.clearTimeout(intervalId);
			//intervalId = up.delay(5)
		})
		$('switch-trigger').observe('mouseout', function(event) {
			if (in_motion || Position.within($('switch'), event.pointerX(), event.pointerY())) return
			//console.log(Position.within($('switch'), event.pointerX(), event.pointerY()))
			var theswitch = $('switch').down('div.switch-inner');
			if (theswitch.visible()) {
				theswitch.blindUp({ 
					duration: 0.3, 
					beforeStart: function() { in_motion = true },
					afterFinish: function() { in_motion = false }
				})
				$$('.bp-content-hd .visual').each(function(element) {
					element.hide()
				})
				$(initial_visual).show()
				$('switch-trigger').setStyle("z-index:100") //for safari 2.x
			}
		})
		// $('switch').observe('mouseover', function(event) {
		// 	window.clearTimeout(intervalId);
		// })
		$$("#switch a").each(function(element) {
			element.observe('click', function(event) { event.stop() })
			element.observe('mouseover', function(event) {
				var id = event.findElement('a').hash.gsub('#', '');
				$$('.bp-content-hd .visual').each(function(element) {
					element.hide()
				})
				$(id).show()
			})
		})
		$('switch').observe('mouseout', function(event) {
			if (in_motion || Position.within($('switch'), event.pointerX(), event.pointerY())) return
			var theswitch = $('switch').down('div.switch-inner');
			if (theswitch.visible()) {
				theswitch.blindUp({ 
					duration: 0.3, 
					beforeStart: function() { in_motion = true },
					afterFinish: function() { in_motion = false }
				})
				$$('.bp-content-hd .visual').each(function(element) {
					element.hide()
				})
				$(initial_visual).show()
				$('switch-trigger').setStyle("z-index:100") //for safari 2.x
			}
		})
	}
})
var in_motion = false; //state
var in_motion_pulldown = false;
var intervalId;
function up(event) {
	if (in_motion) return
	var theswitch = $('switch').down('div.switch-inner');
	theswitch.blindUp({ 
		duration: 0.3, 
		beforeStart: function() { in_motion = true },
		afterFinish: function() { in_motion = false }
	})
	window.clearTimeout(intervalId);
}

function submitIt(myForm) {
	var email_pattern = /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
	
	$('naam').value = $F('naam').strip();
	$('bedrijf').value = $F('bedrijf').strip();
	$('emailadres').value = $F('emailadres').strip();
	$('telefoonnummer').value = $F('telefoonnummer').strip();
	
	if ($F('naam').empty() || $F('bedrijf').empty() || $F('emailadres').empty() || $F('telefoonnummer').empty()) {
		alert("Controleer of alle velden zijn ingevuld.");
		return false
	}
	
	if (email_pattern.test($F('emailadres'))) {
		myForm.submit();
	} else {
		alert("Het opgegeven e-mailadres is incorrect of niet ingevuld.")
		$('emailadres').activate();
		return false;
	}
}



// (function () {
// Stoor.getStackTrace = (function () {
//  
// var mode;
// try {(0)()} catch (e) {
//     mode = e.stack ? 'Firefox' : window.opera ? 'Opera' : 'Other';
// }
//  
// switch (mode) {
//     case 'Firefox' : return function () {
//         try {(0)()} catch (e) {
//             return e.stack.replace(/^.*?\n/,'').
//                            replace(/(?:\n@:0)?\s+$/m,'').
//                            replace(/^\(/gm,'{anonymous}(').
//                            split("\n");
//         }
//     };
//  
//     case 'Opera' : return function () {
//         try {(0)()} catch (e) {
//             var lines = e.message.split("\n"),
//                 ANON = '{anonymous}',
//                 lineRE = /Line\s+(\d+).*?in\s+(http\S+)(?:.*?in\s+function\s+(\S+))?/i,
//                 i,j,len;
//  
//             for (i=4,j=0,len=lines.length; i<len; i+=2) {
//                 if (lineRE.test(lines[i])) {
//                     lines[j++] = (RegExp.$3 ?
//                         RegExp.$3 + '()@' + RegExp.$2 + RegExp.$1 :
//                         ANON + RegExp.$2 + ':' + RegExp.$1) +
//                         ' -- ' + lines[i+1].replace(/^\s+/,'');
//                 }
//             }
//  
//             lines.splice(j,lines.length-j);
//             return lines;
//         }
//     };
//  
//     default : return function () {
//         var curr  = arguments.callee.caller,
//             FUNC  = 'function', ANON = "{anonymous}",
//             fnRE  = /function\s*([\w\-$]+)?\s*\(/i,
//             stack = [],j=0,
//             fn,args,i;
//  
//         while (curr) {
//             fn    = fnRE.test(curr.toString()) ? RegExp.$1 || ANON : ANON;
//             args  = stack.slice.call(curr.arguments);
//             i     = args.length;
//  
//             while (i--) {
//                 switch (typeof args[i]) {
//                     case 'string'  : args[i] = '"'+args[i].replace(/"/g,'\\"')+'"'; break;
//                     case 'function': args[i] = FUNC; break;
//                 }
//             }
//             stack[j++] = fn + '(' + args.join() + ')';
//             curr = curr.caller;
//         }
//         return stack;
//     };
// }
// })();

