//søgeresultat
var iSearchResultno = 0
function SearchProduct(iKeyword,iKey) {
	if (iKeyword.length > 1) {
		if (iKey == 38 || iKey == 40 || (iKey == 13 && iSearchResultno != 0)) {		
			var iCountResults = 0;
			if ($("SearchResultCount")) iCountResults = $("SearchResultCount").value;
		
			//Hvis enter, sendes brugere videre til den valgte vare
			if (iKey == 13) {
				if ($("SearchResultListID" + iSearchResultno)) SearchGoTo($("SearchResultListID" + iSearchResultno).value);
			}
			//hvis pil-op eller ned
			if (iKey == 38 || iKey == 40) {
				if ($("SearchResultListNo" + iSearchResultno)) setClass($("SearchResultListNo" + iSearchResultno),'SearchResultList');
				if (iKey == 40) var iAdd = 1;	
				if (iKey == 38) var iAdd = -1;
				iSearchResultno = iSearchResultno +iAdd;
				if ($("SearchResultListNo" + iSearchResultno)) setClass($("SearchResultListNo" + iSearchResultno),'SearchResultListOver');
				else if (iSearchResultno != 0 && iSearchResultno != iCountResults) iSearchResultno = iSearchResultno -iAdd;
			}
		} else {
			iSearchResultno = 0;
			var url="/includes/ajax/product_search.asp?keyword=" + iKeyword;
			var SearchRequest = new Request({method: 'get', url: url,
										
				onRequest: function(){
					//indsæt loader
					if (!$('SearchResult')) {
						var divContainer = new Element('div').setProperty('id','SearchResult');
						$('HeaderSearch').adopt(divContainer);
					} else $('SearchResult').fade(1);
					$('SearchResult').set('align', 'center');
					$('SearchResult').set('html', '<img src=\'/images/design/black_gray/ajax_loader30px.gif\'>');
				},
		
				onSuccess: function(responseText){
					//indsæt resultat
					$('SearchResult').set('align', '');
					$('SearchResult').set('html', responseText);
				}, 
				
				onFailure: function(e){
					//Ved fejl 
					$('SearchResult').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
					var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
					var ReportFail = new Request({method: 'get', url: url});
					ReportFail.send();
					//$('SearchResult').set('html', e.responseText);
				}
			});
			SearchRequest.send();
		}
	} else {
		if ($('SearchResult')) $('SearchResult').fade(0);
	}
}

function SearchMouseOver(iNo) {
	if ($("SearchResultListNo" + iSearchResultno)) setClass($("SearchResultListNo" + iSearchResultno),'SearchResultList')
	iSearchResultno = iNo
}

function SearchGoTo(iUrl) {
	window.location = '/' + iUrl;
}

function ShowSubscriptionInfo(iAbonnementID,iTab) {
	var url="/includes/ajax/subscription_info.asp?abonnement_id=" + iAbonnementID + "&tab=" + iTab;

	var myRequest = new Request({method: 'get', url: url,
								
		onRequest: function(){
			//hvis første
			if (!$('DropInContainer')) CreateDropIn(450,"info.png");
		},

		onSuccess: function(responseText){
			arrContent = responseText.split('##');
			$('DropInHeadline').set('html', arrContent[0]);
			$('DropInContent').set('html', arrContent[1]);
		}, 
		
		onFailure: function(e){
			//$('DropInContent').set('html', e.responseText);
			$('DropInContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	myRequest.send();
} 
function SubscriptionChoice(iStep) {
	var FailGoToStep = 0
	if (iStep == undefined) iStep = 0
	
	if (iStep == 0) {
		var iProductID = document.SubscriptionForm.vare_id.value;
		var iSubscription = document.SubscriptionForm.subscription;
		if (!iSubscription) {
			var iAbonnementID = undefined;
		}
		else if (iSubscription.length == undefined) var iAbonnementID = iSubscription.value;
		else {
			for (i=0; i<iSubscription.length; i++) {
				if (iSubscription[i].checked == true) var iAbonnementID = iSubscription[i].value;
			}
		}
		if(iAbonnementID != undefined) {
			var url="/includes/ajax/subscription_choice.asp?abonnement_id=" + iAbonnementID + "&vare_id=" + iProductID;
		
			var RequestBox = new Request({method: 'get', url: url,
										
				onRequest: function(){
					//hvis DropInContainer ikke findes, oprettes den
					if (!$('DropInContainer')) CreateDropIn(550,"write.png");
				},
		
				onSuccess: function(responseText){
					arrContent = responseText.split('##');
					$('DropInHeadline').set('html', arrContent[0]);
					$('DropInContent').set('html', arrContent[1]);
					//skjul andre steps
					showHideSteps(1);
					
					//skjul tekster som udgangspunkt
					if ($('SubscriptionNew')) var myVerticalSlide1 = new Fx.Slide('SubscriptionNew').hide(); 
					if ($('SubscriptionExtension')) var myVerticalSlide1 = new Fx.Slide('SubscriptionExtension').hide();
					if ($('SubscriptionBTN')) var myVerticalSlide1 = new Fx.Slide('SubscriptionBTN').hide(); 
					if ($('SubscriptionBTNAccept')) var myVerticalSlide1 = new Fx.Slide('SubscriptionBTNAccept').hide();
					if ($('NumberportingText')) var myVerticalSlide1 = new Fx.Slide('NumberportingText').hide(); 
					if ($('NumberportingFields')) var myVerticalSlide1 = new Fx.Slide('NumberportingFields').hide(); 
					if ($('SubscriptionExtensionFields')) $('SubscriptionExtensionFields').setStyle('display', 'none');
					
					GetSubscriptionServices(iAbonnementID);
					ComfirmExit = true;
				}, 
				
				onFailure: function(e){
					//$('DropInContent').set('html', e.responseText);
					$('DropInContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
					var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
					var ReportFail = new Request({method: 'get', url: url});
					ReportFail.send();
					
				}
			});
			RequestBox.send();
		}
	} else {
		var ValidateCheck = "OK";
		if ($('subscription_f') && ($('SubscriptionExtensionFields').style.display == "" || iStep > 2)) {
			FailGoToStep = 2
			if ($('subscription_f').checked) {
				if ($('extension_number').value.length < 8) {
					$('extension_number').addClass('inputAlert');
					ValidateCheck = "FAIL";
				}
				if ($('extension_icc')) {
					if ($('extension_icc').value.length < 8) {
						$('extension_icc').addClass('inputAlert');
						ValidateCheck = "FAIL";
					}
				}
				if ($('extension_accept1')) {
					if (!$('extension_accept1').checked) {
						$('extension_accept1_text').addClass('inputAlertText');
						ValidateCheck = "FAIL";
					}
				}
			}
		}
		if ($('numberporting_y')) {
			if ($('numberporting_y').checked) {
				if ($('numberporting_number').value.length < 8) {
					$('numberporting_number').addClass('inputAlert');
					ValidateCheck = "FAIL";
				}
				if ($('numberporting_operator').value == "") {
					$('numberporting_operator').addClass('inputAlert');
					ValidateCheck = "FAIL";
				}
				if ($('numberporting_icc').value.length < 8) {
					$('numberporting_icc').addClass('inputAlert');
					ValidateCheck = "FAIL";
				}
				if ($('numberporting_accept1')) {
					if (!$('numberporting_accept1').checked) {
						$('numberporting_accept1_text').addClass('inputAlertText');
						ValidateCheck = "FAIL";
					}
				}
				if ($('numberporting_accept2')) {
					if (!$('numberporting_accept2').checked) {
						$('numberporting_accept2_text').addClass('inputAlertText');
						ValidateCheck = "FAIL";
					}
				}
				if ($('numberporting_accept3')) {
					if (!$('numberporting_accept3').checked) {
						$('numberporting_accept3_text').addClass('inputAlertText');
						ValidateCheck = "FAIL";
					}
				}
				if ($('numberporting_accept4')) {
					if (!$('numberporting_accept4').checked) {
						$('numberporting_accept4_text').addClass('inputAlertText');
						ValidateCheck = "FAIL";
					}
				}
			}
		}
		if ($('ServiceAmount')) {
			arrServiceName = $('ServiceAmount').name.split("_");
			if ($("service_id_" + arrServiceName[2]).checked) {
				if ($('ServiceAmount').value.length < 2) {
					$('ServiceAmount').addClass('inputAlert');
					ValidateCheck = "FAIL";
				}
			}
		}

		if (ValidateCheck == "FAIL") {
			if ($('ErrorMessage')) {
				$('ErrorMessage').set('html', 'Du mangler at udfylde et eller flere felter ovenfor.');
				setClass($("ErrorMessage"),'MessageFail');
				$('ErrorMessage').setStyle('text-align', 'right');
				$('ErrorMessage').setStyle('padding-bottom', '5px');
				
			}
			if (FailGoToStep != 0) showHideSteps(FailGoToStep);
			return false;
		} else {
			if ($('ErrorMessage')) $('ErrorMessage').set('html', '');	
		}
		//tjekker om næste step findes, hvis ikke søger den om der er andre step der er højere end nuværende. Max step er sat til 10 
		while (!$('Step' + iStep)) {
			if (iStep > 10) break;
			iStep++;
		}
		if ($('Step' + iStep)) showHideSteps(iStep);
		else {
			ComfirmExit = false;
			//Sender data fra form
			$('SubscriptionChoiceForm').set('send', {
				onRequest: function(){
					$('Timeline_Dropin').setStyle('display', 'none');
					$$('div[id^=ContentStep]').setStyle('display', 'none');
					$('Message').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
				},
				onSuccess: function(response) { 
					//$('BasketCount').set('html', response);
					GetBasket(1);
					CloseDropIn();
					scroll(0,0);
				},
				onFailure: function(e){
					$('Message').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
					var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
					var ReportFail = new Request({method: 'get', url: url});
					ReportFail.send();
				}
			});
			$('SubscriptionChoiceForm').send();			
		}
	}
	
	function showHideSteps(iShow) {
		//Viser det valgte step
		$$('li[id^=Step] img').set('src', '/images/design/' + iColorImagePath + '/timeline_half.png');
		$$('li[id^=Step]').setStyle('color', '#999999');
		$$('li[id=Step' + iShow + '] img').set('src', '/images/design/' + iColorImagePath + '/timeline_solid.png');
		$$('li[id=Step' + iShow + ']').setStyle('color', '#333333');
		$$('div[id^=ContentStep]').setStyle('display', 'none');
		$('ContentStep' + iShow).setStyle('display', '');
		if (iShow == 2) {
			if ($('subscription_f')) {
				if ($('subscription_f').checked) {
					$('SubscriptionExtensionFields').setStyle('display', '');
					$('SubscriptionNewFields').setStyle('display', 'none');
				} else {
					$('SubscriptionExtensionFields').setStyle('display', 'none');
					$('SubscriptionNewFields').setStyle('display', '');
				}
			} else {
				$('SubscriptionExtensionFields').setStyle('display', 'none');
				$('SubscriptionNewFields').setStyle('display', '');	
			}
		}
		//sætter boxen med steps til den rigtige bredde, så punkterne bliver centreret
		var iSteps = 0
		$$('li[id^=Step]').each(function() {
			iSteps++;									 
		});
		if ($('Steps')) $('Steps').setStyle('width',iSteps*90 + 'px')
	}
} 

//henter services til abonnement
function GetSubscriptionServices(iAbonnementID) {
	//henter services til abonnement
	var url="/includes/ajax/subscription_services.asp?abonnement_id=" + iAbonnementID;
	var RequestServices = new Request({method: 'get', url: url,

		onSuccess: function(responseText){
			$('ContentStep3').set('html', responseText);
			$$('div[id^=ServiceText]').each(function(iServiceText) {
				var myVerticalSlide1 = new Fx.Slide(iServiceText).hide();									 
			});
			$$('div[id^=ServiceFields]').each(function(iServiceText) {
				var myVerticalSlide1 = new Fx.Slide(iServiceText).hide();									 
			});
		}
	});
	RequestServices.send();
}

//Henter kurven
function GetBasket(iOpen) {
	var RequestBasket = new Request({method: 'get', url: '/includes/ajax/basket.asp',
								
		onRequest: function(){
			//hvis DropInContainer ikke findes, oprettes den
			$('BasketContent').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
		},

		onSuccess: function(responseText){
			arrContent = responseText.split('##');
			$('BasketCount').set('html', arrContent[0]);
			$('BasketContent').set('html', arrContent[1]);
			if (iOpen == 1) SlideDown('BasketContainer',1);
		}, 
		
		onFailure: function(e){
			$('BasketContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	RequestBasket.send();
}
//Opdatere kurv
function UpdateBasket(iNumber,iMode) {
	var RequestBasket = new Request({method: 'get', url: '/includes/ajax/basket_update.asp?number=' + iNumber,
								
		onRequest: function(){
			//hvis DropInContainer ikke findes, oprettes den
			$('BasketContent').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
		},

		onSuccess: function(){
			if (iMode == 2) {
				window.location.reload();
			} else {
				GetBasket();
			}
		}, 
		
		onFailure: function(e){
			$('BasketContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	RequestBasket.send();
}
//Henter nyhedsbrev box
function NewsletterBox() {
	var url="/includes/ajax/newsletter.asp";

	var myRequest = new Request({method: 'get', url: url,
								
		onRequest: function(){
			//hvis første
			if (!$('DropInContainer')) CreateDropIn(270,"info.png");
		},

		onSuccess: function(responseText){
			arrContent = responseText.split('##');
			$('DropInHeadline').set('html', arrContent[0]);
			$('DropInContent').set('html', arrContent[1]);
		}, 
		
		onFailure: function(e){
			$('DropInContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	myRequest.send();
} 
//Process nyhedsbrev
function NewsletterProcess(iType) {
	if (!isEmail($('newsletter_email').value)) {
		$('newsletter_email').addClass('inputAlert');
	} else {
		$('NewsletterType').value = iType;
		$('NewsletterForm').set('send', {
			onRequest: function(){
				$('Message').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
				
			},
			onSuccess: function(response) { 
				$('Message').set('html', response);
			},
			onFailure: function(e){
				$('DropInContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
				//$('DropInContent').set('html', e.responseText);
				var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
				var ReportFail = new Request({method: 'get', url: url});
				ReportFail.send();
			}
		});
		$('NewsletterForm').send();	
	}
}
//tilføjer produkt til sammenligning
function CompareProcess(iMode,iProductID) {
	var url="/includes/ajax/compare.asp?mode=" + iMode + "&product_id=" + iProductID;

	var myRequest = new Request({method: 'get', url: url,
								
		onRequest: function(){
			$('MenuCompareBox').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
		},

		onSuccess: function(responseText){
			$('MenuCompareBox').set('html', responseText);
		}, 
		
		onFailure: function(e){
			$('MenuCompareBox').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	myRequest.send();	
}
//Abonnementsberegner
function SubscriptionCalculateForm(iMode, iProductID) {
	var url="/includes/ajax/subscription_calculator_form.asp?mode=" + iMode + "&product_id=" + iProductID;

	var myRequest = new Request({method: 'get', url: url,
								
		onRequest: function(){
			$('CalculatorFormSection').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
		},

		onSuccess: function(responseText){
			$('CalculatorFormSection').set('html', responseText);
			if (iMode == 2) {
				SubscriptionCalculateFormProduct(-1);
			}
		}, 
		
		onFailure: function(e){
			$('CalculatorFormSection').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	myRequest.send();	
}
function SubscriptionCalculateFormProduct(iProducentID) {
	var url="/includes/ajax/product_dropdown.asp?producent_id=" + iProducentID;

	var myRequest = new Request({method: 'get', url: url,
								
		onRequest: function(){
			$('CalculatorFormProductSection').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
		},

		onSuccess: function(responseText){
			$('CalculatorFormProductSection').set('html', responseText);
		}, 
		
		onFailure: function(e){
			$('CalculatorFormProductSection').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	myRequest.send();	
}
function SubscriptionCalculate() {
	if (ValidateForm('CalculatorForm',true)) {
		if ($('CalcProductID')) $('ProductID').value = $('CalcProductID').value;
		$('CalculatorForm').action = "/includes/ajax/subscription_calculator.asp";
		$('CalculatorForm').set('send', {
			onRequest: function(){
				$('CalculatorListSection').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
			},
			onSuccess: function(response) {
				$('CalculatorListSection').set('html', response);
				$("Group_0").style.visibility = "visible";
				$("Group_0").style.display = "";	
				//alert(response);
			},
			onFailure: function(e){
				$('CalculatorListSection').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
				//$('CalculatorListSection').set('html', e.responseText);
				var url="/includes_site/fail.asp?failtext=" + encodeURIComponent(e.responseText);
				var ReportFail = new Request({method: 'get', url: url});
				ReportFail.send();
			}
		});
		$('CalculatorForm').send();
	}
}
//Henter glemt password box
function BusinessBox(iMode) {
	var url="/includes/ajax/business_info.asp?mode=" + iMode;

	var myRequest = new Request({method: 'get', url: url,
								
		onRequest: function(){
			//hvis første
			if (!$('DropInContainer')) CreateDropIn(270,"info.png");
		},

		onSuccess: function(responseText){
			arrContent = responseText.split('##');
			$('DropInHeadline').set('html', arrContent[0]);
			$('DropInContent').set('html', arrContent[1]);
		}, 
		
		onFailure: function(e){
			$('DropInContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
					
			var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
			var ReportFail = new Request({method: 'get', url: url});
			ReportFail.send();
		}
	});
	myRequest.send();
} 
//Process glemt password
function BusinessProcess() {
	if (!isEmail($('BusinessEmail').value)) {
		$('BusinessEmail').addClass('inputAlert');
	} else {
		$('BusinessForm').set('send', {
			onRequest: function(){
				$('Message').set('html', '<img src=\'/images/design/black_gray/ajax_loader2.gif\'>');
				
			},
			onSuccess: function(response) { 
				$('Message').set('html', response);
			},
			onFailure: function(e){
				$('DropInContent').set('html', "<strong>Der skete en fejl!</strong><br>Prøv at opdatere siden og forsøg igen...");
				//$('DropInContent').set('html', e.responseText);
				var url="/includes/fail.asp?failtext=" + encodeURIComponent(e.responseText);
				var ReportFail = new Request({method: 'get', url: url});
				ReportFail.send();
			}
		});
		$('BusinessForm').send();	
	}
}