﻿
var currentNavItem = null;
var currentNavSubItem = null;
var mouse_x_pos = 0;
var mouse_y_pos = 0;
var minimumFooterPositionY = 400;
var michaelsVersion = false;
var flashvars = {};
var chartStatusReiter = "SixMonth";
var chartStatusKurs = 1;
var chartStatusBasis = 0;
var isIE = document.all;
var mouseX = 0;
var mouseY = 0;
var loadingPanelId;
var sortPanelId;
var displayLoadingPanelPager;
var displayLoadingPanelSort;
var displayLoadingPanelZahlungsstrom;
var displayOverviewOptions = true;
var pdfWindow;
var searchType = "Simple";
var elementCSV = "ctl00_PlaceHolderMain_csvurl";



function getCodeVersion() {
    alert("zertifikate.js: 6 \nwestlb_all.css: " + document.getElementById("codeVersion").innerHTML + " TEST 2\nwestlb_all.css: " + document.getElementById("codeVersion").style.fontSize + "TEST 3");
}

function setSortPanelId(id) {
    sortPanelId = id;
}

function hideElement(elementId) {
    //log("hide " + elementId);
    if (document.getElementById(elementId)) {
        document.getElementById(elementId).style.display = "none";
    }
}

function invisibleElement(elementId) {
    //log("invisible " + elementId);
    if (document.getElementById(elementId)) {
        document.getElementById(elementId).style.visibility = "hidden";
    }
}

function displayElement(elementId) {
    //log("display " + elementId);
    if (document.getElementById(elementId)) {
        document.getElementById(elementId).style.display = "block";
    }
}

function visibleElement(elementId) {
    //log("visible " + elementId);
    if (document.getElementById(elementId)) {
        document.getElementById(elementId).style.visibility = "visible";
    }
}

function getChartData(version, kurs, basis) {
    chartStatusReiter = version;
    // chartStatusKurs = kurs ? "1" : "0";
    // chartStatusBasis = basis ? "1" : "0";
    chartStatusKurs = kurs;
    chartStatusBasis = basis;
    //alert(" Version: " + version + "\n Produktwert aktiv: " + kurs + "\n Basiswert aktiv: " + basis);
}

function getMouseXY(e) {
    e = window.event;
    if (e) {
        mouseX = isIE ? (e.clientX + document.body.scrollLeft) : e.pageX;
        mouseY = isIE ? (e.clientY + document.body.scrollTop) : e.pageY;
    }
}

function getMousePosition(e) {
    if (e == undefined) e = window.event;

    if (e.pageX || e.pageY) {
        mouse_x_pos = e.pageX;
        mouse_y_pos = e.pageY;
    } else if (e.clientX || e.clientY) {
        mouse_x_pos = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
        mouse_y_pos = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    }

    if (document.getElementById("x")) document.getElementById("x").value = mouse_x_pos;
    if (document.getElementById("y")) document.getElementById("y").value = mouse_y_pos;


    if (document.getElementById("searchOptionsLayer") && document.getElementById("searchOptionsLayer").style.display == "block") {
        //alert(mouse_x_pos + ", " + mouse_y_pos);   
        if (mouse_y_pos < 190 || mouse_x_pos < 750 || mouse_x_pos > 995) {
            hideSearchOptions();
        }
    }
}

function replaceChartLink() {
    var urlPart1 = window.location.href.substring(0, window.location.href.indexOf("/Pages"));
    var newURL = "../Pages/PDFGeneratorPage.aspx?image=true&delay=5&url=" + urlPart1 + "/Pages/chart.aspx" + window.location.search + "&TS=" + (new Date()).getTime();
    newURL = "chart.aspx" + window.location.search + "&TS=" + (new Date()).getTime();
    if (document.getElementById("linkChart")) document.getElementById("linkChart").src = newURL;
    //alert("replaceChartLink() done.");
}

function replaceChartAsImageLink() {
    var urlPart1 = window.location.href.substring(0, window.location.href.indexOf("/Pages"));
    newURL = "../Pages/PDFGeneratorPage.aspx?image=true&delay=10&url=" + urlPart1 + "/Pages/chart.aspx" + window.location.search + "&TS=" + (new Date()).getTime();
    if (document.getElementById("linkChartAsImage")) document.getElementById("linkChartAsImage").src = newURL;
}

function replacePDFLink() {
    alert("replacePDFLink()");
    var urlPart1 = window.location.href.substring(0, window.location.href.indexOf(".aspx"));
    var urlPart2 = window.location.href.substr(window.location.href.indexOf(".aspx"));
    var newURL = urlPart1 + "Print" + urlPart2;
    //if (window.location.href.indexOf("/newsletter.aspx") != -1) {


    newURL = window.location.href;
    if (newURL.indexOf("?") != -1) {
        newURL = newURL + "&";
    } else {
        newURL = newURL + "?";
    }
    newURL = newURL + "print=true";
    newURL = newURL + "&TS=" + (new Date()).getTime();

    if (document.getElementById("printURL")) {
        if (window.location.href.indexOf("/microsite.aspx") != -1) {
            document.getElementById("printURL").href = "javascript:hideMasterPage();window.print();";
        } else {
            document.getElementById("printURL").href = newURL;
        }
    }

    newURL = newURL.replace(/&/g, "%26");
    //newURL = newURL.replace(/\?/g, "3F");

    //}

    if (document.getElementById("pdfURL")) {
        document.getElementById("pdfURL").href = "../Pages/PDFGeneratorPage.aspx?url=" + newURL;
    }

}



function doSetFooterPosition(url) {
    // alert("typeof : " + typeof (url));
    if (typeof(url) != "string")
    {
        url = window.location.href;
    }
    setFooterPosition(minimumFooterPositionY, url);
}

function resizeEvent() {
    alert("resize!");
}

function hideMasterPage() {
    //alert("within hideMasterPage();");
    document.getElementById("trHeader").style.display = "none";
    document.getElementById("trBreadcrumb").style.display = "none";
    document.getElementById("tdMainNav").innerHTML = "&nbsp;";
}

function switchLayers(idToShow, idToHide) {
    document.getElementById(idToHide).style.display = "none";
    document.getElementById(idToShow).style.display = "block";
}


function switchLI(param, hide) {
    if (hide) {
        param.getElementsByTagName("UL")[0].style.display = "none";
    } else {
        if (param.getElementsByTagName("UL")[0].style.display == "block") {
            param.getElementsByTagName("UL")[0].style.display = "none";
        } else {
            param.getElementsByTagName("UL")[0].style.display = "block";
        }
    }
}

function toggleSubList(param) {
    if (param && param.getElementsByTagName("UL") && param.getElementsByTagName("UL")[0]) {
        var topNavItems = document.getElementById("mainnav").getElementsByTagName("LI");
        for (i = 0; i < topNavItems.length; i++) {
            if (topNavItems[i].className.indexOf("topNavWithChildren") != -1) {
                switchLI(topNavItems[i], true);
            }
        }
        switchLI(param);
    } else {
        if (param.className == "") {
            param.className = "active";
        } else {
            param.className = param.className + " active";
        }
    }
}

function toggleSubList2(param) {
    for (i = 1; i < 8; i++) {
        if (("0" + i) == param) {
            if (document.getElementById("navSubList" + param).style.display == "block") {
                document.getElementById("navSubList" + param).style.display = "none";
            } else {
                document.getElementById("navSubList" + param).style.display = "block";
            }
        } else {
            document.getElementById("navSubList0" + i).style.display = "none";
        }
    }
}

function toggleSubSubList(param) {
    //alert(param);
    for (i = 1; i < 8; i++) {
        if (("0" + i) == param) {
            if (document.getElementById("navSubSubList" + param).style.display == "block") {
                document.getElementById("navSubSubList" + param).style.display = "none";
                document.getElementById("mehrButton" + param).style.display = "block";
                document.getElementById("zurueckButton" + param).style.display = "none";
            } else {
                document.getElementById("navSubSubList" + param).style.display = "block";
                document.getElementById("mehrButton" + param).style.display = "none";
                document.getElementById("zurueckButton" + param).style.display = "block";
            }
        }
    }
}

function hidePrintLinks() {
    if (document.getElementById("pdfPrintIcon")) document.getElementById("pdfPrintIcon").style.display = "none";
    if (document.getElementById("pdfPrintLink")) document.getElementById("pdfPrintLink").style.display = "none";
    if (document.getElementById("printIcon")) document.getElementById("printIcon").style.display = "none";
    if (document.getElementById("printLink")) document.getElementById("printLink").style.display = "none";
}

function hideElements() {
    // to overwrite
}

function displayElements() {
    // to overwrite
}

function invisibleElements() {
    // to overwrite
}

function visibleElements() {
    // to overwrite
}

function showSearchOptions(searchValue, y) {
    displayOverviewOptions = false;
    hideElement("divTableSearchResult");
    hideElements();
    invisibleElements();

    //alert();
    if (document.getElementById("ctl00_spwp1_ctl00_searchValue")) {
        document.getElementById("ctl00_spwp1_ctl00_searchValue").value = searchValue;
        //alert(document.getElementById("ctl00_spwp1_ctl00_searchValue").value);
    }

    if (document.getElementById("ctl00_spwp1_ctl00_TabContainerSearchbox_SuchPanel_ddlBasiswerte")) {
        document.getElementById("ctl00_spwp1_ctl00_TabContainerSearchbox_SuchPanel_ddlBasiswerte").style.display = "none";
    }

    __doPostBack("ctl00_spwp1_ctl00_SearchBoxPanel", 'JustSearch');

    document.getElementById("searchOptionsLayer").style.display = "block";
    document.getElementById("tableSearchResult").style.display = "block";
}

function refreshUpdatePanel() {
    __doPostBack("ctl00_spwp1_ctl00_SearchBoxPanel", '');
}

function hideSearchOptions(param) {
    if (document.getElementById("ctl00_spwp1_ctl00_TabContainerSearchbox_SuchPanel_ddlBasiswerte")) {
        document.getElementById("ctl00_spwp1_ctl00_TabContainerSearchbox_SuchPanel_ddlBasiswerte").style.display = "block";
    }
    if (document.getElementById("searchOptionsLayer")) {
        document.getElementById("searchOptionsLayer").style.display = "none";
    }
    displayOverviewOptions = true;
    displayElements();
    visibleElements();
}

function rollover(row) {

    // first reset all the other rows
    var rows = row.parentNode.getElementsByTagName('TR');
    for (var no = 0; no < rows.length; no++) {
        resetRowStyle(rows[no]);
    }

    var rowClass = row.className;
    if (row.className.indexOf("even") != -1 || row.className.indexOf("odd") != -1) {
        row.className = row.className + "RollOver";
    }

    var cells = row.getElementsByTagName('TD');
    for (var no = 0; no < cells.length; no++) {
        if (cells[no] && cells[no] != undefined) {
            if (cells[no].className.indexOf("even") != -1 || cells[no].className.indexOf("odd") != -1 || cells[no].className.indexOf("bulletpoint") != -1) {
                cells[no].className = cells[no].className + "RollOver";
            } else if (cells[no].className.indexOf("green") == -1 && cells[no].className.indexOf("red") == -1) {
                cells[no].className = rowClass + "RollOver";
            }
        }
    }
}

function resetRowStyleTable(table) {
    var rows = table.getElementsByTagName('TR');
    for (var no = 0; no < rows.length; no++) {
        resetRowStyle(rows[no]);
    }
}

function resetRowStyle(row) {

    if (row.className.indexOf("even") != -1 || row.className.indexOf("odd") != -1) {
        if (row.className.indexOf("RollOver") != -1) {
            row.className = row.className.substring(0, row.className.indexOf("RollOver"));
        }
    }

    var cells = row.getElementsByTagName('TD');
    for (var no = 0; no < cells.length; no++) {
        if (cells[no] && cells[no] != undefined) {
            if (cells[no].className.indexOf("RollOver") != -1) {
                cells[no].className = cells[no].className.substring(0, cells[no].className.indexOf("RollOver"));
            }
        }
    }

}

function go(select) {
    var wert = select.options[select.options.selectedIndex].value;
    if (wert != "") window.location.href = wert;
}

function switchTeaserList() {
    if (document.getElementById('moreProductsLayer').style.display == 'block') {
        document.getElementById('moreProductsLayer').style.display = 'none';
        document.getElementById('switchTeaserListButton').value = 'Weitere Produkte';
    } else {
        document.getElementById('moreProductsLayer').style.display = 'block';
        document.getElementById('switchTeaserListButton').value = 'Schließen';
    }
}

function toggleCollapsibleEntryBwm(expander) {
    var datablock = expander.parentNode.parentNode.getElementsByTagName("DIV")[2];
    var newStyle = (datablock.style.display == "block" ? "none" : "block");
    datablock.style.display = newStyle;
    if (newStyle == 'block') {
        expander.style.backgroundImage = "url(../Documents/bwmExpanderMinus.gif)";
    } else {
        expander.style.backgroundImage = "url(../Documents/bwmExpanderPlus.gif)";
    }
}

function getWindowHeight() {
    var y = 0;
    if (self.innerHeight) {
        y = self.innerHeight;
    }
    else if (document.documentElement && document.documentElement.clientHeight) {
        y = document.documentElement.clientHeight;
    }
    else if (document.body) {
        y = document.body.clientHeight;
    }
    return y;
}




function displayDataLoading() {
    document.getElementById("dataLoadingLayer").style.display = "block";
}

function hideDataLoading() {
    document.getElementById("dataLoadingLayer").style.display = "none";
}

function log(message) {
    var e = document.getElementById("logTextArea");
    if (e != null) e.value = e.value + message + "\n";
}

function getLeft(obj) {
    var lPos = 0;
    if (obj.offsetParent) {
        while (obj.offsetParent) {
            lPos += obj.offsetLeft
            obj = obj.offsetParent;
        }
    }
    else if (obj.x)
        lPos += obj.x;
    return lPos;
}

function getTop(obj) {
    //document.getElementById("printViewInfo").innerText += "in getTop(1); \n";
    var oPos = 0;
    if (obj.offsetParent) {
        //document.getElementById("printViewInfo").innerText += "in getTop(2); \n";
        while (obj.offsetParent) {
            oPos += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (obj.y) {
        //document.getElementById("printViewInfo").innerText += "in getTop(2); \n";
        oPos += obj.y;
    }
    //document.getElementById("printViewInfo").innerText += "in getTop(3); \n";
    return oPos;
}


function setFooterPosition(min, _urlStr) {
    alert("_urlStr : " + _urlStr);
    /* if (urlStr.toLowerCase().indexOf("print=true") == -1) { */
    var urlStr = _urlStr.toLowerCase();

    if (urlStr.indexOf("print=true") == -1) {

        /*var windowHeight = getWindowHeight();
        if (min < windowHeight) {
        document.getElementById("footerLayer").style.top = windowHeight - 20;
            
        }*/

        //alert("1");
        if (document.getElementById("divContentWrapper")) {
            var y = document.getElementById("divContentWrapper").offsetTop + document.getElementById("divContentWrapper").offsetHeight;
            document.getElementById("footerLayer").style.top = y + 280;
        }

        var lastContent = document.getElementById("contentBlockLast");
        //document.getElementById("footerTable").width = 512;
        document.getElementById("footerLayer").width = 512;
        if (urlStr && (urlStr.toLowerCase().indexOf("overview") != -1
            || urlStr.toLowerCase().indexOf("productfinder") != -1
            || urlStr.toLowerCase().indexOf("underlyingmatrix") != -1
            || urlStr.toLowerCase().indexOf("productdetails") != -1)) {
            //document.getElementById("footerTable").width = 768;
            document.getElementById("footerLayer").width = 768;
        }
        document.getElementById("footerLayer").style.display = "block";
    } else {
        //document.getElementById("footerLayerPrint").style.display = "block";
    }
}

function setLoadingPanelId(id) {
    loadingPanelId = id;
}

function setCurrentNav() {
    if (currentNavItem) {
        toggleSubList(document.getElementById("topNav" + currentNavItem));
    } else {
        //alert("no currentNavItem set!");
    }
    var navItem;
    if (currentNavSubItem) {
        navItem = document.getElementById("navItem" + currentNavSubItem);
        if (navItem.className == "") {
            navItem.className = "active";
        } else {
            navItem.className = navItem.className + " active";
        }
    }
}

function zertifikateOnLoad() {
    // to overload
}


/*
function printPage() {
//alert("Die Druckansichten befinden sich zurzeit im Umbau und sind daher nicht testbar.");
//var newURL = getPrintURL();
//log(newURL);
//alert(newURL);
//document.getElementById("iframePDFLoading").src = "chart.aspx?selector=pdfloadingpanel&url=" + newURL;
        
        
        
//document.getElementById("layerPDFLoading").style.display = "block";
        
        
        
//window.setTimeout(hideElement("layerPDFLoading"), 2000);
//window.location.href = newURL;
        
/*
pdfWindow = window.open(newURL, "PDF", "height=600,width=600,left=50,top=150,screenX=50,screenY=150,location=no,resizable=yes,scrollbars=yes");        
window.setTimeout("hidePDFLoaderLayer()", 10000);
*/

//newURL = newURL.replace(/&/g, "%26");



//pdfWindow = window.open("chart.aspx?selector=pdf&delay=5&url2=/sites/Zertifikate/Pages/productdetailsPrint.aspx&isin=" + isin, "PDF", "height=600,width=800,left=100,top=100,location=no,resizable=yes");
//getChartData(version, kurs, basis);




//var loaderWindow = window.open("chart.aspx?selector=loadingpanel", "PDFLoader", "height=600,width=800,left=100,top=100,location=no,resizable=no");


//var observer = setInterval("waitForPDF();", 1000);


// current evelopment code
/*
var pagePath = "<%= Request.Path %>";
var isin = "<%= Request.Params["isin"] %>";        
displayElement("layerPDFLoading");
pdfWindow = window.open("PDFGeneratorPage.aspx?delay=5&url=/sites/Zertifikate/Pages/productdetailsPrint.aspx&isin=" + isin + "&chartPrint=1&chartReiter=" + chartStatusReiter + "&chartBasis=" + chartStatusBasis + "&chartKurs=" + chartStatusKurs + "&print=true", "PDF", "height=600,width=700,left=50,top=100,location=no,resizable=yes");
pdfWindow.onload = hideLoader;
setTimeout("hidePDFLoaderLayer();", 5000); 
*/

// prototype static pdf
//pdfWindow = window.open("chart.aspx?selector=pdfprototype", "PDF", "height=600,width=800,left=50,top=100,location=no,resizable=yes");

/*
pdfWindow = window.open("pdfprototype.aspx", "PDF", "height=600,width=800,left=50,top=100,location=no,resizable=yes");
}
*/

function printPage() {
    //var filename = "WestLB_" + version.replace(/ /g, "_") + ".pdf";
    // var url = "PDFGeneratorPage.aspx/" + filename + "?url=%2Fsites%2FZertifikate%2FPages%2FproductoverviewPrint.aspx&" + getQueryParameters() + "&print=true";
    var url = "PDFGeneratorPage.aspx/" + pdfPrintName + "?url=%2Fsites%2FZertifikate%2FPages%2FproductoverviewPrint.aspx&" + getQueryParameters() + "&print=true";
    //alert(url);
    displayElement("layerPDFLoading");
    pdfWindow = window.open(url, "PDF", "height=600,width=700,left=50,top=100,location=no,resizable=yes");
    pdfWindow.onload = hideLoader;
    setTimeout("hidePDFLoaderLayer();", 5000);
}


function printPage_() {
    var temp = window.location.href.toLowerCase();
    var handle = temp.substring(temp.indexOf("/sites/"), temp.indexOf(".aspx") + 5);
    //var url = "PDFGeneratorPage.aspx?url=/sites/Zertifikate/Pages/MicroEmittentenwechsel.aspx&print=true";
    var url = "PDFGeneratorPage.aspx?url=" + escape(handle) + "&print=true";
    var url2 = "MicroEmittentenwechsel.aspx?print=true";
    log(url);
    //alert(url);
    //alert(url.replace(/&/g, "\n"));

    //window.location.href = url2;
    //window.open(url2, "Druckansicht", "height=400,width=1200,left=50,top=100,location=no,resizable=yes, scrollbars=yes");


    displayElement("layerPDFLoading");
    pdfWindow = window.open(url, "PDF", "height=600,width=700,left=50,top=100,location=no,resizable=yes");
    pdfWindow.onload = hideLoader;
    setTimeout("hidePDFLoaderLayer();", 5000);

}

function hidePDFLoaderLayer() {
    hideElement("layerPDFLoading");
}

function hideLoader() {
    hideElement("layerPDFLoading");
}

function waitForPDF() {
    //document.getElementById("message").innerHTML = pdfWindow.document.readyState;
    document.getElementById("message").innerHTML = pdfWindow.status;
    if (pdfWindow.readyState == "complete") {
        clearInterval(observer);
        //switchView();
    }
}

function displayErlaeuterung(id) {
    var el = document.getElementById(id);
    if (el) {
        getMousePosition();
        el.style.top = mouse_y_pos - 300;
        el.style.left = mouse_x_pos - 300;
        displayElement(id);
    }
}

// chartGraphIsRendered wird im Flash aufgerufen, wenn der Chart Graph fertig gezeichnet ist
function chartGraphIsRendered() {
    //alert('chartGraphIsRendered, do whatever you want!');
}

function forwardUnderlying(isin) {
    window.location.href = "underlyingdetails.aspx?UnderlyingISIN=" + isin;
}

function forwardCSV(element) {

    if (!element) {
        element = elementCSV;
    }    
    var tempurl = document.getElementById(element);
    window.location.href = tempurl.value;
}


function detailsUnload() {
    alert("printVersion = " + flashvars.printVersion + "\nprintReiter = " + flashvars.printReiter + "\nprintBasis = " + flashvars.printBasis + "\nprintKurs = " + flashvars.printKurs);
}

function hideZahlungsstrom() {
    hideElement("PopupDiv");
    hideElement("ctl00_PlaceHolderMain_UpdatePanelPopUp");
}
