var activeNumber = 4;

var heights = new Array();

var isOver = false;
var currentTimeOut = false;

function getElementOffsets(element) {
	var o = {
		height: element.offsetHeight,
		width: element.offsetWidth
	};
	
	var x = element.offsetLeft;
	var y = element.offsetTop;
	var p = element.offsetParent;
	
	while(p && (p.nodeType != 9)) {
		x += p.offsetLeft;
		y += p.offsetTop;
		p = p.offsetParent;
	}
	o.left = x;
	o.top = y;
	return o;
}
function resizeFlightInfo(bodyElement) {
	var offsets = getElementOffsets(bodyElement);
	var iframe = document.getElementById('flightinfo_iframe');
	iframe.style.height = (offsets.height + 40) + 'px';
}
function createActionAnimation(step,maxsteps,animationElement,oldHeight,newHeight,completeFunction) {
	var currentHeight = oldHeight - (((oldHeight - newHeight) / maxsteps) * step);
	
	animationElement.style.height =  currentHeight + 'px';
	
	if (step < maxsteps) {
		window.setTimeout(function() { createActionAnimation(step + 1,maxsteps,animationElement,oldHeight,newHeight,completeFunction); },15);
	}
	else {
		completeFunction();
	}
}
function grabSize(number) {
	var content = document.getElementById('movebox_content_' + number);
	var offsets = getElementOffsets(content);
	heights[number] = offsets.height;	
}
function hideBox(number) {
	var item = document.getElementById('movebox_item_' + number);
	var content = document.getElementById('movebox_content_' + number);

	content.style.height = '0px';
	content.style.overflow = 'hidden';
}
function rightBoxOver(element,overNumber) {
	isOver = overNumber;
	currentTimeOut = window.setTimeout(function() {
		rightBoxOverFinal(element,overNumber);
	},250);
}
function rightBoxOut(number) {
	isOver = false;
	window.clearTimeout(currentTimeOut);
}
function rightBoxOverFinal(element,overNumber) {
	if (overNumber == activeNumber || overNumber != isOver) {
		return;
	}
	var allboxes = document.getElementById('movebox_items');
	allboxes.style.height = '454px';
	var steps = 20;
	
	var oldActiveItem = document.getElementById('movebox_item_' + activeNumber);
	var newActiveItem = document.getElementById('movebox_item_' + overNumber);	
	var oldActiveHeadline = document.getElementById('movebox_headline_' + activeNumber);
	var newActiveHeadline = document.getElementById('movebox_headline_' + overNumber);
	var oldActiveContent = document.getElementById('movebox_content_' + activeNumber);
	var newActiveContent = document.getElementById('movebox_content_' + overNumber);
	
	var oldActiveContentOffsets = getElementOffsets(oldActiveContent);
	var newActiveContentOffsets = getElementOffsets(newActiveContent);
	
	// oldActiveItem.className = 'movebox_item';
	newActiveItem.className = 'movebox_item_selected';
	
	oldActiveContent.style.overflow = 'hidden';
	
	newActiveContent.style.height = '0px';
	newActiveContent.style.display = 'block';
	
	createActionAnimation(0,steps,oldActiveContent,oldActiveContentOffsets.height,0,function() { 
		oldActiveContent.style.display = 'none'; 
		oldActiveItem.className = 'movebox_item';
	});
	createActionAnimation(0,steps,newActiveContent,0,365,function() {
		newActiveContent.style.height = '365px';
		newActiveItem.className = 'movebox_item_selected';
	});
	
	activeNumber = overNumber;
}
/*****************************
*
*****************************/
Now = new Date();
NowDay = Now.getDate();
NowMonth = Now.getMonth();
NowYear = Now.getYear();
if (NowYear < 2000) NowYear += 1900; //for Netscape

//function for returning how many days there are in a month including leap years
function DaysInMonth(WhichMonth, WhichYear) {
	var DaysInMonth = 31;
	if (WhichMonth == 4 || WhichMonth == 6 || WhichMonth == 9 || WhichMonth == 11) DaysInMonth = 30;
	if (WhichMonth == 2 && (WhichYear/4) != Math.floor(WhichYear/4))	DaysInMonth = 28;
	if (WhichMonth == 2 && (WhichYear/4) == Math.floor(WhichYear/4))	DaysInMonth = 29;
	return DaysInMonth;
}

//function to change the available days in a months
function ChangeOptionDays(Which) {
  DaysObject = document.getElementById(Which + 'Day');
  MonthObject = document.getElementById(Which + 'Month');
  // YearObject = document.getElementById(Which + 'Year');

  Month = MonthObject[MonthObject.selectedIndex].value;

  // Year = YearObject[YearObject.selectedIndex].text;
  Year = 2007;
  YearText = MonthObject[MonthObject.selectedIndex].text;
  YearValue = YearText.substring(YearText.length - 4,YearText.length);
	// alert(YearValue);
	Year = YearValue;

  DaysForThisSelection = DaysInMonth(Month, Year);
  // alert(DaysForThisSelection);
  CurrentDaysInSelection = DaysObject.length;
  if (CurrentDaysInSelection > DaysForThisSelection)
  {
    for (i=0; i<(CurrentDaysInSelection-DaysForThisSelection); i++)
    {
      DaysObject.options[DaysObject.options.length - 1] = null
    }
  }
  if (DaysForThisSelection > CurrentDaysInSelection)
  {
    for (i=0; i<(DaysForThisSelection-CurrentDaysInSelection); i++)
    {
      NewOption = new Option(DaysObject.options.length + 1);
      if (document.all) {
      	DaysObject.add(NewOption);
      }
      else {
      	DaysObject.appendChild(NewOption);
      }
    }
  }
    if (DaysObject.selectedIndex < 0) DaysObject.selectedIndex == 0;
}
/**
* function to set options to today
*/
function SetToToday(Which) {
  DaysObject = document.getElementById(Which + 'Day');
  MonthObject = document.getElementById(Which + 'Month');
  
  // alert(Which + 'Month');
  // YearObject = document.getElementById(Which + 'Year');

var d = new Date();
var currentYear = d.getYear();

	// YearObject[0].selected = true;
	for(var i=0;i<MonthObject.options.length;i++) {
		var selectText = MonthObject.options[i].text;
		var year = selectText.substring(selectText.length - 4,selectText.length);
		
		if (MonthObject.options[i].value == i && year == currentYear) {
			// alert(i);
			MonthObject.options[i].selected = true;
			break;
		}
	}

  ChangeOptionDays(Which);

  DaysObject[NowDay-1].selected = true;
}
//function to write option years plus x
function WriteYearOptions(YearsAhead) {
  line = "";
  for (i=0; i<YearsAhead; i++) {
    line += "<OPTION>";
    line += NowYear + i;
  }
  return line;
}
/*****************************
* Search
*****************************/

var searchRemove = false;

function showSearch(sourceElement) {
	var offsets = getElementOffsets(sourceElement);
	var searchHolder = document.getElementById('searchholder');
	var searchInput = document.getElementById('searchinput');
	
	searchHolder.style.position = 'absolute';
	searchHolder.style.top = (offsets.top + 20) + 'px';
	searchHolder.style.left = (offsets.left - + offsets.width - 50) + 'px';
	
	searchHolder.style.border = '2px solid #ffdb12';
	searchHolder.style.margin = '0px';
	
	searchHolder.style.display = 'block';
	
	clearTimeout(searchRemove);
	
	searchInput.focus();
	
	searchInput.onblur = function() {
		searchRemove = setTimeout(function() {
			searchHolder.style.display = 'none';
		},200);
	}
	setTimeout(function() { animateBorderSarchHolder(true,0); },200);
}
function animateBorderSarchHolder(removeBorder,step) {
	if (step < 3) {
		var searchHolder = document.getElementById('searchholder');
		searchHolder.style.border = (removeBorder ? "0" : "2") + 'px solid #ffdb12';
		if (removeBorder) {
			searchHolder.style.margin = '2px';
		}
		else {
			searchHolder.style.margin = '0px';
		}
		setTimeout(function() { animateBorderSarchHolder(!removeBorder,step + 1); },200);
	}
}
/*****************************
* Routemap
*****************************/
var oldAirport1image = false;
var oldAirport2image = false;

/**
*
*/
function selectAirport(airport1,airport2) {
	var airport1select = document.getElementById('form_airport1');
	if (airport1select) {
		for(var i=0;i<airport1select.options.length;i++) {
			if (airport1select.options[i].value == airport1.toUpperCase()) {
				airport1select.options[i].selected = true;
			}
		}
	}
	var airport2select = document.getElementById('form_airport2');
	if (airport2select) {
		for(var i=0;i<airport2select.options.length;i++) {
			if (airport2select.options[i].value == airport2.toUpperCase()) {
				airport2select.options[i].selected = true;
			}
		}
	}
	
	document.getElementById('headlinereadmore').style.display = 'block';
	document.getElementById('please_select').style.display = 'none';
	
	
	var airport1image = document.getElementById('smallimage_' + airport1.toUpperCase());
	var airport2image = document.getElementById('smallimage_' + airport2.toUpperCase());
	
	if (oldAirport1image) {
		oldAirport1image.style.display = 'none';
	}
	if (oldAirport2image) {
		oldAirport2image.style.display = 'none';
	}
	
	airport1image.style.display = 'block';
	airport2image.style.display = 'block';
	
	oldAirport1image = airport1image;
	oldAirport2image = airport2image;
	
	
	animateAirport(true,0);
}
function animateAirport(removeBorder,step) {
	if (step < 10) {
		var airport1select = document.getElementById('form_airport1');
		if (airport1select) {
			airport1select.style.backgroundColor = (removeBorder ? "#ffdb12" : "#FFFFFF");
			airport1select.style.color = (removeBorder ? "#000000" : "");
		}
		
		var airport2select = document.getElementById('form_airport2');
		if (airport2select) {
			airport2select.style.backgroundColor = (removeBorder ? "#ffdb12" : "#FFFFFF");
			airport2select.style.color = (removeBorder ? "#000000" : "");
		}
		
		setTimeout(function() { animateAirport(!removeBorder,step + 1); },300);
	}
}
/*****************************
* Datter
*****************************/
function overDaughter(element,companyName) {
	element.className = 'daughterbuttonOver';
	var daughterbox = document.getElementById('daughterbox');
	daughterbox.style.backgroundImage = 'url("/files/design/images/datter3/datterselskaber_bg_' + companyName + '.jpg")';
}
function outDaughter(element) {
	element.className = 'daughterbutton';
	var daughterbox = document.getElementById('daughterbox');
	daughterbox.style.backgroundImage = 'url("/files/design/images/datter3/datterselskaber_bg_nohover.jpg")';
}