// topmenu behavior
$(function() {
	var intDuration = 300;

	// topanimanioner

	$('#topmenu0').mouseover(function(){
		$(this).stop().animate({backgroundPosition:"(145px 37px)"}, {duration: intDuration})
	}).mouseout(function(){
		$(this).stop().animate({backgroundPosition:"(145px 70px)"}, {duration: intDuration})
	});
	$('#topmenu1').mouseover(function(){
		$(this).stop().animate({backgroundPosition:"(-30px -195px)"}, {duration: intDuration})
	}).mouseout(function(){
		$(this).stop().animate({backgroundPosition:"(-30px 0)"}, {duration: intDuration})
	});
	$('#topmenu2').mouseover(function(){
		$(this).stop().animate({backgroundPosition:"(-30px -195px)"}, {duration: intDuration})
	}).mouseout(function(){
		$(this).stop().animate({backgroundPosition:"(-30px 0)"}, {duration: intDuration})
	});
	$('#topmenu3').mouseover(function(){
		$(this).stop().animate({backgroundPosition:"(-30px -195px)"}, {duration: intDuration})
	}).mouseout(function(){
		$(this).stop().animate({backgroundPosition:"(-30px 0)"}, {duration: intDuration})
	});

	$('#submenuContainer a').mouseover(function(){
		$(this).stop().animate({backgroundPosition:"(0 0)"}, {duration:200})
	}).mouseout(function(){
		$(this).stop().animate({backgroundPosition:"(0 -10px)"}, {duration:200})
	});
	
	// Checkbox containers
	$('.checkboxContainer').children('input[type=checkbox]').each(function fn() {
		if ($(this).attr('checked')) { $(this).parent().addClass('checkboxOn'); } else { $(this).parent().removeClass('checkboxOn'); }
	});
	$('.checkboxContainer').children('input[type=checkbox]').click( function fn() {
		if ($(this).attr('checked')) { $(this).parent().addClass('checkboxOn'); } else { $(this).parent().removeClass('checkboxOn'); }
	});

	// Opstil tooltips
	$("[title]").tooltip( {
		tip: '#tooltip'
	}); 
	$('#tooltip').bind('mouseover', function fn() {
		this.style.left = '-100000px';
	});

	// opstil kalendercontrols
	$('.datepicker').datepicker({
		changeMonth: true,
		changeYear: true,
		dayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],
		monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'], 
		buttonText: 'Vis kalender',
		closeText: 'luk',
		currentText: 'i dag',
		firstDay: 1,
		dateFormat: 'dd-mm-yy',
		yearRange: '-50:+10',
		duration: 'fast',
		showMonthAfterYear: false, 
		showOn: 'both',
		buttonImage: 'http://www.jobbank.dk/gfx/icons/icon_calendar.gif',
		buttonImageOnly: true,
		showButtonPanel: true,
		nextText: 'næste',
		prevText: 'forrige'
	});
	
})

var relationNames = new Object;
var relationColors = new Object;
relationNames['1'] = 'positiv';
relationNames['0'] = 'neutral';
relationNames['-1'] = 'irrelevant';
relationColors['1'] = 'Groen';
relationColors['0'] = 'Gul';
relationColors['-1'] = 'Roed';

function clearForm(myForm) {	
	$(':input',myForm) 
	 .not(':button, :submit, :reset, :hidden') 
	 .val('') 
	 .removeAttr('checked') 
	 .removeAttr('selected'); 
}

function flashMovie(movieName, windowObject) {
  if (document.getElementById(movieName)) { 
		return document.getElementById(movieName);
  }
	else if (windowObject[movieName]) {
		return windowObject[movieName];
	}
	else if (windowObject.getElementById(movieName)) {
		return windowObject.getElementById(movieName);
	}
	else {
		return false;
	}
}

function flashFeed(myVar,varType,windowObject) {
	var myMovie = flashMovie('MesseFlash',windowObject);
	if ( myMovie ) {
		// sæt flash
		switch (varType) {
			case 'udd':
				//alert(myVar);
				myMovie.sendToFlash(myVar+'');
				break;
			case 'virk':
				myMovie.sendVirkFlash(myVar+'');
				break;			
			case 'farve':
				myMovie.sendFarveFlash(myVar+'');
				myMovie.killFlashWait();
				break;
		}
	} else {
		// vent på flash load
		windowObject.status = 'Vent venligst...';
		setTimeout('flashFeed(\''+myVar+'\',\''+varType+'\','+windowObject+')',100);
	}
}

function killFlashWait() {
	var myMovie = flashMovie('MesseFlash',document);
	if ( myMovie ) {
		// Kill wait i flash-modulet
		myMovie.killFlashWait();
	}
}

function tooltip (myStr,myColor) {
	return overlib('<div class="tooltipContainer"">'+myStr+'</div>',ABOVE,CSSCLASS,CENTER,WIDTH,220,HEIGHT,120,FGCLASS,'tipFG'+myColor,BGCLASS,'tipBG'+myColor,DELAY,100);
}

function profileLink(profileID) {
	if (flashMovie('MesseFlash',document)) {
		flashFeed(profileID,'virk',document); 
	}
	else {
		document.location.href='/#/'+profileID;
	}
}

// flash error reporting
function flashAlert(strErr,intErrType) {
	if (intErrType == undefined) { intErrType = 2; }
	var strErrType = new Array('message','warning','error');
//	alert('Flash '+strErrType[intErrType]+': '+strErr);
}

function isDate(dateStr) {

	var datePat = /^(\d{1,2})(-)(\d{1,2})(-)(\d{4})$/;
	var matchArray = dateStr.match(datePat); // is the format ok?

	if (matchArray == null) {
	    return "Dato skal angives som dd-mm-åååå, f.eks. 23-09-2007.";
	}

	day = matchArray[1];
	month = matchArray[3]; // p@rse date into variables
	year = matchArray[5];

	if (day < 1 || day > 31) {
		return "Dag skal være mellem 1 og 31.";
	}

	if (month < 1 || month > 12) { // check month range
		return "Måned skal være mellem 1 og 12.";
	}

	if (year < 1900 || year > 2100) { // check year range
		return "Årstallet er ugyldig - angiv venligst et korrekt år.";
	}

	if ((month==4 || month==6 || month==9 || month==11) && day==31) {
		return "Denne måned har ikke 31 dage.";
	}

	if (month == 2) { // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day > 29 || (day==29 && !isleap)) {
		    return "Februar " + year + " har ikke " + day + " dage.";
		}
	}
	return ""; // date is valid
}

function mailLink(user,domain,linkTxt) {
	if (linkTxt=='') { linkTxt = user + "@" + domain }
	var myStr = "<a h" + "ref='mai" + "lto:" + user + "@" + domain + "'>" + linkTxt + "</" + "a>";
	document.write(myStr);
}

