
/*window.addEvent('domready', function () {
$('#linkFavIcon').attr('href','http://www.pan.nl/media/panamsterdammedia/favicon.png');	

});
*/
function getUrlVarsFrom(url, preventUnwantedVars) {
	var vars = [],
		hash;
	var hashes = url.slice(url.indexOf('?') + 1).split('#')[0].split('&');
	for (var i = 0; i < hashes.length; i++) {
		hash = hashes[i].split('=');
		if (preventUnwantedVars == 1) {
			if (hash[0] != 'lg' && hash[0] != 'objectid' && hash[0] != 'tabindex' && hash[0] != 'page' && hash[0] != 'keyword' && hash[0] != 'mediaid') {
				if (hash[0] == 'categoryid' && hash[1] == 0) {} else {
					vars.push(hash[0]);
					vars[hash[0]] = hash[1];
				}
			}
		} else {
			vars.push(hash[0]);
			vars[hash[0]] = hash[1];
		}
	}
	return vars;
}




//MENU FUNCTIONS

function nrKeys(a) {
	var i = 0;
	for (key in a) {
		i++;
	}
	return i;
}

function compareAssociativeArrays(a, b) {
	if (a == b) {
		return true;
	}
	if (nrKeys(a) != nrKeys(b)) {
		return false;
	}
	for (key in a) {
		if (a[key] != b[key]) {
			return false;
		}
	}
	return true;
}


function highlightCurrentLeftMenuItem() {

	//check for matches on menu
	$j("div#leftMenu ul a").each(function (index, domEle) {
		if (compareAssociativeArrays(getUrlVarsFrom(window.location.href, 1), getUrlVarsFrom($j(domEle).attr('href'), 1))) {
			$j(domEle).addClass('active');

			$j('img#page-title')
			.attr('src', '/media/pan09media/title' + $j(domEle).attr('rel') + '.gif')
			.load(function(){
				$j('img#page-title').css('display','block');
			})

		}
	})


}

function highlightCurrentMainMenuItem() {

	//check for matches on menu
	$j("div.menucontainer div.nav a").each(function (index, domEle) {
		if (compareAssociativeArrays(getUrlVarsFrom(window.location.href, 1), getUrlVarsFrom($j(domEle).attr('href'), 1))) {
			if($j(domEle).children('img').attr('src').indexOf('_on') == -1) $j(domEle).children('img').attr('src', $j(domEle).children('img').attr('src').replace('.gif','_on.gif'));
			
			$j('img#page-title')
			.attr('src', '/media/pan09media/title' + $j(domEle).children('img').attr('id') + '.gif')
			.load(function(){
				$j('img#page-title').css('display','block');
			})
			
		}
	})


}

var $j = jQuery.noConflict();

// Use jQuery via $j(...)
$j(document).ready(function () {
	
	
	// Call the functions for each page
	switch(getUrlVarsFrom(window.location.href, true)['tabid']) {
		case '160':
			initForm();
			initFileInput();
			break;
		case '29':
			initFloorPlan();
			break;
	}
	
	$j('img#Image5').parent().attr('href', 'http://www.pan.nl/DesktopDefault.aspx?tabid=29');
	
	
	highlightCurrentMainMenuItem();
	
	highlightCurrentLeftMenuItem();
	
	handleLanguageMenu();
	
	initMainMenuHover();
	
	addSocialIcons();
});


function addSocialIcons(){
	var lang;
	
	$j('#lang-en').hasClass('active') ? lang="en" : lang="nl";
	
	var socialIcons = '<style>' +
			'.addthis_default_style .at15t_expanded, .addthis_default_style .at15t_compact {' +
			'    margin-right: 4px;' +
			'}' +
			'' +
			'.addthis_default_style .addthis_separator, .addthis_default_style .at300b, .addthis_default_style .at300m, .addthis_default_style .at300bs {' +
			'    float: left;' +
			'}' +
			
			'.at300bs {' +
			'    background: url("http://s7.addthis.com/static/r07/widget33.png") no-repeat scroll 0 0 transparent;' +
			'    display: block;' +
			'    height: 16px;' +
			'    line-height: 16px !important;' +
			'    overflow: hidden;' +
			'    width: 16px;' +
			'}' +
			'.at15t_expanded {' +
			'    background-position: 0 -3344px;' +
			'}' +
			'.at300b, .at300m, .at300bs {' +
			'    cursor: pointer;' +
			'}' +
			'</style>' +
			'<div class="left-bottom ' + lang + '">' + 
				'<a href="http://www.pan.nl/panitapp"><img border="0" alt="Pan it App!" src="media/panAmsterdamMedia/pan-it-app-sidebar.jpg"></a>' + 
				'<div id="shareBtnDiv">' +
					'<div class="addthis_toolbox addthis_default_style">' +
						'<a href="http://www.addthis.com/bookmark.php?v=250&amp;username=xa-4c1257014c8d9bc2" class="addthis_button_expanded at300m" title="View more services">' +
							'<span class="at300bs at15nc at15t_expanded"></span> Share' +
						'</a>' +
						'<div class="push">' +
						'</div>' +
					'</div>' +
					
					'<br>' +
					'<span class="en" style="float: left; margin-right: 4px;">Follow us on</span><span class="nl" style="float: left; margin-right: 4px;">Volg ons op</span>' +
					'<a target="_blank" name="Find us on Facebook" href="http://www.facebook.com/pages/PAN-Amsterdam/107051552660143" title="Find us on Facebook">' +
						'<img border="0" src="media/pan09media/icon-facebook.jpg" style="float: left; margin-right: 4px;" alt="Find us on Facebook">' +
					'</a>' +
					'<a target="_blank" name="Find us on Twitter" href="http://twitter.com/#!/PAN_Amsterdam" title="Find us on Twitter">' +
						'<img border="0" src="media/pan09media/icon-twitter.jpg" style="float: left; margin-right: 4px;" alt="Find us on Twitter">' +
					'</a>' +
					'<a _blank="" name="Find us on LinkedIn  target=" href="http://www.linkedin.com/groups/PAN-Amsterdam-4049947?home=&amp;gid=4049947&amp;trk=anet_ug_hm" title="Find us on LinkedIn">' +
						'<img border="0" src="media/pan09media/icon-linkedin.jpg" style="float: left; margin-right: 4px;" alt="Find us on Twitter">' +
					'</a>' +
				'</div>' + 
				
				'<div class="push"></div>' + 
   				'<div class="main-sponsor">' + 
   					'<div class="sponsor-label nl">Hoofdsponsor</div>' + 
   					'<div class="sponsor-label en">Main Sponsor</div>' + 
   					'<a href="http://www.vanlanschot.com"><img border="0" alt="Van Lanschot" src="media/pan09media/sponsor.png" /></a>' + 
   				'</div>' + 
			'</div>';
	
	if($j('td.leftPane > div.left-bottom').length == 0) {
		
		if($j('td.leftPane').length > 0)
			$j('td.leftPane').append(socialIcons);
			
		if($j('td.leftpane').length > 0)
			$j('td.leftpane').append(socialIcons);
	}
	
}

function initFloorPlan() {
	
	$j('img#image4').attr('src', 'http://www.pan.nl/media/pan09media/title_organisation.gif');
	$j('img#image5').attr('src', 'http://www.pan.nl/media/pan09media/title_floorplan_on.gif');
	
}

function initMainMenuHover() {
	
	$j("div.menucontainer div.nav a").each(function (index, domEle) {
		
		var defaultUrl = $j(domEle).children('img').attr('src');
		
		$j(domEle).hover(
		function(){
			
			if($j(domEle).children('img').attr('src').indexOf('_on') == -1) $j(domEle).children('img').attr('src', $j(domEle).children('img').attr('src').replace('.gif','_on.gif'));
			
		},
		function(){
			
			$j(domEle).children('img').attr('src', defaultUrl);
			
		});
		
	
	})
	
}

/*

var mb = '';
window.addEvent('domready', function () {
	mb = new multiBox("mb", {
		descClassName: "multiBoxDesc",
		useOverlay: true
	});
	$wsize = window.getSize();
	$j('mb1').setProperty('rel', 'width:' + ($wsize.x - 60) + ',height:' + ($wsize.y - 60));
});
window.addEvent('resize', function () {
	$wsize = window.getSize();
	$j('mb1').setProperty('rel', 'width:' + ($wsize.x - 60) + ',height:' + ($wsize.y - 60));
});*/

function initForm() {
	
	// Make labels as placeholder texts on  text-input-fields
	handleInputs();
	
	// Call upload function when file is selected
	$j('input#_ctl7_dlPressPreview__ctl0__ctl0_imageUpload').change(function(){
		
		$j('div#_ctl7_dlPressPreview__ctl0__ctl0_tblSimple img.placeholder-image').attr('src', 'media/pan09media/image-loader.gif').load(function(){
		
			__doPostBack('_ctl7$dlPressPreview$_ctl0$_ctl0$lnkUpload','')
		
		});
	})
	
	// Call upload function when file is selected (additional badges)
	$j('input#_ctl7_dlPressPreview__ctl0__ctl0_badgeUpload').change(function(){
		
		$j('div#_ctl7_dlPressPreview__ctl0__ctl0_tblBadgImage img.placeholder-image').attr('src', 'media/pan09media/image-loader.gif').load(function(){
			
			__doPostBack('_ctl7$dlPressPreview$_ctl0$_ctl0$lnkBadgeImageUpload','')
			
		});
	})
	
	// Remove placeholder image if there is an image
	$j('div.image-area div.image').each(function(index, domEle){
		
		if ($j(domEle).children('img.uploaded-image').length > 0) {
			$j(domEle).children('img.placeholder-image').remove();
			$j(domEle).parent().children('label.cabinet').children('span.upload-label').html('Change image');
		}
	})
	
	// Remove 'image' label
	$j('div.image-area').each(function(index, domEle){
		//document.title += $j(domEle).children('span.SubHeadError').text().length ;
		if ($j(domEle).children('span.SubHeadError').text().length > 0) {
			$j('span.upload-label', domEle).remove();
		}
	})
	
	
	// take the contents of the stinky table of additional badges and put it in a list
	removeAdditionalBadgeTable();
	
	handleMissingTranslations();
	
	
	
}

// Language menu
function handleLanguageMenu() {

	$j("div.navtop a.language").each(function (index, domEle) {

		var currentLg = getUrlVarsFrom(window.location.href, false)['lg'],
			newLg = getUrlVarsFrom($j(domEle).attr('href'), false)['lg'];
		if (currentLg != newLg) {

			if (currentLg === undefined) {
				if (getUrlVarsFrom(window.location.href, false)['tabid'] != undefined) {
					
					$j(domEle).bind('click', function () {
						window.location = window.location.href + '&lg=' + newLg;
						return false;
					})
				}
			} else {
				$j(domEle).bind('click', function () {
					window.location = window.location.href.replace('lg=' + currentLg, 'lg=' + newLg);
					return false;
				})
			}

		} else {
			$j(domEle).bind('click', function () {
				window.location = window.location.href;
				return false;
			})

		}

	})

}

function handleMissingTranslations() {
	
	if ($j('a#lang-nl').hasClass('active')) {
		
		$j('a#_ctl7_dlPressPreview__ctl0__ctl0_lnkAddBadge').html('Badge Toevoegen');
		
		$j('ul.additional-badges div.text-area a').html('Verwijderen');
		
		
		$j('a#_ctl7_dlPressPreview__ctl0__ctl0_lnkSave').html('Bewaar Registratie');
		
	}
	
}

// take the contents of the stinky table of additional badges and put it in a list
function removeAdditionalBadgeTable() {
	
	$j('table.grid tr.grid-item').each(function(index, domEle){
		
		$j('ul.additional-badges').append(
				'<li>'+
					'<div class="image-area">'+
						
					'</div>'+
					'<div class="text-area">'+
						'<span class="name"></span>'+
						'<hr />'+
						'<span class="job"></span>'+
						'<a class="remove" href="#">'+
							'Remove'+
						'</a>'+
					'</div>'+
					'<br class="push" />'+
				'</li>')
		
		
		
		$j('td.image a', domEle).appendTo('ul.additional-badges li:last div.image-area');
		
		//Resize image
		$j('ul.additional-badges li:last div.image-area img').attr('src', $j('ul.additional-badges li:last div.image-area img').attr('src').split('?')[0] + '?qlt=75&cell=48,53&cvt=jpeg')
		
		$j('ul.additional-badges li:last span.name').html($j(domEle).children('td.name').html());
		
		$j('ul.additional-badges li:last span.job').html($j(domEle).children('td.job').html());
		
		$j('ul.additional-badges li:last a.remove').attr('href', $j('td:last a', domEle).attr('href'));
		
	})
	
}

// Grant that the upload link calls the upload window
function initFileInput() {
	
	$j('div.call-upload').each(function(index,domEle){
		
		$j(domEle).children('input.file').css({
			
			'position': 'absolute',
			'cursor':'pointer',
			'opacity':'0'
			
		})
		
		
		$j(document).mousemove(function(e){
			
			if (
			(e.pageX > $j(domEle).offset().left &&
			e.pageX < $j(domEle).offset().left + $j(domEle).width() ) &&
			(e.pageY > $j(domEle).offset().top &&
			e.pageY < $j(domEle).offset().top + $j(domEle).height())
			) {
				
				$j(domEle).children('input.file').css({
				
					'left': e.pageX - $j(domEle).offset().left - $j(domEle).children('input.file').width()+3,
					'top' : e.pageY - $j(domEle).offset().top - ($j(domEle).children('input.file').height() / 2),
					'display': 'block'
					
				})
				
			} else {
				
				$j(domEle).children('input.file').css({
			
					'display': 'none'
			
				})
				
			}
			
		});
		
		
	
	})
	
}

// Make labels as placeholder texts on  text-input-fields
function handleInputs() {

	var checkChangeTimeout;
	//handle text input
	$j('div.text-input').each(function (index, domEle) {

		var target;
		if ($j(domEle).children('input').length > 0) {
			target = 'input';
		} else {
			target = 'textarea'
		}


		$j('label', domEle).attr('for', $j(target, domEle).attr('id'));


		if ($j(target, domEle).val() != '') {
			$j('label', domEle).css('display', 'none');
		}

		var onChange = function () {

				if (checkChangeTimeout != false) window.clearTimeout(checkChangeTimeout);
				checkChangeTimeout = window.setTimeout(onChange, 1000);
				

				if ($j(target, domEle).val() != '') {

					$j('label', domEle).css('display', 'none');
					if (checkChangeTimeout != false) window.clearTimeout(checkChangeTimeout);

				}

			}

		$j(target, domEle).focus(function () {
			if ($j(target, domEle).val() == '') {
				$j('label', domEle).animate({
					opacity: 0.25
				}, 250);


				if (checkChangeTimeout != false) window.clearTimeout(checkChangeTimeout);
				checkChangeTimeout = window.setTimeout(onChange, 1000);


			}
		});

		$j(target, domEle).blur(function () {
			if ($j(this).val() == '') {
				$j('label', domEle).css('display', 'block');
				$j('label', domEle).animate({
					opacity: 1
				}, 250);

			} else {
				$j('label', domEle).css('display', 'none');
			}


		});
		$j(target, domEle).keydown(function () {

			$j('label', domEle).css('display', 'none');

		});

		$j(target, domEle).change(function () {
			if ($j(this).val() == '') {
				$j('label', domEle).css('opacity', 1);

			} else {
				$j('label', domEle).css('display', 'none');
			}
		});


	});
}
