/*
Changes:
29.07.2010 .content a.link2jobpopup für Jobdetail-Popup hinzugefügt
*/

$(document).ready(function(e){
	// Penny Pack Bild:
	$(".content .detail_col2 img.pp").hide();
	$(".content .detail_col2 img.pp").show('slow');

	$(".content a.link2jobpopup").click(function () {
	    objWnd = window.open($(this).attr("href"), "wndPrint", "width=734,height=610,left=100,top=100,menubar=yes,resizable=yes,scrollbars=yes");
	    objWnd.focus();
	    return false;
	});
    
});

// Flash-Animationen > Suchergebnis (changed CSD: added flashsPath)
function swf_Suchergebnis(el, treffer, text, flashsPath){
	var flashvars = { version: "1.0", resulttext: text, treffertext: treffer };
	var params = false;
	var attributes = false;
	var movieUrl = flashsPath + "suchergebnis.swf";
	var expressUrl = flashsPath + "expressInstall.swf";
	swfobject.embedSWF(movieUrl, el, "253", "281", "9.0.0", expressUrl, flashvars, params, attributes);
}

// Flash-Animationen > Votings:
function swf_initVotingVideos(flvBig, flvThumb, htmlEle, playerUrl){
	
	for (var i = 0; i < flvBig.length; ++i){
		var flashvars = { version: "1.0", btnUrl: playerUrl+'?flv='+flvBig[i] };
		var params = false;
		var attributes = false;
		//alert(htmlEle[i]+' -> '+playerUrl+'?flv='+flvBig[i]);
		swfobject.embedSWF("swf/tvvote_thumb.swf", htmlEle[i], "94", "71", "9.0.0");
	}
}

// Angebot-Detailbilder:
function initDetailImages(){
	$(".content .detailThumbs a").click(function(){ 
		return switchDetailImage($(this).attr("id"));
    });
}

function switchDetailImage(id){
	thisSrc = $("#"+id+" img").attr("src");
	thisIndex = searchArray(detailThumbArray, thisSrc);
	switch(thisIndex) {
	  case 0:
		t1Index = 1;
		t2Index = 2;
		break;
	  case 1:
		t1Index = 2;
		t2Index = 0;
		break;
	  case 2:
		t1Index = 0;
		t2Index = 1;
		break;
	  default:
	  	thisIndex = 0;
		t1Index = 1;
		t2Index = 2;
		break;
	}
	//alert(thisSrc+" -> "+thisIndex+", "+t1Index+", "+t2Index);
	$(".content #detailImgBig").attr("src",detailImgArray[thisIndex]);
	$(".content .detailImgThumb1").attr("src",detailThumbArray[t1Index]);
	$(".content .detailImgThumb2").attr("src",detailThumbArray[t2Index]);
	return false;
}

function searchArray(arr,str){
	str=str.toUpperCase();
	arr[arr.length]=str;
	var i=0;
	while (arr[i].toUpperCase().indexOf(str)==-1) i++;
	if (i==arr.length-1) return -1; else return i;
}

// added by CSD 04.02.2009

// Flash-Animationen > Custom Script with Default Version 9.0.0
function swf_Embed(el, movieUrl, width, height){
	var flashvars = false;
	var params = false;
	var attributes = false;
	var defaultFlashVersion = "9.0.0";	
	swfobject.embedSWF(movieUrl, el, width, height, defaultFlashVersion);
}

// Flash-Animation > Elements with fixed default width
function swf_PennyElement(el, movieUrl, width, height, position)
{
    var defaultWidth = 170; //minimum width
    var defaultHeight = 117; //minimum height
    
    if (width==0||height==0)
    {   
        switch (position) 
        {    
            case "NaviLeft":
            //set dimensions for NaviLeft
                width=170;
                height=117;
                break;
            case "Sidebar":
            //set dimensions for sidebar
                width=186;
                height=133;
                break;
            default:
                //set dimensions if no position matched
                width=defaultWidth;
                height=defaultHeight;
                break;
         }
     }
	 swf_Embed(el, movieUrl, width, height);
}

function addToWarenkorb(firma, prodId, anzahl) {
    var dataString = "{artikel:[";
    dataString += getArtikelString(firma, prodId, anzahl);
    dataString += ",";
    $(".ajaxZusatzartikelCB").each(function () {
        if ($(":first-child", this).is(":checked")) {
            var currentId = $(this).attr("rel");
            dataString += getArtikelString(currentId.substr(0, 2), currentId.substr(2, currentId.length - 2), anzahl);
            dataString += ",";
        }
    });
    dataString = dataString.substr(0, dataString.length - 1);
    dataString += "]}";

    $.ajax({
        type: "POST",
        url: settingHttpPath + "PennyShopService.asmx/AddToWarenkorb",
        data: dataString,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) {
            displayWarenkorbAdd(msg.d);
        }
    });
    return false;
}

function getArtikelString(firma, prodId, anzahl) {
    return "{Firma:'" + firma + "', Nummer: " + prodId + ", Anzahl: " + anzahl + " }"
}

function displayWarenkorbAdd(wkAddResult) {
    displayWarenkorb(wkAddResult);
    fillOverlay(wkAddResult);
    displayOverlay();
}
function displayWarenkorb(wkAddResult) {
    $(".ajaxWkWrapper").show();
    displayWkProdukt(wkAddResult)
    displayWkZusatzProdukt(wkAddResult);
    $(".ajaxWkPreis").text(wkAddResult.WkPrice);
}
function displayWkProdukt(wkAddResult) {
    $(".ajaxWkProduktAnzahl").text(wkAddResult.WkCountItems);
    if (wkAddResult.WkCountItems != 1) {
        $(".ajaxWkProduktText").text("Produkte");
    } else {
        $(".ajaxWkProduktText").text("Produkt");
    }
}
function displayWkZusatzProdukt(wkAddResult) {
    $(".ajaxWkZusatzAnzahl").text(wkAddResult.WkCountAdditional);
    if (wkAddResult.WkCountAdditional != 1) {
        $(".ajaxWkZusatzText").text("Zusatzleistungen");
    } else {
        $(".ajaxWkZusatzText").text("Zusatzleistung");
    }
}

function fillOverlay(wkAddResult) {
    $(".ajaxWkAddImage").attr("src", wkAddResult.ItemImage);
    $(".ajaxWkAddTitle").text(wkAddResult.ItemName);
    $(".ajaxWkAddAmount").text(wkAddResult.ItemCount);
    $(".ajaxWkAddPrice").text(wkAddResult.ItemPrice);
}

function displayOverlay() {
    mwkHolderPos = $(".ajaxWkWrapper").offset().top - 4;
    vieportPosition = mwkHolderPos - $(window).scrollTop();
    var oldPos = $(window).scrollTop();
    if (vieportPosition < 0) {
        jQuery("#meinWarenkorbInfo").data("oldScroll", oldPos);
        jQuery('html,body').animate({ scrollTop: mwkHolderPos }, 'normal', function () {
            showWKInfo();
        });
    } else {
        showWKInfo();
    }
}

function showWKInfo(wkAddResult) {
    jQuery("#meinWarenkorbInfo").animate({ opacity: 'show', left: -250 }, 'normal');
    window.setTimeout(function () {
        jQuery("#meinWarenkorbInfo").animate({ opacity: 'hide', left: -150 }, 'normal', function () {
            scrollBack();
        });
    }, ajaxWkDelay);
}

function scrollBack() {
    var oldPos = jQuery("#meinWarenkorbInfo").data("oldScroll");
    if (oldPos > 0) {
        jQuery('html,body').animate({ scrollTop: oldPos }, 'normal');
    }
}
