var searchResultFrame;
var loadingImageDiv = false;
var loadID;
var timePassedd = false;

var t;
var count = 0;
function bottom(targetYPos) {
	var y = document[getDocElName()].scrollTop;
	if (count > 10) {
		count = 0;
		return;
	}
	if (y < targetYPos) {
		window.scrollBy(0,10);
		count++;
		t=setTimeout('bottom('+targetYPos+')',10);
	}
	else {
		count = 0;
		clearTimeout(t);
	}
	return false;
}
function scrollDown(targetYPos) {
	var y = document[getDocElName()].scrollTop;
	if (count > 100) {
		count = 0;
		return;
	}
	if (y < targetYPos) {
		window.scrollBy(0,10);
		count++;
		t=setTimeout('scrollDown('+targetYPos+')',10);
	}
	else {
		count = 0;
		clearTimeout(t);
	}
	return false;
}
function getDocElName(){
	if(document.compatMode && document.compatMode == "CSS1Compat"){
		return "documentElement";
	}
	else{
		return "body";
	}
}
function getOffsets(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 showLoadingBar() {
	var iframe = document.getElementById('annonceiframe');
	var iframeOffset = getOffsets(iframe);
	if (!loadingImageDiv) {
		loadingImageDiv = document.createElement('DIV');
		var img = document.createElement('IMG');
		img.src = '/files/design/images/loading.gif';
		loadingImageDiv.style.position = 'absolute';
		loadingImageDiv.appendChild(img);
		loadingImageDiv.className = 'loaddiv';
		document.body.appendChild(loadingImageDiv);
	}
	loadingImageDiv.style.display = 'block';
	loadingImageDiv.style.top = (iframeOffset.top - 25) + 'px';
	loadingImageDiv.style.left = (iframeOffset.left + 10) + 'px';
	
	clearTimeout(loadID);

	timePassed = false;

	loadID = setTimeout(function() {
		timePassed = true;
	},500);
}
function stopLoadingBar() {
	if (timePassed) {
		loadingImageDiv.style.display = 'none';
	}
	else {
		setTimeout(function() {
			loadingImageDiv.style.display = 'none';
		},300);
	}
}
function resizeIframe(bodyElement) {
	var iframe = document.getElementById('annonceiframe');
	var bodyOffset = getOffsets(bodyElement);
	var newHeight = bodyOffset.height;
	if (newHeight < 400) {
		newHeight = 400;
	}
	iframe.style.height = (newHeight + 35) + 'px';
}
function showSearchBox(searchBox,value) {
	var offsets;
	
	if (!searchResultFrame) {
		searchResultFrame = document.createElement('IFRAME');
		searchResultFrame.className = 'searchResultFrame';
		searchResultFrame.frameBorder = '0';
		document.body.appendChild(searchResultFrame);
		
		offsets = getOffsets(searchBox);
		
		searchResultFrame.style.top = (offsets.top + 30) + 'px';
		searchResultFrame.style.left = (offsets.left + 0) + 'px';
	}
	searchResultFrame.style.display = 'block';
	searchResultFrame.src = '/web/searchiframe.php?search=' + value;
}
function hideSearchBox() {
	if (searchResultFrame) {
		searchResultFrame.style.display = 'none';
	}
}

function showImageUploadForm(number,parentImage) {
	var offsets = getOffsets(parentImage);
	
	if (window.openUploadForm) {
		window.openUploadForm.style.display = 'none';
	}
	
	var uploadForm = document.getElementById('image_input_' + number);
	uploadForm.style.position = 'absolute';
	uploadForm.style.display = 'block';

	uploadForm.style.top = (offsets.top + 30) + 'px';
	uploadForm.style.left = (offsets.left + offsets.width + 10) + 'px';
	
	window.openUploadForm = uploadForm;
}
function hideImageUploadForm(number) {
	var uploadForm = document.getElementById('image_input_' + number);
	uploadForm.style.display = 'none';
}
/**
*
*/
function calculateChars(element,maxChars,charsLeftElementID,resultFunction) {
	var charsLeftElement = document.getElementById(charsLeftElementID);
	var text = element.value;
	var numberOfChars = text.length;
	var charsLeft = maxChars - numberOfChars;
	charsLeftElement.innerHTML = numberOfChars;
	
	var submitButton = document.getElementById('submitbutton');
	
	if (charsLeft < 0) {
		submitButton.disabled = true;
	}
	else {
		submitButton.disabled = false;
	}
	eval(resultFunction + '(element,' + numberOfChars + ');');
}
function calculateDescription(element,numberOfChars) {
	var level1 = document.getElementById('description_level1');
	var level2 = document.getElementById('description_level2');
	
	var radio_level1 = document.getElementById('description_radio_1');
	var radio_level2 = document.getElementById('description_radio_2');

	radio_level1.checked = false;
	radio_level2.checked = false;

	if (numberOfChars <= 500) {
		level1.className = 'chosenLevel';
		level2.className = 'nonchosenLevel';
		radio_level1.checked = true;
	}
	/*
	else if (numberOfChars > 500 && numberOfChars < 1001) {
		level1.className = 'nonchosenLevel';
		level2.className = 'chosenLevel';
		radio_level2.checked = true;
	}
	*/
	else {
		element.value = element.value.substring(0,2000);
		level1.className = 'nonchosenLevel';
		level2.className = 'chosenLevel';
		radio_level2.checked = true;
	}
	calculatePrice2();
}
/**
*
*/
function calculateWords(element,maxWords,wordsLeftElementID) {
	var wordsLeftElement = document.getElementById(wordsLeftElementID);
	var text = element.value;
	
	text = text.replace(/\ /g,' ');
	text = text.replace(/\+/g,' ');
	text = text.replace(/\(/g,' ');
	text = text.replace(/\)/g,' ');
	text = text.replace(/\//g,' ');
	text = text.replace(/\#/g,' ');
	text = text.replace(/\\/g,' ');
	text = text.replace(/\|/g,' ');
	text = text.replace(/\@/g,' ');
	text = text.replace(/\,/g,' ');
	text = text.replace(/\./g,' ');
	text = text.replace(/\n/g,' ');

	var numberOfWords = text.split(" ").length;
	if (numberOfWords == 0 && text.length > 0) {
		numberOfWords = 1;
	}
	var wordsLeft = maxWords - numberOfWords;
	if (text.length == 0) {
		wordsLeftElement.innerHTML = '0';
	}
	else {
		wordsLeftElement.innerHTML = numberOfWords;
	}
	
	var submitButton = document.getElementById('submitbutton');
	
	if (wordsLeft < 0) {
		submitButton.disabled = true;
	}
	else {
		submitButton.disabled = false;
	}

	var level1 = document.getElementById('searchword_level1');
	var level2 = document.getElementById('searchword_level2');
	var level3 = document.getElementById('searchword_level3');
	var level4 = document.getElementById('searchword_level4');
	
	var level1_radio = document.getElementById('searchwords_radio_1');
	var level2_radio = document.getElementById('searchwords_radio_2');
	var level3_radio = document.getElementById('searchwords_radio_3');
	var level4_radio = document.getElementById('searchwords_radio_4');
	
	level1.className = 'nonchosenLavel';
	level2.className = 'nonchosenLavel';
	level3.className = 'nonchosenLavel';
	level4.className = 'nonchosenLavel';
	
	if (numberOfWords <= 3) {
		level1.className = 'chosenLevel';
		level1_radio.checked = true;
	}
	else if (numberOfWords <= 8) {
		level2.className = 'chosenLevel';
		level2_radio.checked = true;
	}
	else if (numberOfWords <= 14) {
		level3.className = 'chosenLevel';
		level3_radio.checked = true;
	}
	else if (numberOfWords >= 15) {
		level4.className = 'chosenLevel';
		level4_radio.checked = true;
	}
	if (numberOfWords > 20) {
		document.getElementById('maxlimit_search').style.display = 'block';
	}
	else {
		document.getElementById('maxlimit_search').style.display = 'none';
	}
	calculatePrice2();
}
var directLinkPrice = 0;
function calculatePrice2() {
	var totalprice = document.getElementById('totalprice');

	var level1_radio = document.getElementById('searchwords_radio_1');
	var level2_radio = document.getElementById('searchwords_radio_2');
	var level3_radio = document.getElementById('searchwords_radio_3');
	var level4_radio = document.getElementById('searchwords_radio_4');
	
	var radio_level1 = document.getElementById('description_radio_1');
	var radio_level2 = document.getElementById('description_radio_2');
	
	if (typeof startPrice != 'undefined') {
		var totalprice_count = startPrice;
		
		if (level1_radio.checked) {
			totalprice_count += search_level1_js;
		}
		if (level2_radio.checked) {
			totalprice_count += search_level2_js;
		}
		if (level3_radio.checked) {
			totalprice_count += search_level3_js;
		}
		if (level4_radio.checked) {
			totalprice_count += search_level4_js;
		}
		if (radio_level2.checked) {
			totalprice_count += price_extra_description_js;
		}
		totalprice_count += directLinkPrice;
		
		totalprice.innerHTML = totalprice_count + ',-';
	}
}
function changeAdd(element) {
	if (element.className == 'searchadd_normal') {
		element.className = 'searchadd_over';
	}
	else if (element.className == 'topadd_normal') {
		element.className = 'topadd_over';
	}
}
function changeAddBack(element) {
	if (element.className == 'searchadd_over') {
		element.className = 'searchadd_normal';
	}
	else if (element.className == 'topadd_over') {
		element.className = 'topadd_normal';
	}
}
function addIcon(radio,extra) {
	var value = radio.value;
	
	if (!extra) {
		var iconholder = document.getElementById('iconholder');
		var icon = document.getElementById('ad_icon');
		
		if (value == '') {
			gotIcon = false;
			iconholder.style.display = 'none';
		}
		else {
			gotIcon = true;
			iconholder.style.display = 'block';
			icon.src = '/files/design/images/ikoner/ikon_' + value + '.gif';
		}
	}
	else {
		if (value == '') {
			gotIcon = false;
		}
		else {
			gotIcon = true;
		}
	}
	calculatePrice();
}
function changeChoices(checkBox) {
	var name = checkBox.name;
	var value = checkBox.value;
	
	if (name == 'show_company_logo') {
		var logo = document.getElementById('logoinner');
		if (!checkBox.checked) {
			gotCompanyLogo = true;
			if (logo) {
				logo.style.display = 'block';
			}
		}
		else {
			gotCompanyLogo = false;
			if (logo) {
				logo.style.display = 'none';
			}
		}
	}
	else if (name == 'show_extra_photos') {
		if (!checkBox.checked) {
			gotExtraPhotos = true;
		}
		else {
			gotExtraPhotos = false;
		}
	}
	else if (name == 'link_to_homepage') {
		if (!checkBox.checked) {
			gotLink = true;
		}
		else {
			gotLink = false;
		}
	}
	else if (name == 'special') {
		var ad_surrounder = document.getElementById('ad_surrounder');
		if (value == 'topadd' && !checkBox.checked) {
			adType = 'topadd';
			if (ad_surrounder) {
				ad_surrounder.className = 'topadd_normal';
			}
		}
		else if (!checkBox.checked) {
			adType = 'normal';
			if (ad_surrounder) {
				ad_surrounder.className = 'searchadd_normal';
			}
		}
	}
	else if (name == 'super_add') {
		
	}
	else if (name == 'more_searchwords') {
		if (!checkBox.checked) {
			gotMoreSearchwords = true;
		}
		else {
			gotMoreSearchwords = false;
		}
	}
	else if (name == 'extra_description') {
		if (!checkBox.checked) {
			gotExtraDescription = true;
		}
		else {
			gotExtraDescription = false;
		}
	}
	calculatePrice();
}
function calculatePrice() {
	var amount = startAmount;
	
	if (gotIcon) {
		amount += prices['iconprice'];
	}
	if (adType == 'topadd') {
		amount += prices['topadd'];
	}
	if (gotCompanyLogo) {
		amount += prices['company_logo'];
	}
	if (gotExtraPhotos) {
		amount += prices['extra_photos'];
	}
	if (gotLink) {
		amount += prices['link_to_homepage'];
	}
	if (gotMoreSearchwords) {
		amount += prices['more_searchwords'];
	}
	if (gotExtraDescription) {
		amount += prices['extra_description'];
	}
	var amount1 = document.getElementById('pricediv1amount');
	var amount2 = document.getElementById('pricediv2amount');
	
	amount1.innerHTML = amount;
	amount2.innerHTML = amount;
}
function selectListView() {
	document.getElementById('listviewinput').value = 'true';
	document.getElementById('button_listview').style.display = 'none';
	document.getElementById('button_gallery').style.display = 'block';
}
function selectGalleryView() {
	document.getElementById('listviewinput').value = 'false';
	document.getElementById('button_listview').style.display = 'block';
	document.getElementById('button_gallery').style.display = 'none';
}
function checkDirectLinkInput(field) {
	if (field.value && field.value != 'http://') {
		// document.getElementById('direct_link_price').style.visibility = 'visible';
		directLinkPrice = price_price_directlink_js;
	}
	else {
		// document.getElementById('direct_link_price').style.visibility = 'hidden';
		directLinkPrice = 0;
	}
	calculatePrice2();
}
/**
*
*/
function hideMultipleSelect(id) {
	var box = document.getElementById('multipleselect_' + id);
	box.style.display = 'none';
}
/**
*
*/
function showMultipleSelect(id) {
	var box = document.getElementById('multipleselect_' + id);
	var link = document.getElementById('multipleselect_link_' + id);
	
	var linkOffsets = getOffsets(link);
	
	box.style.width = '300px';
	box.style.padding = '5px';
	box.style.backgroundColor = '#339933';
	box.style.border = '2px solid #FFFFFF';
	box.style.position = 'absolute';
	box.style.top = linkOffsets.top + 'px';
	box.style.left = (linkOffsets.left + 110) + 'px';
	box.style.display = 'block';
}

var calendarMessageBox = false;

/**
*
*/
function showCalendarMessage(element) {
	if (!calendarMessageBox) {
		calendarMessageBox = document.createElement('DIV');
		calendarMessageBox.style.position = 'absolute';
		calendarMessageBox.style.backgroundColor = '#009900';
		calendarMessageBox.style.color = '#FFFFFF';
		calendarMessageBox.style.padding = '5px';
		calendarMessageBox.style.border = '2px solid #DDDDDD';
		calendarMessageBox.innerHTML = 'Klik på ikonet for at vælge dato. Klik på feltet for at nulstille.';
		document.body.appendChild(calendarMessageBox);
	}
	var offsets = getOffsets(element);
	calendarMessageBox.style.display = 'block';
	calendarMessageBox.style.top = (offsets.top + 30)+ 'px';
	calendarMessageBox.style.left = offsets.left + 'px';
}
/**
*
*/
function hideCalendarMessage(element) {
	calendarMessageBox.style.display = 'none';
}