$(document).ready(function() {
	selectedProduct = 0;
	
	if($(document).getUrlParam("p") && $(document).getUrlParam("p") != 99){
		var pid = $(document).getUrlParam("p");
		if(!isNaN(pid) && pid > 0 && pid <= numberOfProducts){
			$("#wvFormSelect").val(pid).attr("selected", true);
			selectedProduct = products[pid];
		}
	}
	else if($(document).getUrlParam("pr")){
		/*$("input[name='wvFormContract']")[1].checked = "checked";*/
		pr = $(document).getUrlParam("pr").replace(",", ".").replace("%2C", ".");
		if(isNaN(pr) || pr > 100 || pr < 5){
			$("#formErrorMessage").html(errorText["wrongPrice"]);
			$("#formError").show();
			return 0;
		}
		else{
			var product = {
				provider: "",
				rate: "",
				price: pr,
				speed: $(document).getUrlParam("sp").replace(",", ".")
				/*contract: $(document).getUrlParam("co")*/
			}
			$("#wvFormSelect").val(99).attr("selected", true);
			$("#wvFormSpeed").val($(document).getUrlParam("sp")).attr("selected", true);
			$("#wvFormPrice").val($(document).getUrlParam("pr").replace("%2C", ","));
			/*$("input[name='wvFormContract']")[$(document).getUrlParam("co")-1].checked = "checked";*/
				
			$("#wvFormAdvContent").show();
			//showWvResult(product);
			selectedProduct = product;
		}
	}
    else{ /* Standard Auswahl */
			var product = {
				provider: "",
				rate: "",
				price: 50.00,
				speed: 2
				/*contract: $(document).getUrlParam("co")*/
			}
			$("#wvFormSelect").val(99).attr("selected", true);
			$("#wvFormSpeed").val(2).attr("selected", true);
			$("#wvFormPrice").val("50,00");
			/*$("input[name='wvFormContract']")[$(document).getUrlParam("co")-1].checked = "checked";*/
				
			$("#wvFormAdvContent").show();
    }
	
	if(selectedProduct != 0){
		tb_show(); //Abdunkeln			
		$('#TB_load').css("left", "40%");
		$('#TB_load').html('<div id="loadingLayer"><div class="left"><img src="/static/img/lay_loading_animation.gif" /></div><div class="left">Ihr Tarifvergleich wird berechnet. <br />Wir bitten um einen Moment Geduld</div></div>');
		setTimeout(function(){
			tb_remove();
			showWvResult(selectedProduct);
		}, 1000);			
	}
	$("#wvSuggestBox").slideDown();
    //Initialize Wettbewerbsvergleich
	$("#wvFormSelect").change( function() {
		if($("#wvFormSelect option:selected").val() == 99)
			$("#wvFormAdvContent").show();//slideDown("slow");
		else
			$("#wvFormAdvContent").hide();//slideUp("slow");
	});
	
});

function wvSendOnPage(){
    $("#formError").hide();
	tb_show(); //Abdunkeln		
	$('#TB_load').css("left", "40%");	
	$('#TB_load').html('<div id="loadingLayer"><div class="left"><img src="/static/img/lay_loading_animation.gif" /></div><div class="left">Ihr Tarifvergleich wird berechnet. <br />Wir bitten um einen Moment Geduld</div></div>');
	setTimeout(function(){
		tb_remove();
		
		if($("#wvFormSelect option:selected").val() == 99){
			var pr = $("#wvFormPrice").val().replace(",", ".");
			if(isNaN(pr) || pr > 100 || pr < 5){
				$("#formError").show();
				return 0;
			}
			else{
				$("#formError").hide();
				var product = {
					provider: "",
					rate: "",
					price: pr,
					speed: $("#wvFormSpeed option:selected").val().replace(",", ".")
					/*contract: $("input[name='wvFormContract']:checked").val()*/
				}
				showWvResult(product);
			}
		}
		else{
            $("#wvFormAdvContent").hide();
			var pid = $("#wvFormSelect option:selected").val();
			if(!isNaN(pid) && pid > 0 && pid <= numberOfProducts)
				showWvResult(products[pid]);
		}
		if($("#wvFormSelect option:selected").val() != 0){
			$("#wvSuggestBox").slideDown();
		}
		else{
			$("#formErrorMessage").html(errorText["noSelect"]);
			$("#formError").show();
		}
	}, 1000);

}


function showWvResult(product){
	if(product.speed == 0.5){
		product.speedH = "512KBit/s"; //Human
		product.speedI = "512"; //Image
	}
	else{
		product.speedH = product.speed + "MBit/s";
		product.speedI = product.speed;
	}
	
	if(product.price < 21)
		product.priceScale = 5;
	/*else if(product.price < 26)
		product.priceScale = 21;
	else if(product.price < 30)
		product.priceScale = 26;*/
    else if(product.price < 30)
		product.priceScale = 21;
    /* bis hier*/    
	else if(product.price < 36)
		product.priceScale = 30;
	else if(product.price < 41)
		product.priceScale = 36;
	else if(product.price >= 41)
		product.priceScale = 41;
	
	//alert("provider: "+product.provider+"\n"+"rate: "+product.rate+"\n"+"price: "+product.price+"\n"+"price (scale): "+product.priceScale+"\n"+"speed: "+product.speed+"\n"+"speed (human): "+product.speedH+"\n"+"contract: "+product.contract+"\n"); //DEBUG
	
	showWvSpeedBox(product);
	showWvPriceBox(product);
	
}

function showWvSpeedBox(product){
	$("#wvSpeedBox").hide();
	$("#wvSmallSpeedBox").hide();
	
	var showBigSpeedBox = 0;
	jQuery.each(speedImageAvalible, function(i, val) {
		if(val == product.speedI){
			$("#wvSpeedBox").find(".wvProvider").html(product.provider); 
			$("#wvSpeedBox").find(".wvRate").html(product.rate);
			
			if(!product.provider && !product.rate){
				$("#wvSpeedBox").find(".contentTextRed").find(".wvProvider").html("Ihr");
				$("#wvSpeedBox").find(".contentTextRed").find(".wvRate").html("Tarif");
			}
			$("#wvSpeedImage").attr("src", wvImagePath+speedImagePrefix+product.speedI+speedImageType);
			var speedFactor = Math.round(32/product.speed);
	
			var txt = getWvText(speedText, product.priceScale, product.speed);
			txt = txt.replace("xxx", speedFactor);
			$("#wvSpeedBox").find(".wvText").html(txt);
			
			showBigSpeedBox = 1;
			$("#wvSpeedBox").slideDown();
		}
	});
	
	if(!showBigSpeedBox){
		var txt = getWvText(speedText, product.priceScale, product.speed);
		
		if(txt != -1){
			$("#wvSmallSpeedBox").find(".contentTextRed").html(txt);
			$("#wvSmallSpeedBox").slideDown();
		}
	}
	//alert("Text Speed: " + txt);
}

function showWvPriceBox(product){
	$("#wvPriceBox").hide();
	$("#wvSmallPriceBox").hide();
	
	var showBigPriceBox = 0;
	jQuery.each(priceImageAvalible, function(i, val) {
		if(val == product.priceScale){
			$("#wvPriceBox").find(".wvProvider").html(product.provider); 
			$("#wvPriceBox").find(".wvRate").html(product.rate);
			var nicePrice = parseFloat(product.price).toFixed(2).replace(".", ",");
			$("#wvPriceBox").find(".priceM").html(nicePrice);
			
			var priceY = (product.price * 12).toFixed(2).replace(".", ",");
			$("#wvPriceBox").find(".priceY").html(priceY);
			
			var differenceM = (product.price - 22.90).toFixed(2).replace(".", ",");
            var differenceM2 = (product.price - 29.90).toFixed(2).replace(".", ",");
			$("#wvPriceBox").find(".differenceM").html(differenceM);
			
			var differenceY = ((product.price - 22.90) * 12).toFixed(2).replace(".", ",");
            var differenceY2 = ((product.price - 29.90) * 12).toFixed(2).replace(".", ",");
			$("#wvPriceBox").find(".differenceY").html(differenceY);
			$("#wvPriceImageM").attr("src", wvImagePath+priceImagePrefix+product.priceScale+priceImageType);
			$("#wvPriceImageY").attr("src", wvImagePath+priceImagePrefix+"year_"+product.priceScale+priceImageType);
			var txtM = getWvText(priceTextM, product.priceScale, product.speed);
			txtM = txtM.replace("yyy", differenceM);
            txtM = txtM.replace("xxx", differenceM2);
			$("#wvPriceBox").find(".wvTextM").html(txtM);

			var txtY = getWvText(priceTextY, product.priceScale, product.speed);
			txtY = txtY.replace("yyy", differenceY);
            txtY = txtY.replace("xxx", differenceY2);
			$("#wvPriceBox").find(".wvTextY").html(txtY);
			showBigPriceBox = 1;
			$("#wvPriceBox").slideDown();
		}
	});
	
	if(!showBigPriceBox){
		var txt = getWvText(priceTextM, product.priceScale, product.speed);
		
		if(txt != -1){
			$("#wvSmallPriceBox").find(".contentTextRed").html(txt);
			$("#wvSmallPriceBox").slideDown();
		}
	}
	
	
	
	
	//alert("Text Price M: " + txtM);
	//alert("Text Price Y: " + txtY);
}

function getWvText(textArr, price, speed){
	var txt = 0;
	jQuery.each(textArr, function(i, ival) {
		if(i == price){
			jQuery.each(ival, function(j, jval) {
				if(j == speed && jval){
					txt = jval;
				}
			});
			if(txt == 0)
				txt = ival["default"];
		}			
	});
	return txt;
}


var products = [];
var numberOfProducts = 15;

products[1] = {
	provider: "T-Home",
	rate: "Call &amp; Surf Comfort",
	price: 39.95,
	speed: 6
};
products[2] = {
	provider: "T-Home",
	rate: "Call &amp; Surf Comfort VDSL",
	price: 44.95,
	speed: 26
};
products[3] = {
	provider: "T-Home",
	rate: "Call &amp; Surf Comfort Plus",
	price: 49.95,
	speed: 16
};
products[4] = {
	provider: "1&amp;1",
	rate: "Surf &amp; Phone Doppel-FLAT",
	price: 29.99,
	speed: 16
};
products[5] = {
	provider: "1&amp;1",
	rate: "Surf &amp; Phone Doppel-FLAT",
	price: 39.99,
	speed: 26
};
products[6] = {
	provider: "Tele 2",
	rate: "Komplett 6000",
	price: 29.95,
	speed: 6
};
products[7] = {
	provider: "Tele 2",
	rate: "Komplett 16000",
	price: 34.95,
	speed: 16
};
products[8] = {
	provider: "Vodafone",
	rate: "DSL Flatrate 6000",
	price: 29.95,
	speed: 6
};
products[9] = {
	provider: "Vodafone",
	rate: "DSL Flatrate 16000",
	price: 34.95,
	speed: 16
};
products[10] = {
	provider: "Versatel",
	rate: "DSL 6000",
	price: 29.90,
	speed: 6
};
products[11] = {
	provider: "Versatel",
	rate: "DSL 16000",
	price: 34.90,
	speed: 16
};
products[12] = {
	provider: "Congstar",
	rate: "Komplettpaket DSL 2000",
	price: 24.99,
	speed: 2
};
products[13] = {
	provider: "Congstar",
	rate: "Komplettpaket DSL 6000",
	price: 29.98,
	speed: 6
};
products[14] = {
	provider: "Congstar",
	rate: "Komplettpaket DSL 16000",
	price: 34.98,
	speed: 16
};
products[15] = {
	provider: "Freenet",
	rate: "Komplett Doppel-Flat",
	price: 29.90,
	speed: 16
};



var errorText = [];
errorText["noSelect"] = "Bitte wählen Sie Ihren Tarif aus!";
errorText["wrongPrice"] = "Bitte geben Sie einen gültigen monatlichen Preis ein!";

var wvImagePath = "/static/app/wv/img/";

/*--- Speedimage  ---*/
var speedImageAvalible = [512 , 1, 2, 4, 6, 10, 16, 20];
var speedImagePrefix = "img_wv_speed_"; //Speed 512, 1, 2, 4, 10, 16, 20, 26
var speedImageType = ".gif";

/*--- Priceimage ---*/
var priceImageAvalible = [26, 30, 36, 41];
var priceImagePrefix = "img_wv_price_"; //Price 26, 30, 36, 41
var priceImageType = ".gif";


/*--- Speedtext ---*/
var  speedText = []; // 2D Array [Price][Speed] -> Price 5, 21, 26, 30, 36, 41; Speed 0.5, 1, 2, 4, 10, 16, 20, 26

speedText[5] = [];
speedText[5]["default"] = "bis zu xxx mal schneller";
speedText[5][16] = "bis zu doppelt so schnell";
speedText[5][20] = "bis zu 1,5 mal schneller";
speedText[5][26] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";
speedText[5][32] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";

speedText[21] = [];
speedText[21]["default"] = "bis zu xxx mal schneller";
speedText[21][16] = "bis zu doppelt so schnell";
speedText[21][20] = "bis zu 1,5 mal schneller";
speedText[21][26] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";
speedText[21][32] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";

speedText[26] = [];
speedText[26]["default"] = "bis zu xxx mal schneller";
speedText[26][16] = "bis zu doppelt so schnell";
speedText[26][20] = "bis zu 1,5 mal schneller";
speedText[26][26] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";
speedText[26][32] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";

speedText[30] = [];
speedText[30]["default"] = "bis zu xxx mal schneller";
speedText[30][16] = "bis zu doppelt so schnell";
speedText[30][20] = "bis zu 1,5 mal schneller";
speedText[30][26] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";
speedText[21][32] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";

speedText[36] = [];
speedText[36]["default"] = "bis zu xxx mal schneller";
speedText[36][16] = "bis zu doppelt so schnell";
speedText[36][20] = "bis zu 1,5 mal schneller";
speedText[36][26] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";
speedText[36][32] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";

speedText[41] = [];
speedText[41]["default"] = "bis zu xxx mal schneller";
speedText[41][16] = "bis zu doppelt so schnell";
speedText[41][20] = "bis zu 1,5 mal schneller";
speedText[41][26] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";
speedText[41][32] = "Kabel Deutschland Internet & Telefon 32 bietet mit ultraschnellen 32 MBit/s für 22,90 € pro Monat (in den ersten 12 Monaten) im Vergleich mit anderen großen DSL-Anbietern das beste Preis-Leistungs-Verhältnis. Profitieren auch Sie davon.";

/*--- Pricetext Monat ---*/
var priceTextM = []; // 2D Array [Price][Speed] -> Price 5, 21, 26, 30, 36, 41; Speed 0.5, 1, 2, 4, 10, 16, 20, 26

priceTextM[5] = [];
priceTextM[5]["default"] = -1;

priceTextM[21] = [];
priceTextM[21]["default"] = "Nutzen Sie unsere günstige Internetflat für nur 22,90 € pro Monat (in den ersten 12 Monaten) inklusive Telefonflat.";
priceTextM[21][26] = -1;

priceTextM[26] = [];
priceTextM[26]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Monat (yyy € pro Monat im ersten Jahr).";

priceTextM[30] = [];
priceTextM[30]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Monat (yyy € pro Monat im ersten Jahr).";

priceTextM[36] = [];
priceTextM[36]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Monat (yyy € pro Monat im ersten Jahr).";

priceTextM[41] = [];
priceTextM[41]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Monat (yyy € pro Monat im ersten Jahr).";

/*--- Pricetext Jahr ---*/
var priceTextY = []; // 2D Array [Price][Speed] -> Price 5, 21, 26, 30, 36, 41; Speed 0.5, 1, 2, 4, 10, 16, 20, 26

priceTextY[5] = [];
priceTextY[5]["default"] = -1;

priceTextY[21] = [];
priceTextY[21]["default"] = -1;

priceTextY[26] = [];
priceTextY[26]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Jahr (yyy € im ersten Jahr).";

priceTextY[30] = [];
priceTextY[30]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Jahr (yyy € im ersten Jahr).";

priceTextY[36] = [];
priceTextY[36]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Jahr (yyy € im ersten Jahr).";

priceTextY[41] = [];
priceTextY[41]["default"] = "Mit Kabel Deutschland sparen Sie xxx € pro Jahr (yyy € im ersten Jahr).";