try {
	document.addEventListener('click', handleClick, false);
}
catch(e) {
	if (document.attachEvent) {
		document.attachEvent('onclick', handleClick);
	}
	else {
		document.onclick = handleClick;
	}
}

function handleClick(e) {
	var event = e || window.event;

	if (event.ctrlKey || event.shiftKey || event.altKey) {
		return true;
	}

	if (event.which && event.which != 1) {
		return true;
	}

	var target = event.target || event.srcElement;

	while (target && !/^a$/i.test(target.nodeName)) {
		target = target.parentNode;
	}

	if (!target || !target.getAttribute('rel')) {
		return true;
	}

	var rel  = target.getAttribute('rel');
	var href = target.getAttribute('href');

	switch(rel) {
		case 'external':
			window.open(href);
		break;

		default:
			return true;
		break;
	}

	try {
		event.preventDefault();
	}
	catch(e) {}

	return false;
}

function price_check() {
	if ($F('prijs') != '') {
		$('oudePrijs').disabled = false;
	}
	else {
		$('oudePrijs').disabled = true;
	}
}

function toggle_form(id) {
	$(id).toggle();

	if ($(id + 'Toggle').title == 'Uitklappen') {
		$(id + 'Toggle').src   = fold.src;
		$(id + 'Toggle').title = 'Inklappen';

		$(id).focusFirstElement();
	}
	else {
		$(id + 'Toggle').src   = unfold.src;
		$(id + 'Toggle').title = 'Uitklappen';
	}
}

var fold   = new Image(); fold.src   = '/images/layout/toggle_fold.gif';
var unfold = new Image(); unfold.src = '/images/layout/toggle_unfold.gif';

var reqTimeout = 300;

var productTerm  = null;
var productTimer = null;
var reqCategory  = null;

function refresh_products(optionChange) {
	reqCategory = $('categorie').options[$('categorie').selectedIndex].value;

	if ($F('term') != productTerm || optionChange) {
		productTerm = $F('term');

		clearTimeout(productTimer);

		productTimer = setTimeout("request_products($F('term'), $('categorie').options[$('categorie').selectedIndex].value, $('provincie').options[$('provincie').selectedIndex].value, $('sortering').options[$('sortering').selectedIndex].value);", reqTimeout);
	}

	return false;
}

function request_products(reqTerm, reqCategory, reqArea, reqSort) {
	new Ajax.Request(
		'intern/ajax/search.int.ajx.php', 
		{
			parameters: {
				term:      reqTerm, 
				categorie: reqCategory, 
				provincie: reqArea, 
				sortering: reqSort
			}, 
			onSuccess: renew_products
		}
	);
}

function renew_products(t) {
	if (t.responseText != '') {
		var data = t.responseText.split('~!~');

		if (reqCategory == $F('cId')) {
			$('numProd').innerHTML  = data[0];
			$('tabs1').innerHTML    = data[2];
			$('tabs2').innerHTML    = data[2];
			$('products').innerHTML = data[3];
		}
		else {
			document.location.href = '/' + data[1] + '/';
		}
	}
}

var branchTerm  = null;
var branchTimer = null;

function refresh_branches(optionChange) {
	if ($F('term') != branchTerm || optionChange) {
		branchTerm = $F('term');

		clearTimeout(branchTimer);

		branchTimer = setTimeout("request_branches($F('term'), $('provincie').options[$('provincie').selectedIndex].value);", reqTimeout);
	}

	return false;
}

function request_branches(reqTerm, reqArea) {
	new Ajax.Request(
		'intern/ajax/branchsearch.int.ajx.php', 
		{
			parameters: {
				term:       reqTerm, 
				provincie:  reqArea
			}, 
			onSuccess: renew_branches
		}
	);
}

function renew_branches(t) {
	if (t.responseText != '') {
		var data = t.responseText.split('~!~');

		$('numBranch').innerHTML = data[0];
		$('tabs').innerHTML      = data[1];
		$('branches').innerHTML  = data[2];
	}
}

var userTerm  = null;
var userTimer = null;

function refresh_users(optionChange) {
	if ($F('term') != userTerm || optionChange) {
		userTerm = $F('term');

		clearTimeout(userTimer);

		userTimer = setTimeout("request_users($F('term'), $('area').options[$('area').selectedIndex].value);", reqTimeout);
	}

	return false;
}

function request_users(reqTerm, reqArea) {
	new Ajax.Request(
		'intern/ajax/usersearch.int.ajx.php', 
		{
			parameters: {
				term:       reqTerm, 
				provincie:  reqArea
			}, 
			onSuccess: renew_users
		}
	);
}

function renew_users(t) {
	if (t.responseText != '') {
		var data = t.responseText.split('~!~');

		$('tabs').innerHTML      = data[1];
		$('userTable').innerHTML = data[2];
	}
}

function refresh_user() {
	request_user(
		$('banner').options[$('banner').selectedIndex].value
	);
}

function request_user(reqId) {
	new Ajax.Request(
		'intern/ajax/company.int.ajx.php', 
		{
			parameters: {
				id: reqId
			}, 
			onSuccess: renew_user
		}
	);
}

function renew_user(t) {
	if (t.responseText != '') {
		var data = t.responseText.split('~!~');

		$('bedrijf').innerHTML    = data[0];
		$('cUrl').innerHTML       = data[1];
		$('afbeelding').innerHTML = data[2];
	}
}

var currentSeq = 0;

function change_image(pId, seq, name) {
	if (seq != currentSeq) {
		currentSeq = seq;

		$('image').innerHTML = '<img src="images/product/' + pId + '_' + seq + '" alt="' + name + '" />';
	}
}

function set_standard() {
	if (confirm('De huidige instellingen worden vervangen. Standaard instellingen herstellen?')) {
		$('align').selectedIndex             = 1;
		$('rowLimit').selectedIndex          = 0;
		$('fontFamily').selectedIndex        = 0;
		$('fontSize').selectedIndex          = 3;
		$('h1FontSize').selectedIndex        = 3;
		$('searchbarFontSize').selectedIndex = 3;

		$('backgroundColor').value              = 'FFFFFF';
		$('color').value                        = '666666';
		$('aColor').value                       = '006600';
		$('aHoverColor').value                  = '006600';
		$('h1Color').value                      = '006600';
		$('productHeaderBackgroundColor').value = '006600';
		$('productHeaderColor').value           = 'FFFFFF';
		$('productBorderColor').value           = '006600';
		$('productBackgroundColor').value       = '9bb89a';
		$('productColor').value                 = '006600';
		$('productHoverBackgroundColor').value  = '779376';
		$('productHoverColor').value            = '006600';
		$('searchbarBackgroundColor').value     = '9cb89a';
		$('searchbarColor').value               = '2A2A2A';
		$('searchbarBorderColor').value         = '006600';
		$('thBackgroundColor').value            = '006600';
		$('thColor').value                      = 'FFFFFF';
		$('tableBorderColor').value             = '006600';
		$('tableHeaderBackgroundColor').value   = '9bb89a';
		$('tableHeaderColor').value             = '006600';
		$('bottomBackgroundColor').value        = '006600';
		$('bottomColor').value                  = 'FFFFFF';

		$('backgroundColor').setStyle({backgroundColor: $F('backgroundColor')});
		$('color').setStyle({backgroundColor: $F('color')});
		$('aColor').setStyle({backgroundColor: $F('aColor')});
		$('aHoverColor').setStyle({backgroundColor: $F('aHoverColor')});
		$('h1Color').setStyle({backgroundColor: $F('h1Color')});
		$('productHeaderBackgroundColor').setStyle({backgroundColor: $F('productHeaderBackgroundColor')});
		$('productHeaderColor').setStyle({backgroundColor: $F('productHeaderColor')});
		$('productBorderColor').setStyle({backgroundColor: $F('productBorderColor')});
		$('productBackgroundColor').setStyle({backgroundColor: $F('productBackgroundColor')});
		$('productColor').setStyle({backgroundColor: $F('productColor')});
		$('productHoverBackgroundColor').setStyle({backgroundColor: $F('productHoverBackgroundColor')});
		$('productHoverColor').setStyle({backgroundColor: $F('productHoverColor')});
		$('searchbarBackgroundColor').setStyle({backgroundColor: $F('searchbarBackgroundColor')});
		$('searchbarColor').setStyle({backgroundColor: $F('searchbarColor')});
		$('searchbarBorderColor').setStyle({backgroundColor: $F('searchbarBorderColor')});
		$('thBackgroundColor').setStyle({backgroundColor: $F('thBackgroundColor')});
		$('thColor').setStyle({backgroundColor: $F('thColor')});
		$('tableBorderColor').setStyle({backgroundColor: $F('tableBorderColor')});
		$('tableHeaderBackgroundColor').setStyle({backgroundColor: $F('tableHeaderBackgroundColor')});
		$('tableHeaderColor').setStyle({backgroundColor: $F('tableHeaderColor')});
		$('bottomBackgroundColor').setStyle({backgroundColor: $F('bottomBackgroundColor')});
		$('bottomColor').setStyle({backgroundColor: $F('bottomColor')});
	}
}

window.onload = function() {
	if ($('prijs') && $F('prijs') == '0,00') {
		$('prijs').value = '';
	}

	if ($('oudePrijs') && $F('oudePrijs') == '0,00') {
		$('oudePrijs').value = '';
	}

	if ($('oudePrijs') && $F('prijs') == '') {
		$('oudePrijs').disabled = true;
	}

	if ($('align')) {
		$('align').focus();
	}
	else if ($('banner')) {
		$('banner').focus();
	}
	else if ($('term')) {
		$('term').focus();
		$('term').select();
	}
	else if ($('gebruikersnaam')) {
		$('gebruikersnaam').focus();
		$('gebruikersnaam').select();
	}
	else if ($('bedrijfsnaam')) {
		$('bedrijfsnaam').focus();
		$('bedrijfsnaam').select();
	}
	else if ($('naam')) {
		$('naam').focus();
		$('naam').select();
	}

	if ($('user')) {
		toggle_form('user');
	}
	else if ($('ticket')) {
		toggle_form('ticket');
	}
	else if ($('company')) {
		toggle_form('company');
	}
	else if ($('reclame')) {
		toggle_form('reclame');
	}
	else if ($('lPartner')) {
		toggle_form('lPartner');
	}
}

var baseFolder = '/javascript/';
