﻿/// <reference path="library/jquery-1.3.1.js" />

// ------------------------------
// Wrapper function for swfobject.embedSWF()
// ------------------------------
function embedSWF(swfUrl, id, width, height, flashvars, params, attributes)
{
    swfobject.embedSWF(swfUrl, id, width, height, '8.0.0', 'expressInstall.swf', flashvars, params, attributes);
}

// ------------------------------
// Global variabel för callback-funktion för den modala dialogen
// ------------------------------
var gDialogCallbackFunction;

function showDialogNoButtonsNoHeader(message) {
    var buttons = new Array();
    showDialog(message, null, null, buttons, null, false);
}

// ------------------------------
// Visar den modala dialogen
// ------------------------------
function showDialog(message, header, callbackFunction, buttonArray, fireCallback, showHeader) {

    var dialogIsAlreadyOpen = $("#TB_window").length > 0;

    var buttonAction = "closeDialog";
    if (fireCallback) {
        buttonAction = "fireCallback";
    }

    // Sätt meddelandet
    if(!dialogIsAlreadyOpen)
        $("#ThickboxModalDialog .DialogBody").html(message);
    else
        $("#TB_window #TB_ajaxContent .DialogBody").html(message);

    // Bygg html för knappar
    var buttonHtml = '';
    if (buttonArray)
    {
        for (var i = 0; i < buttonArray.length; i++)
        {
            buttonHtml += '<a onclick="' + buttonAction + '(' + i + ')" class="btn Arrow"><span>' + buttonArray[i] + '</span></a>';
        }
    }
    else
    {
        // Default -> en ok-knapp
        buttonHtml = '<a onclick="closeDialog(0)" class="btn Arrow"><span>Ok</span></a>';
    }
    
    if (!dialogIsAlreadyOpen)
        $("#ThickboxModalDialog .DialogButtons").html(buttonHtml);
    else
        $("#TB_window #TB_ajaxContent .DialogButtons").html(buttonHtml);

    // Spara undan callback-funktionen
    if (callbackFunction)
    {
        gDialogCallbackFunction = callbackFunction;
    }


    FixCheckBoxes();
    FixRadioButtons();

    var dialogHeight;
    var dialogWidth;
    if (!dialogIsAlreadyOpen) {
        // Gör dialogen synlig för att hämta höjd och bredd
        $("#ThickboxModalDialog").show();
        dialogHeight = determineHeight("#ThickboxModalDialog") + 5;
        dialogWidth = $("#ThickboxModalDialog").width();
    } else {
        // Nollställ gammal höjd för att kunna räkna ut den nya
        $("#TB_window #TB_ajaxContent").css("height", "auto");
        dialogHeight = determineHeight("#TB_window #TB_ajaxContent") + 5;
        dialogWidth = $("#TB_ajaxContent .DialogBody").width();
    }

    if (showHeader == undefined) {
        showHeader = true;
    }
    
    // Visa dialogen
    var url = '#TB_inline?height=' + dialogHeight + '&width=' + dialogWidth + '&inlineId=ThickboxModalDialog&modal=true&header=' + showHeader;
    tb_show(header ? header : 'Cylinda', url, null);

}

// ------------------------------
// Stänger den modala dialogen
// ------------------------------
function closeDialog(buttonIndex)
{
    // Stäng dialogen
    tb_remove();
    $("#ThickboxModalDialog").hide();
    
    // Anropa callback med index för knappen som klickades
    if (gDialogCallbackFunction)
    {
        gDialogCallbackFunction(buttonIndex);
        gDialogCallbackFunction = undefined;
    }
}

/// Avfyrar callbackfunktionen utan att stänga dialogrutan
function fireCallback(buttonIndex) {
    // Anropa callback med index för knappen som klickades
    if (gDialogCallbackFunction) {
        gDialogCallbackFunction(buttonIndex);
        gDialogCallbackFunction = undefined;
    }
}

function resetCallback() {
    gDialogCallbackFunction = null;
}

// ------------------------------
// Visar en valfri dialog. dialogId anger id:t på det element som skall visas i dialogen.
// ------------------------------
function showCustomDialog(dialogId, header, width, height)
{
    var url = '#TB_inline?height=' + height + '&width=' + width + '&inlineId=' + dialogId + '&modal=true&header=true';
    tb_show(header ? header : 'Cylinda', url, null);
}

// ------------------------------
// Visar meddelande om att listan för jämförelse är full
// ------------------------------
function visaJamforListaFullMeddelande()
{
    showDialog('Maximalt 5 produkter kan jämföras samtidigt.');
}

// Bestämmer höjden på en dialog så att den inte blir högre än fönstret
function determineHeight(selector) {
    var winHeight = $(window).height();
    var objectHeight = $(selector).height();
    var displayHeight = objectHeight > (winHeight - 70) ? (winHeight - 70) : objectHeight;
    
    if (displayHeight < 35)
        displayHeight = 35;

    return displayHeight;
}

// ------------------------------
// Stänger den modala dialogen
// ------------------------------
function closeJamforelse(buttonIndex) {
    // Stäng dialogen
    tb_remove();
    $("#ThickboxCompare").hide();

    // Anropa callback med index för knappen som klickades
    if (gDialogCallbackFunction) {
        gDialogCallbackFunction(buttonIndex);
        gDialogCallbackFunction = undefined;
    }
}

function disableScrollbars(){
    $("html, body").css("overflow", "hidden");
}

function enableScrollbars(){
    $("html, body").css("overflow", "auto");
}

// ------------------------------------------------------------
// Skriver ut en produktjämförelse (Nånting liknande måste vi ha för PDF/Björn)
// ------------------------------------------------------------
function skrivUtJamforelse()
{
    if (!window.print)
    {
        window.status = 'No print';
        return;
    }

    // Hämta div:en som innehåller jämförelsen
    var $contentdiv = $('.ProductCompare');
    if ($contentdiv)
    {
        var contentHtml = '<div class="ProductCompare" style="padding: 0 10px 0 10px">' + $contentdiv.html() + '</div>';
        var beginHtml =
		      '<html>' +
			  '<head>' +
			  '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' +
			  '<link rel="stylesheet" type="text/css" media="all" href="/Styles/obg-framework.css">' +
			  '<link rel="stylesheet" type="text/css" media="all" href="/Styles/cylinda-generell.css">' +
  			  '<link rel="stylesheet" type="text/css" media="all" href="/Styles/thickbox.css">' +
              '<!--[if lt IE 7]><link rel="Stylesheet" href="/Styles/ie6.css" type="text/css" media="screen" /><![endif]-->' +
	          '<!--[if IE 7]><link rel="Stylesheet" href="/Styles/ie7.css" type="text/css" media="screen" /><![endif]-->' +
	          '<style>.PrintExclude { visibility: hidden; }</style>' +
	          '<style>tr.Alternate td {background:#fef4df !important; }</style>' +
			  '<title>Cylinda - Produktjämförelse</title>' +
			  '</head>' +
			  '<body style="margin: 50px 0px 10px 0px">' +
			  '<img alt="Cylinda" src="/Images/cylinda-logo.png" STYLE="position:absolute; TOP:15px; LEFT:10px;" />';

        var footerHtml = '';
        var endHtml = '</body></html>';

        var printWin = window.open('about:blank', '', 'width=940,height=600,scrollbars=yes,toolbar=yes');
        printWin.document.open();
        printWin.document.write(beginHtml +
		                        contentHtml +
		                        footerHtml +
		                        endHtml);
        printWin.document.close();
//printWin.open();
        printWin.print();
//        printWin.close();
    }
}

//-----------------------------------
// Skriver ut produktpresentation
//-----------------------------------
function skrivUtProduktPresentation(url) 
{
    if (!window.print) {
        window.status = 'No print';
        return;
    }

    var printWin = window.open(url, '', 'width=940,height=600,scrollbars=yes,toolbar=yes');
    printWin.print();
}

 // slut - skrivUtProduktPresentation
 

    function skrivUtOrder() {
        if (!window.print) {
            window.status = 'No print';
            return;
        }

        // Hämta div:en som innehåller texten för utskrift
        var $contentdiv = $('.OrderUtskrift');
        if ($contentdiv) {

            // Hämta rubriken
            var headlineText = $("div.OrderUtskrift h1 span.sIFR-alternate span").text();
            
            // Klona innehåller for utskrift så att vi kan manipulera det
            var contentCopy = $contentdiv.clone();

            // Ta bort SIFR
            contentCopy.find("h1.sIFR-replaced").remove();

            // Lägg till en vanlig h1 med rubriken
            contentCopy.find("div#Primary").prepend("<h1>" + headlineText + "</h1>");

            var contentHtml = '<div class="ProductCompare" style="padding: 0 10px 0 10px">' + contentCopy.html() + '</div>';
            var beginHtml =
	      '<html>' +
		  '<head>' +
		  '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' +
		  '<link rel="stylesheet" type="text/css" href="/Styles/obg-framework.css">' +
		  '<link rel="stylesheet" type="text/css" href="/Styles/cylinda-generell.css">' +
          '<!--[if lt IE 7]><link rel="Stylesheet" href="/Styles/ie6.css" type="text/css" media="screen" /><![endif]-->' +
          '<!--[if IE 7]><link rel="Stylesheet" href="/Styles/ie7.css" type="text/css" media="screen" /><![endif]-->' +
          '<style>.PrintExclude { visibility: hidden; }</style>' +
		  '<title>Cylinda - Orderbekräftelse</title>' +
		  '</head>' +
		  '<body style="margin: 10px 0px 10px 0px">';

            var footerHtml = '';
            var endHtml = '</body></html>';

            var printWin = window.open('about:blank', '', 'width=940,height=600,scrollbars=yes,toolbar=yes');
            printWin.document.open();
            printWin.document.write(beginHtml +
	                        contentHtml +
	                        footerHtml +
	                        endHtml);
            printWin.document.close();
//            printWin.open();

            printWin.print();
            printWin.close();            
        }
    }





// ------------------------------------------------------------
// Skriver ut en produktjämförelse som PDF 
// ------------------------------------------------------------
function skrivUtJamforelsePDF() {

    //    hu = window.location.search.substring(0) + "&SkapaPDF=PDF";
    hu = window.location + "&SkapaPDF=PDF";
    window.open(hu);
//    __doPostBack('PDF', 'Ja');
    return;
}
// ------------------------------------------------------------
// Öppnar en dialog för att skicka produktinformation med e-post.
// ------------------------------------------------------------
function skickaProduktDokument(dokumentTyp)
{
    $('#EmailDocumentDialogContainer input[type="hidden"]').attr('value', dokumentTyp);
    var textboxNamn = $('#EmailDocumentDialogContainer input[type="text"]')[0];
    showCustomDialog('EmailDocumentDialogContainer', 'Skicka dokument med e-post', 270, 162);
    textboxNamn.focus();
}

// ------------------------------------------------------------
// Ändrar focus till element vid klick
// ------------------------------------------------------------
function ChangeFocusOnEnter(event, ref) {
    if (event.keyCode == 13) {
        var btn = document.getElementById(ref);
        if (btn) {
            btn.focus();
        }
    }
}

function hidePrintButtons() {
    $(".HeaderLinks").hide();
    $(".HeaderNav").hide();
    $(".Breadcrumb").hide();
    $(".PrintExclude").hide();
    $("#Intro").hide();
    $("#BreadcrumbSearchCompare").hide();
//    $("#Tillbaka").hide();
    $("#ctl00_ContentPlaceHolderMain_Tillbaka").hide(); 
    $("#SkrivPapper").hide();
    $("#SkrivPdf").hide();
    $("#footer").hide();                
    $(".ContainerTop").css("background", "none");
    $(".Container").css("background", "none");
    $(".HeaderLogo > a > img").attr('src', '/Images/cylinda-logo-1.jpg');
}

function ShowPopup(url, winname, features) {

    var fonster = null;
    var x = 0; var y = 0;

    if (parseInt(navigator.appVersion) > 3) {
        x = (screen.availWidth - 300) / 2; y = (screen.availHeight - 300) / 2;
    }

    if (parseInt(navigator.appVersion) > 3 || navigator.appName == "Netscape") {
        if (!fonster || fonster.closed) {
            fonster = window.open(url, winname, features);
            fonster.focus();
        } else {
            fonster.location.href = url;
            fonster.focus();
        }
    } else {
        window.parent.frames.base.location.href = url;
    }
}

function ScrollaMjuktTill(selector) {
    var targetOffset = $(selector).offset().top -10;
    $('html,body').animate({ scrollTop: targetOffset }, 1000);
}

function VisaLagersaldoKontrolleras() {
    var buttons = new Array();
    showDialog("<img src=\"/Images/indicator.gif\" valign=\"middle\" /> Lagersaldo kontrolleras. Var god vänta.", "Pris/Saldo", null, buttons);
}

function MakeThisGray(selector) {
//    alert(selector);
//    alert($(selector));
//    alert($('kalle'+selector));
//    alert($('#'+selector));
//    $('#' + selector).attr('disabled', 'disabled');
//BNY    $label = $('label[for="' + selector + '"]');
//BNY    $label.hide();

    $('#' + selector).attr('disabled', 'disabled');
    $label = $('label[for="' + $('#' + selector).attr('id') + '"]');
    $label.find('span.holder').addClass('holderDisabled');
    $label.addClass('grayed');

    //FÖR TEST
    //Om själva input checkboxen (som ligger bakom) är disablad,
    //ska en utgråad checkbox-bild synas    $(this).attr('disabled')
    //if ($('input#' + $(this).attr('for')).attr('disabled') == true) {
//    $label = $('label[for="' + $(this).attr('id') + '"]');
//    if ($('#' + selector).attr('disabled') == true) {
//        $label.find('span.holder').addClass('holderDisabled');
//    }
//    else {
//        $label.find('span.holderDisabled').removeClass('holderDisabled');
//    }    
//    
//    alert(selector);
//    alert($(selector));
//    alert($get(selector));

//    alert('ett ' + ($(selector).attr('disabled') == true));
//    alert('två ' + ($(selector).attr('disabled') == 'disabled'));
//    alert('tre ' + ($(selector).attr('disabled')));


//DEN HÄR FUNKAR    alert('fyra ' + ($('#'+selector).attr('disabled')));


//    $(this).attr('disabled', 'disabled');    
//    alert('fyra'+ $(this).attr('disabled') == true);
    //
}
function MakeThisNormal(selector) {
    $('#' + selector).attr('disabled', '');
    $label = $('label[for="' + $('#' + selector).attr('id') + '"]');
    $label.find('span.holder').removeClass('holderDisabled');
    $label.removeClass('grayed');
}

function CheckQuantity(quantity) {
    var IsNumber = /^-?\d+$/.test(quantity);
    if (!IsNumber) {
        showDialog("Du måste ange ett korrekt antal", "Information");
    }
    return IsNumber;
}

//SLUT FIL
