﻿
window.onload = WLoad

function WLoad() {
    
    $get('ImageProgress').style.display = 'none';
//    $get('PSuchen').style.display = 'block';
//    $get('PVergleichen').style.display = 'none';
//    $get('PMerkzettel').style.display = 'none';
    $get('PanelDrucken').style.display = 'none';
    $get('PanelSuchergebnisse').style.display = 'block';
    $('.PanelDunkel').animate({ opacity: 0.0 });
    $('.PanelDunkel').height(0);
    $('.ImageWarten').css('display','none');
    
    I1 = new Image();
    I1.src = "Image/VergleichenMinus.gif";
    I2 = new Image();
    I2.src = "Image/MerkenMinus.gif";

    I3 = new Image();
    I3.src = "Image/sort_leer.png";
    I4 = new Image();
    I4.src = "Image/sort_top.png";
    I5 = new Image();
    I5.src = "Image/sort_down.png";      

    //Wenn nicht IE und nur ein Angebot in Liste, dann Tab1 expandieren
    if (!$.browser.msie) {
        if ($('.datagridimagemehr').size() == 1) { $('.datagridimagemehr').click(); };
    };

}

function TabExpand(sender) {
    var l = sender.length;
    var t = sender.substring(0, l - 1); 
    $("#" + sender).fadeOut(0);
    $("#" + sender).fadeIn(600);
}

function initializeMap(adresse) {
    if (GBrowserIsCompatible()) {
       var map = new GMap2(document.getElementById("map_wdb"));
       var geocoder = new GClientGeocoder();
       geocoder.getLatLng(adresse, function (point) {
           if (!point) {
               $(".map").hide(500);
               alert("Die Adresse wurde nicht gefunden.");
           } else {
               var npoint = new GLatLng(point.lat(), point.lng() + 0.0045);
               map.setCenter(npoint, 15);
               var marker = new GMarker(point);
               map.addOverlay(marker);
               map.addControl(new GOverviewMapControl(new GSize(211, 365)));
           }
       }
         );
         map.setUIToDefault();
    }
}

function MapShow(adresse) {
    $(".fahrplan").hide(500);
    $(".map").show(500);
    initializeMap(adresse);
}

function MapHide() {
    $(".map").hide(500);
    GUnload();
}

function FahrplanShow(adresse) {
    $(".map").hide(500);
    $(".fahrplan_wdb").empty();
    $(".fahrplan").show(500);
    var anfrage = '<iframe frameborder="0" style="width:300px;height:197px;border:0;" src="http://www.bvg.de/index.php/de/widgets/fahrinfo/1/300/5/' + adresse + '"></iframe>';
    $(".fahrplan_wdb").append(anfrage);
}

function FahrplanHide() {
    $(".fahrplan").hide(500);
    $(".fahrplan_wdb").empty();
}

function vergleichen() {
    $get('PVergleichen').style.display = 'block';
    $get('PMerkzettel').style.display = 'none';
    $get('PSuchen').style.display = 'none';
    $('html, body').animate({ scrollTop: 0 }, 0);
}

function vergleichenDel(Spalte) {
    __doPostBack(t1 + 'UpdatePanelV', 'Vdel' + Spalte);
}

function vergleichenDelAll() {
    __doPostBack(t1 + 'UpdatePanelV', 'VdelAll');
}

function vergleichenAdd(AID) {
    __doPostBack(t1 + 'UpdatePanelV', 'Vadd$' + AID);
}

function vergleichenAddM(AID) {
    __doPostBack(t1 + 'UpdatePanelV', 'VaddM$' + AID);
}

function merkzettel() {
    $get('PSuchen').style.display = 'none';
    $get('PVergleichen').style.display = 'none';
    $get('PMerkzettel').style.display = 'block';
    $('html, body').animate({ scrollTop: 0 }, 0);
}

function merkenDel(zeile) {
    var z = 0;
    z += 2;
    z += parseInt(zeile);
    var zid = '';
    if (parseInt(zeile) < 8) {
        var zid = "Merkzettel1_GridViewM_ctl0" + z + "_PanelDatagridZeile";
    } else {
        var zid = "Merkzettel1_GridViewM_ctl" + z + "_PanelDatagridZeile";
    }
    var p = $("#" + zid);
    var offset = p.offset();
   
    $('html, body').animate({ scrollTop: offset.top - 250 }, 300);
        $('#' + zid).slideUp(500, function() {
        __doPostBack(t1 + 'UpdatePanelM', 'Mdel$' + zeile);
    });   
}

function merkenDelAll() {
    __doPostBack(t1 + 'UpdatePanelM', 'MdelAll');
}

function merkenAdd(GridZeile) {
    __doPostBack(t1 + 'UpdatePanelM', 'Madd$' + GridZeile);
}

function merkenAddV(GridZeile) {
    __doPostBack(t1 + 'UpdatePanelM', 'MaddV$' + GridZeile);
}

function sortierenM(Spalte, Richtung) {
    __doPostBack(t1 + 'UpdatePanelM', 'Msort$' + Spalte + "$" + Richtung);
}

function suchen() {
    $get('PSuchen').style.display = 'block';
    $get('PVergleichen').style.display = 'none';
    $get('PMerkzettel').style.display = 'none';
    $('html, body').animate({ scrollTop: 0 }, 0);
}

var Suchtext = ""
var t1 = ""

function FirstHistory() {
    __doPostBack(t1 + 'UpdatePanel1', '');
}

function plz(sender, e) {
//    if (document.getElementById(t1 + 'TextBoxPlz').value.length == 5) {
//        __doPostBack(t1 + 'UpdatePanel1', '');
//    }
//    document.getElementById(t1 + 'ImageButtonSuche').focus();
}

function SuchtextPopulating(sender, e) {
    Suchtext = document.getElementById(t1 + 'TextBoxSuchbegriff').value;
}

function SuchtextSelected(sender, e) {
    var prefix = ""
    var SText = ""
        
    if (Suchtext.startsWith("s:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "s:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("a:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "a:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("o:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "o:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("e:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "e:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("z:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "z:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("S:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "s:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("A:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "a:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("O:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "o:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("E:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "e:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }
    if (Suchtext.startsWith("Z:")) {
        document.getElementById(t1 + 'TextBoxSuchbegriff').value = "z:" + document.getElementById(t1 + 'TextBoxSuchbegriff').value;
    }  
        __doPostBack(t1 + 'UpdatePanel1', '');
}

function doToggle(sender, zeile, TabContainer) {
   
       $(".datagridzeile").css("backgroundColor", "");

       if ($(".PDGDetails:eq(0)").height() > 100) {
           $(".datagridzeile:eq(0)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(1)").height() > 100) {
           $(".datagridzeile:eq(1)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(2)").height() > 100) {
           $(".datagridzeile:eq(2)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(3)").height() > 100) {
           $(".datagridzeile:eq(3)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(4)").height() > 100) {
           $(".datagridzeile:eq(4)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(5)").height() > 100) {
           $(".datagridzeile:eq(5)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(6)").height() > 100) {
           $(".datagridzeile:eq(6)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(7)").height() > 100) {
           $(".datagridzeile:eq(7)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(8)").height() > 100) {
           $(".datagridzeile:eq(8)").css("backgroundColor", "#fff8e2");
       }
       if ($(".PDGDetails:eq(9)").height() > 100) {
           $(".datagridzeile:eq(9)").css("backgroundColor", "#fff8e2");
       }
              
    var cpe = $find(sender);
    if (cpe.get_Collapsed()) {
        $get(zeile).style.backgroundColor = "#fff8e2";
        var parameter = $('#' + zeile).attr('parameter');
       
        // wenn kein Tab aktiv, dann den ersten setzen
        if ($find(TabContainer).get_activeTabIndex() == -1) { 
            $find(TabContainer).set_activeTabIndex(0);       
        }                   
            
        if ($('#' + TabContainer + '_TabD1_PTabD1').html().length < 100) {
            ws('GetHtmlTabD1', parameter, TabContainer + '_TabD1_PTabD1', cpe);
            ws('GetHtmlTabD2', parameter, TabContainer + '_TabD2_PTabD2', 0);
            ws('GetHtmlTabD3', parameter, TabContainer + '_TabD3_PTabD3', 0);
            ws('GetHtmlTabD4', parameter, TabContainer + '_TabD4_PTabD4', 0);
        } else {
            cpe._animation._fps = 40;
            cpe._animation._duration = 0.5;
            cpe._doOpen();        
        }

        var p = $("#" + zeile);
        var offset = p.offset();
        $('html, body').delay(500).animate({ scrollTop: offset.top - 5 }, 1000);
            

    } else {
        $get(zeile).style.backgroundColor = "#fff8e2";

        cpe._animation._fps = 40;
        cpe._animation._duration = 0.5;
        cpe._doClose();

        var p = $("#" + zeile);
        var offset = p.offset();
        var hoehe = $('.PanelMitte').height();
        hoehe = hoehe + 500;

        if (hoehe == 500) {
            hoehe = $('.datagridM').height();
           hoehe = hoehe + 500;
        }        
        
        $('html, body').height(hoehe).animate({ scrollTop: offset.top - 250 }, 300);             
      
    }
}

function ws(methode, parameter, ziel, cpe) {
    $.ajax({
        type: 'POST',
        cache: true,
        url: '/ws.asmx/' + methode,
        data: "{'contextKey': '" + parameter + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert("Fehler: " + XMLHttpRequest.statusText + " - " + textStatus + " - " + errorThrown);
        },

        success: function (data) {
            $('#' + ziel).html(data.d);
            if (cpe != 0) {
                cpe._animation._fps = 40;
                cpe._animation._duration = 0.5;
                cpe._doOpen();
            }

            //  alert('Erfolg: ' + data.d);
        }
    });
}

var GTop = 0;

function druckenMerkzettel() {
   
    var htmlStrF = $('.panelfusslinks').html();
    $('.PanelDruckenUeberschrift').append('Alle Angebote auf dem Merkzettel');
    $(".PanelDruckenUeberschrift").css("background-image", "url()");
    $('.PanelDruckenLogos').append(htmlStrF);

    var parameter = '';
    $("div[id$='PanelDatagridZeile'][id*='Merkzettel']").each(function (index) {
        var zeile = $(this).attr('id');
        if (index > 0) {
            parameter += '~';
        }
        parameter += $('#' + zeile).attr('parameter');
    }) 

    GTop = 0;
    GTop = $('html').scrollTop();
    if (GTop == 0) {
        GTop = $('body').scrollTop();
    }
    $('html, body').animate({ scrollTop: 0 }, 0);
      
    
    $('.PanelGesamt').hide(0);
    $('.PanelDunkel').height('100%');    
    $('.PanelDunkel').animate({ opacity: 0.2 }, 300, function () {
        $('.ImageWarten').delay(1000).fadeIn(3000);
        AlleAngeboteMerkzettel(parameter);
        });
}

function AlleAngeboteMerkzettel(parameter) {
    $.ajax({
        type: 'POST',
        cache: true,
        url: '/ws.asmx/GetMerkzettelDruck',
        data: "{'contextKey': '" + parameter + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert("Fehler: " + XMLHttpRequest.statusText + " - " + textStatus + " - " + errorThrown);
        },
        success: function (data) {
            $('.PanelDruckenMerkzettel').append(data.d);
            $('.PanelDruckenMerkzettel .PanelTabD13').remove();
            $('.PanelDruckenMerkzettel .LKeinTermin').remove();
            $('.PanelDruckenMerkzettel span[class*="LabelTitel-"]').wrap('<div class="PanelDruckenTitel">');
            $('.PanelDruckenMerkzettel div[class*="Ueberblick-"]').wrap('<div class="PanelDruckenText2">');
            $('.PanelDruckenMerkzettel div[class*="Inhalte-"]').wrap('<div class="PanelDruckenText2">');
            $('.PanelDruckenMerkzettel div[class*="Termine-"]').wrap('<div class="PanelDruckenText2">');
            $('.PanelDruckenMerkzettel div[class*="Anbieter-"]').wrap('<div class="PanelDruckenText2">');
            $('.ImageWarten').hide(0, function () {
                $('.PanelDrucken').show(0);
                $('.PanelDunkel').animate({ opacity: 0.0 }, 300, function () {
                    $('.PanelDunkel').height(0);
                });
            });
        }
    });
}

function druckenVergleichen() {
    $('.kopfmenue').hide(0);
    $('.kopfmenue2').hide(0);
    $('.PVV').hide(0);
    $(".ImageHeader").attr("src", "/Image/DruckBanner.jpg");
    var BI = $(".PVergleichen").css("background-image");
    $(".PVergleichen").css("background-image", "url()");

    window.print();
    window.setTimeout(EndeDruckenVergleichen, 500, BI);
}

function EndeDruckenVergleichen(BI) { 
    $(".PVergleichen").css("background-image", BI);
    $(".ImageHeader").attr("src", "/Image/Header.jpg");
    $('.kopfmenue').show(0);
    $('.kopfmenue2').show(0);
    $('.PVV').show(0);
}

function druckenUeberblick(Angebot) {
    var htmlStrT = $('.LabelTitel-' + Angebot).html();
    var htmlStr = $('.Ueberblick-' + Angebot).html();
    var htmlStrF = $('.panelfusslinks').html();
    $('.PanelDruckenUeberschrift').append('Angebot > Überblick');
    $('.PanelDruckenTitel').append(htmlStrT);
    $('.PanelDruckenText').append(htmlStr);
    $('.PanelDruckenLogos').append(htmlStrF);
    $(".PanelDruckenUeberschrift").css("background-image", "url()");

    GTop = 0;
    GTop = $('html').scrollTop();
    if (GTop == 0) {
        GTop = $('body').scrollTop();
    }
    $('html, body').animate({ scrollTop: 0 }, 0);

    $('.PanelGesamt').hide(0);
    $('.PanelDrucken').show(0);
}

function druckenAngebot(Angebot) {    
    var htmlStrT = $('.LabelTitel-' + Angebot).html();
    var htmlStr1 = $('.Ueberblick-' + Angebot).html();
    var htmlStr2 = $('.Inhalte-' + Angebot).html();
    var htmlStr3 = $('.Termine-' + Angebot).html();
    var htmlStrT2 = '';
    try {
        if (htmlStr3.length != null) {
            var htmlStrT2 = '<div class="TermineTitel">Alle Termine und Veranstaltungsorte:</div>'
        }
    } catch (err) { }
    var htmlStrF = $('.panelfusslinks').html();       
    if (htmlStr3 == null) { htmlStr3 = '' }
    var htmlStr4 = $('.Anbieter-' + Angebot).html();
   
    $('.PanelDruckenUeberschrift').append('Angebot > Alle Angaben');
    $('.PanelDruckenTitel').append(htmlStrT);
    $('.PanelDruckenText').append(htmlStr1 + htmlStr2 + htmlStrT2 + htmlStr3 + htmlStr4);
    $('.PanelDruckenLogos').append(htmlStrF);
    $(".PanelDruckenUeberschrift").css("background-image", "url()");

    GTop = 0;
    GTop = $('html').scrollTop();
    if (GTop == 0) {
        GTop = $('body').scrollTop();
    }
    $('html, body').animate({ scrollTop: 0 }, 0);

    $('.PanelGesamt').hide(0);
    $('.PanelDrucken').show(0);
}

function EndeDrucken() {
    $('.PanelDruckenUeberschrift').empty();
    $('.PanelDruckenMerkzettel').empty();
    $('.PanelDruckenTitel').empty();
    $('.PanelDruckenText').empty();
    $('.PanelDruckenLogos').empty();
    $('.PanelDrucken').hide(0);
    $('.PanelGesamt').show(0);
    $('html, body').animate({ scrollTop: GTop }, 0);
}





