// The problem is that JavaScript 1.0
// does not provide a Char to Numeric value conversion
// Thus we define a map.
// Because there are 64K UniCode characters, this map does not cover all characters.

rot13map = false;

function rot13init()
{
  var map = new Array();
  var s   = "abcdefghijklmnopqrstuvwxyz";
  
  for (i=0; i<s.length; i++)
    map[s.charAt(i)]			= s.charAt((i+13)%26);
  for (i=0; i<s.length; i++)
    map[s.charAt(i).toUpperCase()]	= s.charAt((i+13)%26).toUpperCase();
  return map;
}
 
function rot13(a)
{
  if (!rot13map)
    rot13map=rot13init();
  s = "";
  for (i=0; i<a.length; i++)
    {
      var b = a.charAt(i);
 
      s	+= (b>='A' && b<='Z' || b>='a' && b<='z' ? rot13map[b] : b);
    }
  return s;
}
function getGrandElementOffsets(e) {
	var o = {
		height: e.offsetHeight,
		width: e.offsetWidth
	};
	
	var x = e.offsetLeft;
	var y = e.offsetTop;
	var p = e.offsetParent;
	
	while(p && (p.nodeType != 9)) {
		x += p.offsetLeft;
		y += p.offsetTop;
		p = p.offsetParent;
	}
	o.left = x;
	o.top = y;
	return o;
}
function closeChoiceDiv() {
	var choiceDiv = document.getElementById('choicediv');
	if (choiceDiv) {
		choiceDiv.style.display = 'none';
	}
}
function clickedBook() {
	var bookFrameLink = document.getElementById('bookFrameLink');
	var bookFrame = document.getElementById('bookFrame');
	var movieList = document.getElementById('movieList_div');
	
	if (bookFrameLink) {
		bookFrameLink.style.display = 'block';
	}
	if (bookFrame) {
		bookFrame.style.display = 'block';
		bookFrame.style.marginBottom = '100px';
	}
	if (movieList) {
		movieList.style.display = 'none';
	}	
	
	
	closeChoiceDiv();

	scroll(0,0);
}
/**
*
*/
function showBuyOrRes(linkElement,buyLink,resLink,bothLinks) {
	var rightBox = false;
	
	if (!resLink && !buyLink) {
		var links = bothLinks.split('|');
		
		nothing = links[0];
		buyLink = rot13(links[1]);
		resLink = rot13(links[2]);
		
		rightBox = true;
	}
	if (!resLink) {
		document.location.href = buyLink;
	}
	else if (!buyLink) {
		document.location.href = resLink;
	}
	else {	
		var choiceDiv = document.getElementById('choicediv');
		if (!choiceDiv) {
			choiceDiv = document.createElement('DIV');
			choiceDiv.id = 'choicediv';
			
			document.body.appendChild(choiceDiv);
		}
		var linkOffsets = getGrandElementOffsets(linkElement);
		
		if (rightBox) {
			choiceDiv.style.top = (linkOffsets.top + 30) + 'px';
			choiceDiv.style.left = (linkOffsets.left - 150) + 'px';
		}
		else {
			choiceDiv.style.top = (linkOffsets.top + 20) + 'px';
			choiceDiv.style.left = linkOffsets.left + 'px';
		}
		choiceDiv.style.display = 'block';
		
		var bookFrame = document.getElementById('bookFrame');
		if (bookFrame) {
			choiceDiv.innerHTML = '<a href="#" onclick="closeChoiceDiv();return false;" style="float:right;">Luk denne boks</a><br><br><div id="choicedivHeadline">Køb eller bestil</div>Før du kan gå videre skal du bestemme om du ønsker at<br><br><a href="' + buyLink + '" onclick=\"clickedBook();\" target="bookFrame">købe billetterne online</a><br>eller<br><a href="' + resLink + '" target="bookFrame" onclick=\"clickedBook();\">reservere dine billetter og betale i biografen</a>';
		}
		else {
			choiceDiv.innerHTML = '<a href="#" onclick="closeChoiceDiv();return false;" style="float:right;">Luk denne boks</a><br><br><div id="choicedivHeadline">Køb eller bestil</div>Før du kan gå videre skal du bestemme om du ønsker at<br><br><a href="' + buyLink + '">købe billetterne online</a><br>eller<br><a href="' + resLink + '">reservere dine billetter og betale i biografen</a>';
		}
	}
}
/**
*
*/
function movieSelected(movieName,movieID) {
	moviewhenselect = document.getElementById('moviewhenselect_' + movieID);

	for(var i=0;i<movies.length;i++) {
		document.getElementById('moviewhenselect_' + movies[i]).style.display = 'none';
	}
	if (moviewhenselect) {
		moviewhenselect.style.display = 'block';
	}
}
/**
*
*/
function movieTimeSelected(datename,datevalue) {
	document.location.href = 'http://www.secure.ebillet.dk/bpw/den/listarr.asp?orgno=108&sysno=3&movieno=' + datevalue + '&catno=2&grpno=-1&typno=-1&dateno=0';
}
/**
*
*/
function movieSelectTab(tabElement,movieID,selectedTab,trailerID) {
	var tab1 = document.getElementById('moviemenu_info_' + movieID);
	var tab2 = document.getElementById('moviemenu_billetter_' + movieID);
	var tab3 = document.getElementById('moviemenu_credits_' + movieID);
	var tab4 = document.getElementById('moviemenu_trailer_' + movieID);
	
	var content1 = document.getElementById('moviefield_info_' + movieID);
	var content2 = document.getElementById('moviefield_billetter_' + movieID);
	var content3 = document.getElementById('moviefield_credits_' + movieID);
	var content4 = document.getElementById('moviefield_trailer_' + movieID);

	tab1.className = 'moviemenu';
	tab2.className = 'moviemenu';
	tab3.className = 'moviemenu';
	if (tab4) {
		tab4.className = 'moviemenu';
	}
	
	content1.style.display = 'none';
	content2.style.display = 'none';
	content3.style.display = 'none';
	if (content4) {
		content4.style.display = 'none';
	}
	
	var tab_selected = document.getElementById('moviemenu_' + selectedTab + '_' + movieID);
	var content_selected = document.getElementById('moviefield_' + selectedTab + '_' + movieID);
	
	tab_selected.className = 'moviemenu moviemenuselected';
	content_selected.style.display = 'block';
	
	/*
	var trailerFields = $(".moviefield_trailer");
	for(var i=0;i<trailerFields.length;i++) {
		trailerFields[i].innerHTML = '';
	}
	*/
	if (content4) {
		if (tab_selected == tab4) {
			content4.innerHTML = '<iframe src="/files/design/php/trailer.php?movieid=' + movieID + '&trailerid=' + trailerID + '" frameborder="0" style="width:480px;height:290px;"></iframe>';
		}
		else {
			content4.innerHTML = '';
		}
	}
}
var timeInfoElement = false;

/**
*
*/
function showTimeInfo(linkElement,locationName) {
	if (!timeInfoElement) {
		timeInfoElement = document.createElement('DIV');
		timeInfoElement.style.padding = '8px';
		timeInfoElement.style.backgroundColor = '#000000';
		timeInfoElement.style.border = '1px solid #999999';
		timeInfoElement.style.color = '#FFFFFF';
		timeInfoElement.style.position = 'absolute';
		document.body.appendChild(timeInfoElement);
	}
	timeInfoElement.style.display = 'block';
	timeInfoElement.innerHTML = locationName;
	
	var linkOffsets = getGrandElementOffsets(linkElement);
	
	timeInfoElement.style.top = (linkOffsets.top + 20) + 'px';
	timeInfoElement.style.left = (linkOffsets.left) + 'px';
	
}
function hideTimeInfo() {
	timeInfoElement.style.display = 'none';
}
