﻿var data = new Array();
var layers = new Array();
var latitudefeld = new Array();
var longitudefeld = new Array();
var mittelpunkt;
//var strassenverzeichnis = "";
var strassenverzeichnis = "Ahornweg, 73278, Schlierbach;Albstraße, 73278, Schlierbach;Am Haslenbach, 73278, Schlierbach;Auchtertstraße, 73278, Schlierbach;August-Auwärter-Straße, 73278, Schlierbach;B297, 73278, Schlierbach;Bachstraße, 73278, Schlierbach;Bachwiesenweg, 73278, Schlierbach;Boßlerstraße, 73278, Schlierbach;Breiteweg, 73278, Schlierbach;Brunnenwiesenweg, 73278, Schlierbach;Bühlweg, 73278, Schlierbach;Daimlerstraße, 73278, Schlierbach;Dieselstraße, 73278, Schlierbach;Dobelweg, 73278, Schlierbach;Dorfwiesenstraße, 73278, Schlierbach;Ebersbacher Straße, 73278, Schlierbach;Eichbrunnenstraße, 73278, Schlierbach;Eichwaldhof, 73278, Schlierbach;Festplatz, 73278, Schlierbach;Friedhofweg, 73278, Schlierbach;Gaiserstraße, 73278, Schlierbach;Gartenstraße, 73278, Schlierbach;Göppinger Straße, 73278, Schlierbach;Haldenweg, 73278, Schlierbach;Hardthof, 73278, Schlierbach;Hattenhofer Straße, 73278, Schlierbach;Hauffstraße, 73278, Schlierbach;Hauptstraße, 73278, Schlierbach;Hohenstaufenstraße, 73278, Schlierbach;Hölderlinweg, 73278, Schlierbach;Hölzerstraße, 73278, Schlierbach;Im Gäßle, 73278, Schlierbach;Im Wolfsgraben, 73278, Schlierbach;In den Geigenäckern, 73278, Schlierbach;In den Schießgärten, 73278, Schlierbach;K1203, 73278, Schlierbach;K1419, 73278, Schlierbach;K1420, 73278, Schlierbach;Kirchheimer Straße, 73278, Schlierbach;Kirchstraße, 73278, Schlierbach;L1152, 73278, Schlierbach;Limburgstraße, 73278, Schlierbach;Lindenhof, 73278, Schlierbach;Max-Eyth-Straße, 73278, Schlierbach;Maybachstraße, 73278, Schlierbach;Mörikestraße, 73278, Schlierbach;Neuffenstraße, 73278, Schlierbach;Porschestraße, 73278, Schlierbach;Ranzenäckerstraße, 73278, Schlierbach;Riedweg, 73278, Schlierbach;Robert-Bosch-Straße, 73278, Schlierbach;Schlatweg, 73278, Schlierbach;Schnellhof, 73278, Schlierbach;Seeäcker, 73278, Schlierbach;Seestraße, 73278, Schlierbach;Siemensstraße, 73278, Schlierbach;Silcherstraße, 73278, Schlierbach;Steingaustraße, 73278, Schlierbach;Tannenhöfe, 73278, Schlierbach;Teckstraße, 73278, Schlierbach;Uhlandstraße, 73278, Schlierbach;Vor der Sommerweide, 73278, Schlierbach;Wolfstraße, 73278, Schlierbach;Zeppelinstraße, 73278, Schlierbach";
var strassenverz = strassenverzeichnis.split(";");
var startbound;
var zoomtoLocation;
var zoomtoLocationLine;
var zoomtoLocationArea;
var startlocation;
var type;
var back = new Array();
var objektList = new Array();
var durchlauf = 0;

var tabSearchEN = "Search";
var tabSearchDE = "Suchen";
var tabImpEN = "Masthead";
var tabImpDE = "Impressum";
var seach4StreetEN = "Location <br/> (Street Address, ZIP Code, City)";
var seach4StreetDE = "Standort (Straße, PLZ, Stadt)";
var seach4AllEN = "General Search<br/> (Business , Health, Recreation...)";
var seach4AllDE = "Allgemeine Suche<br/> (Gewerbe, Gesundheit, Freizeit...)";
var text4Route ;
var tostartsite;
var back1 ;
var searchresult = "";
var startPoint;
var endPoint;
var moreInfo;
var all;


function reducelogoSize(picture) {
    picture.load(function () {
        var getWidth = picture.width();
        var getHeight = picture.height();
        var logowidth = $('#logoDiv').width();
        var logoHeight = $('#logoDiv').height();
        var dimensgl = getWidth / logowidth;
        var dimenslg = logowidth / getWidth;
        // if (getWidth >> logowidth && getHeight >> logoHeight) {
        if (getWidth > logowidth) {
            logoHeight = logoHeight / dimensgl;
            picture.attr({ height: getHeight, width: logowidth });
        }
        else if (getWidth < logowidth) {

            //  else if (getWidth << logowidth && getHeight << logoHeight) {
            picture.attr({ height: getHeight, width: getWidth });
        }
    });
}

function setLangOnStart(language) {
//+++++++++++++++++Festsetzen von Logo+++++++++++++++++++++++++++++++++++++++
    var logoPic = $("<img/>").attr({ id: "logoid", alt: "logos", src: "data/icons/logo.png"});
    reducelogoSize(logoPic)
    logoPic.css({ 'display': 'block', 'margin-left': 'auto', 'margin-right': 'auto', 'margin-top': 'auto', 'margin-bottom': 'auto' });
    $('#logoDiv').append(logoPic); 

 var lang_de = language.indexOf("de");
 var lang_en = language.indexOf("en");

 $('#tab1').html("");
 $('#tab3').html("");
 $('#streetsearch').html("");
 $('#allsearch').html("");
 $('#searchheader').html("");
 $('#impheader').html("");
 $('#impressum').html("")
 $('#allrights').html("");

  if (lang_de != -1){
      $('#tab1').append(tabSearchDE);
      $('#tab3').append(tabImpDE);
      $('#searchheader').append(tabSearchDE);
      $('#impheader').append(tabImpDE);
      $('#streetsearch').append(seach4StreetDE);
      $('#allsearch').append(seach4AllDE);
      $('#impressum').append('<tr><td colspan="1" rowspan="1"/></tr><tr><td colspan="1" rowspan="1"><img src="images/logo_digiterra.png" alt="logo" style=" width: 190px; height:150px"/></td></tr><tr><th align="left">Herausgeber</th></tr><tr><td colspan="1" rowspan="1"><font color="#009933">DIGI</font><font color="#3366cc">TERRA</font> Systemhaus<br/><p>vertreten durch den Geschäftsführer</p><b>MBA, Dipl.-Ing. (FH) Bernd Drahola</b> <p><b>Kontakt:</b></p>Kirchstrasse 10<br/>D-73278 Schlierbach (Württ.)<br/>Tel: 07021/7242851<br/>Fax: 07021/7242852<br/><br/>E-Mail: <a href="mailto:info@digiterra.de"><strong><font color="#000000">info@digiterra.de</font></strong></a><br/>Internet: <a href="http://www.digiterra.de/" target="_blank"><strong><font color="#000000">www.digiterra.de</font></strong></a></td></tr>');
      $('#allrights').append('<font face="tahoma" color="#6B6666" style="font-size: 8pt">Alle Rechte vorbehalten.</font>');
      $('#attribute').append('<p id="innerAtt" style="margin:10px"><b>Vielen Dank für den Besuch auf unsere Seite!</b>  </p><p id="P1" style="margin:10px"><img src="images/ajax-loader.gif" style=" position :relative; margin-left:40px;" alt="Search"/> <br/><b>Bitte warten Sie einen Moment!</b></p>');

      //tostartsite = "<< Zurück zur Startseite";
      tostartsite = "<< Startseite";
      back1 = "< Zurück";
      searchresult = "Suchergebnisse:";
      text4Route = "(Straßenname, PLZ, Stadt)";
      startPoint="VON";
      endPoint="NACH";
      moreInfo = "mehr Info";
      all = "Alle Kategorien";
  } 
  else if (lang_en != -1){
      $('#tab1').append(tabSearchEN);
      $('#tab3').append(tabImpEN);
      $('#searchheader').append(tabSearchEN);
      $('#impheader').append(tabImpEN);
      $('#streetsearch').append(seach4StreetEN);
      $('#allsearch').append(seach4AllEN);
      $('#impressum').append('<tr><td colspan="1" rowspan="1"/></tr><tr><td colspan="1" rowspan="1"><img src="images/logo_digiterra.png" alt="logo" style=" width: 190px; height:150px"/></td></tr><tr><th align="left">Publisher</th></tr><tr><td colspan="1" rowspan="1"><font color="#009933">DIGI</font><font color="#3366cc">TERRA</font> Systemhaus<br/><p>Represented by the Board of Management</p><b>MBA, Dipl.-Ing. (FH) Bernd Drahola</b><p><b>Contact:</b></p>Kirchstrasse 10<br/>D-73278 Schlierbach (Württ.)<br/>Tel: +49/(0)7021/7242851<br/>Fax: +49/(0)7021/7242852<br/><br/>E-Mail: <a href="mailto:info@digiterra.de"><strong><font color="#000000">info@digiterra.de</font></strong></a><br/>Internet: <a href="http://www.digiterra.de/" target="_blank"><strong><font color="#000000">www.digiterra.de</font></strong></a></td></tr>');
      $('#allrights').append('<font face="tahoma" color="#6B6666" style="font-size: 8pt"> All rights reserved.</font>');
      $('#attribute').append('<p id="innerAtt" style="margin:10px"><b>Thank you for visiting our page!</b>  </p><p id="P1" style="margin:10px"><img src="images/ajax-loader.gif" style=" position :relative; margin-left:40px;" alt="Search"/> <br/><b>Please wait a moment!</b></p>');


     // tostartsite = "<< Back to Start Page";
      tostartsite = "<< Start Page";
      back1 = "< Back";
      searchresult = "Search Result";
      text4Route = "(Street Address, City, ZIP Code)";
      startPoint = "FROM";
      endPoint = "TO";
      moreInfo = "more Info";
      all = "All Categories";
  }
  else if ((lang_de != -1) && (lang_en != -1)) {

      $('#tab1').append(tabSearchEN);
      $('#tab3').append(tabImpEN);
      $('#searchheader').append(tabSearchEN);
      $('#impheader').append(tabImpEN);
      $('#streetsearch').append(seach4StreetEN);
      $('#allsearch').append(seach4AllEN);
      $('#impressum').append('<tr><td colspan="1" rowspan="1"/></tr><tr><td colspan="1" rowspan="1"><img src="images/logo_digiterra.png" alt="logo" style=" width: 190px; height:150px"/></td></tr><tr><th align="left">Publisher</th></tr><tr><td colspan="1" rowspan="1"><font color="#009933">DIGI</font><font color="#3366cc">TERRA</font> Systemhaus<br/><p>Represented by the Board of Management</p><b>MBA, Dipl.-Ing. (FH) Bernd Drahola</b><p><b>Contact:</b></p>Kirchstrasse 10<br/>D-73278 Schlierbach (Württ.)<br/>Tel: 07021/7242851<br/>Fax: 07021/7242852<br/><br/>E-Mail: <a href="mailto:info@digiterra.de"><strong><font color="#000000">info@digiterra.de</font></strong></a><br/>Internet: <a href="http://www.digiterra.de/" target="_blank"><strong><font color="#000000">www.digiterra.de</font></strong></a></td></tr>');
      $('#allrights').append('<font face="tahoma" color="#6B6666" style="font-size: 8pt"> All rights reserved.</font>');
      $('#attribute').append('<p id="innerAtt" style="margin:10px"><b>Thank you for visiting our page!</b>  </p><p id="P1" style="margin:10px"><img src="images/ajax-loader.gif" style=" position :relative; margin-left:40px;" alt="Search"/> <br/><b>Please wait a moment!</b></p>');

     // tostartsite = "<< Back to Start Page";
      tostartsite = "<< Start Page";
      back1 = "< Back";
      searchresult = "Search Result";
      text4Route = "(Street Address, City, ZIP Code)";
      startPoint = "FROM";
      endPoint = "TO";
      moreInfo = "more Info";
      all = "All Categories";

  }
    
}

function setLangToGer() {

   // tostartsite = "<< Zurück zur Startseite";
    tostartsite = "<< Startseite";
    back1 = "<< Zurück";
    searchresult = "Suchergebnisse:";
    text4Route = "(Straßenname, PLZ, Stadt)";
    startPoint = "VON";
    endPoint = "NACH";
    moreInfo = "mehr Info";
    all = "Alle Kategorien";

    $('#tab1').html("");
    $('#tab3').html("");
    $('#streetsearch').html("");
    $('#allsearch').html("");
    $('#searchheader').html("");
    $('#impheader').html("");
    $('#alllayers').html("");
    $('#routestart').html("");
    $('#routeziel').html("");
    $('#startPoint').html("");
    $('#endPoint').html("");
    $('#impressum').html("");
    $('#allrights').html("");

        $('#tab1').append(tabSearchDE);
        $('#tab3').append(tabImpDE);
        $('#searchheader').append(tabSearchDE);
        $('#impheader').append(tabImpDE);
        $('#streetsearch').append(seach4StreetDE);
        $('#allsearch').append(seach4AllDE);
        $('#alllayers').append('<a href="javascript: void(0)"><font color="#0000ff"><h3>' + all + '</h3></font></a>');
        $('#routestart').append(text4Route);
        $('#routeziel').append(text4Route);
        $('#startPoint').append(startPoint);
        $('#endPoint').append(endPoint);
        $('#impressum').append('<tr><td colspan="1" rowspan="1"/></tr><tr><td colspan="1" rowspan="1"><img src="images/logo_digiterra.png" alt="logo" style=" width: 190px; height:150px"/></td></tr><tr><th align="left">Herausgeber</th></tr><tr><td colspan="1" rowspan="1"><font color="#009933">DIGI</font><font color="#3366cc">TERRA</font> Systemhaus<br/><p>vertreten durch den Geschäftsführer</p><b>MBA, Dipl.-Ing. (FH) Bernd Drahola</b> <p><b>Kontakt:</b></p>Kirchstrasse 10<br/>D-73278 Schlierbach (Württ.)<br/>Tel: 07021/7242851<br/>Fax: 07021/7242852<br/><br/>E-Mail: <a href="mailto:info@digiterra.de"><strong><font color="#000000">info@digiterra.de</font></strong></a><br/>Internet: <a href="http://www.digiterra.de/" target="_blank"><strong><font color="#000000">www.digiterra.de</font></strong></a></td></tr>');
        $('#allrights').append('<font face="tahoma" color="#6B6666" style="font-size: 8pt">Alle Rechte vorbehalten.</font>');

    } 

    function setLangToEng() {

        //tostartsite = "<< Back to Start Page";
        tostartsite = "<< Start Page";
        back1 = "<< Back";
        searchresult = "Search Result";
        text4Route = "(Street Address, City, ZIP Code)";
        startPoint = "FROM";
        endPoint = "TO";
        moreInfo = "more Info";
        all = "All Categories";

        $('#tab1').html("");
        $('#tab3').html("");
        $('#streetsearch').html("");
        $('#allsearch').html("");
        $('#searchheader').html("");
        $('#impheader').html("");
        $('#alllayers').html("");
        $('#routestart').html("");
        $('#routeziel').html("");
        $('#startPoint').html("");
        $('#endPoint').html("");
        $('#impressum').html("")
        $('#allrights').html("");

        $('#tab1').append(tabSearchEN);
        $('#tab3').append(tabImpEN);
        $('#searchheader').append(tabSearchEN);
        $('#impheader').append(tabImpEN);
        $('#streetsearch').append(seach4StreetEN);
        $('#allsearch').append(seach4AllEN);
        $('#alllayers').append('<a href="javascript: void(0)"><font color="#0000ff"><h3>' + all + '</h3></font></a>');
        $('#routestart').append(text4Route);
        $('#routeziel').append(text4Route);
        $('#startPoint').append(startPoint);
        $('#endPoint').append(endPoint);
        $('#impressum').append('<tr><td colspan="1" rowspan="1"/></tr><tr><td colspan="1" rowspan="1"><img src="images/logo_digiterra.png" alt="logo" style=" width: 190px; height:150px"/></td></tr><tr><th align="left">Publisher</th></tr><tr><td colspan="1" rowspan="1"><font color="#009933">DIGI</font><font color="#3366cc">TERRA</font> Systemhaus<br/><p>Represented by the Board of Management</p><b>MBA, Dipl.-Ing. (FH) Bernd Drahola</b><p><b>Contact:</b></p>Kirchstrasse 10<br/>D-73278 Schlierbach (Württ.)<br/>Tel: +49/(0)7021/7242851<br/>Fax: +49/(0)7021/7242852<br/><br/>E-Mail: <a href="mailto:info@digiterra.de"><strong><font color="#000000">info@digiterra.de</font></strong></a><br/>Internet: <a href="http://www.digiterra.de/" target="_blank"><strong><font color="#000000">www.digiterra.de</font></strong></a></td></tr>');
        $('#allrights').append('<font face="tahoma" color="#6B6666" style="font-size: 8pt"> All rights reserved.</font>');

    }

   
      function navi() {
          myLayout = $('body').layout({
          west__applyDefaultStyles: false
        , fxName: "slide"
        , fxSpeed: "slow"
        , west__size: 350
		, west__spacing_closed: 20
		, west__togglerLength_closed: "90%"
        , west__opacity: 1
        , west__maxSize: 500
        , west__minSize: 333
        , west__initClosed: false
		, west__togglerAlign_closed: "center"
		, west__togglerContent_closed: "M<BR>E<BR>N<BR>U"
		, west__togglerTip_closed: "Open & Pin Menu"
		, west__sliderTip: "Slide Open Menu"
      //, west__slideTrigger_open: "mouseover"
        });          
}  
  

  function tabs() {
      $("#tabs").tabs();
      $(".tabs-bottom .ui-tabs-nav, .tabs-bottom .ui-tabs-nav > *")
			.removeClass("ui-corner-all ui-corner-top")
			.addClass("ui-corner-bottom");
  }
        

      function AjaxFailed(result) {
          alert("Fehler! " + result.status + ' ' + result.statusText);
      }

  


      function getTempObj(result, obj) {
          var countlayers = 0;
          var found = false;

          while ((countlayers < result.length) && (!found)) {

              var contol4GeomTyp = 0;

              $.each(result[countlayers], function (layername, layervalue) {


                  if (layervalue[contol4GeomTyp].Type == 1) { // Überlagerung von Punktobjekte


                      var indexPinObj = 0;

                      innerend: while (indexPinObj < layervalue.length) {

                          if (obj == layervalue[indexPinObj].Name) {

                              var locationsTempObj = new Microsoft.Maps.Location(layervalue[indexPinObj].Latitude, layervalue[indexPinObj].Longitude);
                              var options = { icon: "images/found.gif",
                                  anchor: new Microsoft.Maps.Point(0, 0)
                              };
                              var pins = map.AddPushpin(locationsTempObj, options);
                              map.entities.push(pins);
                              zoomtoLocation = locationsTempObj;
                              if (layervalue[indexPinObj].Address != "") {
                                  startlocation = layervalue[indexPinObj].Address;
                              }
                              else {
                                  startlocation = "";
                              }
                              type = layervalue[contol4GeomTyp].Type;
                              found = true;
                              break innerend;
                              return false;
                          } // end if  
                          indexPinObj++

                      } //end while

                  } //end if            


                  else if (layervalue[contol4GeomTyp].Type == 2) { // Überlagerung von Linienobjekte

                      var indexLineObj = 0;
                      var line = new Array();

                      innerend: while (indexLineObj < layervalue.length) {


                          if (obj == layervalue[indexLineObj].Name) {

                              var countBranches;




                              for (countBranches = 0; countBranches < layervalue[indexLineObj].Locations.length; countBranches++) {
                                  var countCoords;
                                  var locationsLineTempObj = new Array();
                                  for (countCoords = 0; countCoords < layervalue[indexLineObj].Locations[countBranches].length; countCoords++) {
                                      locationsLineTempObj[countCoords] = new Microsoft.Maps.Location(layervalue[indexLineObj].Locations[countBranches][countCoords].lat, layervalue[indexLineObj].Locations[countBranches][countCoords].lon);
                                  }

                                  var options = {
                                      strokeColor: new Microsoft.Maps.Color(layervalue[indexLineObj].Opacity, 173, 255, 47),
                                      strokeThickness: layervalue[indexLineObj].SizeLine, visible: true
                                  };

                                  line[countBranches] = map.AddPolyline(locationsLineTempObj, options);
                                  map.entities.push(line[countBranches]);

                                  zoomtoLocationLine = Microsoft.Maps.LocationRect.fromLocations(locationsLineTempObj);

                              } // end innere for


                              type = layervalue[contol4GeomTyp].Type;
                              if (layervalue[indexLineObj].Address != "") {
                                  startlocation = layervalue[indexLineObj].Address;
                              }
                              else {
                                  startlocation = "";
                              }


                              found = true;
                              break innerend;
                              return false;


                          } // end if

                          indexLineObj++
                      } // end innerwhile

                  } // end else if


                  else if (layervalue[contol4GeomTyp].Type == 3) {    // Überlagerung von Flächenobjekte

                      var polygon = new Array();
                      var indexAreaObj = 0;
                      innerend: while (indexAreaObj < layervalue.length) {

                          if (obj == layervalue[indexAreaObj].Name) {

                              var countBranches;
                              for (countBranches = 0; countBranches < layervalue[indexAreaObj].Locations.length; countBranches++) {
                                  var countCoords;
                                  var locationsPolygonTempObj = new Array();
                                  for (countCoords = 0; countCoords < layervalue[indexAreaObj].Locations[countBranches].length; countCoords++) {
                                      locationsPolygonTempObj[countCoords] = new Microsoft.Maps.Location(layervalue[indexAreaObj].Locations[countBranches][countCoords].lat, layervalue[indexAreaObj].Locations[countBranches][countCoords].lon);
                                  }

                                  var optionsArea = {
                                      fillColor: new Microsoft.Maps.Color(layervalue[indexAreaObj].Opacity, 173, 255, 47),
                                      strokeColor: new Microsoft.Maps.Color(layervalue[indexAreaObj].Opacity, layervalue[indexAreaObj].AreaForegroundRed, layervalue[indexAreaObj].AreaForegroundGreen, layervalue[indexAreaObj].AreaForegroundBlue),
                                      strokeThickness: layervalue[indexAreaObj].AreaLineSize
                                  };

                                  polygon[countBranches] = map.AddPolygon(locationsPolygonTempObj, optionsArea);

                                  map.entities.push(polygon[countBranches]);

                                  zoomtoLocationArea = Microsoft.Maps.LocationRect.fromLocations(locationsPolygonTempObj);


                              } // end for

                              type = layervalue[contol4GeomTyp].Type;
                              if (layervalue[indexAreaObj].Address != "") {
                                  startlocation = layervalue[indexAreaObj].Address;

                              }
                              else {
                                  startlocation = "";
                              }


                              found = true;
                              break innerend;
                              return false;


                          } //end if

                          indexAreaObj++
                      } // end while 


                  } //end else    

              }); //$.each

              countlayers++;
          } //end while

      }; // End Function




      function getAllObj(result) {

          $("#de").bind('click', setLangToGer);
          $("#en").bind('click', setLangToEng);

          var countlayers;

          var logoTopf = new Array();
          var found = false;
          var ArrayinfoBox = new Array();

          for (countlayers = 0; countlayers < result.length; countlayers++) {
              var contol4GeomTyp = 0;

              $.each(result[countlayers], function (layername, layervalue) {

                  var exists = $.inArray(layername, layers);
                  if (exists == -1) {
                      layers.push(layername);
                  }

                  if (layervalue[contol4GeomTyp].Type == 1) { // Überlagerung von Punktobjekte

                      var indexPinObj;
                      for (indexPinObj = 0; indexPinObj < layervalue.length; indexPinObj++) {

                          //-------------------create legende content---------------------

                          var legend = $("<table></table>").attr({ id: 'legende', border: '0', width: '100%' });
                          var beschriftung;
                          var isvorhanden = $.inArray(layervalue[indexPinObj].Icon, logoTopf);
                          if (isvorhanden == -1) {

                              logoTopf.push(layervalue[indexPinObj].Icon);

                              var labels = logoTopf[logoTopf.length - 1];

                              var teilStrFeld = labels.split("/");
                              var countteilStr;
                              for (countteilStr = 0; countteilStr < teilStrFeld.length; countteilStr++) {

                                  var dot = teilStrFeld[teilStrFeld.length - 1].split(".")
                                  var teilStr = dot[0];
                                  var erstbstb = teilStr.substring(0, 1);
                                  var letzteteil = teilStr.substring(1, teilStr.length);
                                  var erstbstbgross = erstbstb.toUpperCase()
                                  beschriftung = erstbstbgross + letzteteil;

                                  var unterstrich = beschriftung.search(/_.+/);

                                  if (unterstrich != -1) {

                                      var teilStrFeld2 = beschriftung.split("_")
                                      var bsrtUtsr = "";
                                      var countteilStrFeld2;
                                      for (countteilStrFeld2 = 0; countteilStrFeld2 < teilStrFeld2.length; countteilStrFeld2++) {
                                          bsrtUtsr = bsrtUtsr + " " + teilStrFeld2[countteilStrFeld2];
                                      }
                                      beschriftung = bsrtUtsr;
                                  }
                              }

                              var tr1 = $("<tr></tr>");
                              var td1leg = $("<td></td>").attr({ id: 'icons', width: '30' });
                              var td2leg = $("<td></td>").attr({ id: 'beschriftung' });
                              var icons = $("<img>").attr('src', layervalue[indexPinObj].Icon);
                              td1leg.append(icons);
                              td2leg.append(beschriftung);

                              tr1.append(td1leg);
                              tr1.append(td2leg);

                              legend.append(tr1);


                              if (durchlauf == 0) {

                                  $("#legend").append(legend);

                              }

                          }

                         var shortDesc= getInfoBox(result, layervalue[indexPinObj].Name);
                         var pin = layervalue[indexPinObj];
                         readoutPoints(pin, shortDesc);
 

                     } // end For   
 

                  } //end if            

                   
                  else if (layervalue[contol4GeomTyp].Type == 2) { // Überlagerung von Linienobjekte

                      var indexLineObj;
                      var line = new Array();
                      for (indexLineObj = 0; indexLineObj < layervalue.length; indexLineObj++) {


                          //-------------------create legende content---------------------

                          var legend = $("<table></table>").attr({ id: 'legende', border: '0', width: '100%' });

                          var beschriftung;
                          var isvorhanden = $.inArray(layervalue[indexLineObj].Name, logoTopf);
                          if (isvorhanden == -1) {

                              logoTopf.push(layervalue[indexLineObj].Name);

                              var labels = logoTopf[logoTopf.length - 1];

                              var rot = layervalue[indexLineObj].LineForegroundRed;
                              var gruen = layervalue[indexLineObj].LineForegroundGreen;
                              var blau = layervalue[indexLineObj].LineForegroundBlue;

                              var tr1 = $("<tr></tr>");


                              var td1leg = $("<td></td>").attr({ bgcolor: "rgb(" + rot + ", " + gruen + ", " + blau + ")", width: '30' });
                              var td2leg = $("<td></td>").attr({ id: 'beschriftung' });

                              td2leg.append(labels);

                              tr1.append(td1leg);
                              tr1.append(td2leg);

                              legend.append(tr1);


                              if (durchlauf == 0) {
                                  $("#legend").append(legend);
                              }
                          }


                                  var shortDesc = getInfoBox(result, layervalue[indexLineObj].Name);
                                  var countBranches;
                                  var lineObject = layervalue[indexLineObj];
                                  readoutLines(countBranches, lineObject, shortDesc, line);


                      } // end for



                  } // end else if


                  else if (layervalue[contol4GeomTyp].Type == 3) {    // Überlagerung von Flächenobjekte


                      var polygon = new Array();
                      var indexAreaObj;

                      for (indexAreaObj = 0; indexAreaObj < layervalue.length; indexAreaObj++) {

                          //-------------------create legende content---------------------

                          var legend = $("<table></table>").attr({ id: 'legende', border: '0', width: '100%', height: '35' });
                          var beschriftung;
                          var isvorhanden = $.inArray(layervalue[indexAreaObj].Name, logoTopf);
                          if (isvorhanden == -1) {

                              logoTopf.push(layervalue[indexAreaObj].Name);

                              var labels = logoTopf[logoTopf.length - 1];

                              var rot = layervalue[indexAreaObj].AreaBackgroundRed;
                              var gruen = layervalue[indexAreaObj].AreaBackgroundGreen;
                              var blau = layervalue[indexAreaObj].AreaBackgroundBlue;
                              var tr1 = $("<tr></tr>");
                              var td1leg = $("<td></td>").attr({ bgcolor: "rgb(" + rot + ", " + gruen + ", " + blau + ")", width: '30' });
                              var td2leg = $("<td></td>").attr({ id: 'beschriftung' });

                              td2leg.append(labels);

                              tr1.append(td1leg);
                              tr1.append(td2leg);

                              legend.append(tr1);

                              if (durchlauf == 0) {

                                  $("#legend").append(legend);

                              }
                          }

                          var shortDesc = getInfoBox(result, layervalue[indexAreaObj].Name);
                          var countBranches;
                          var polygonindex = layervalue[indexAreaObj];
                          readoutPolygons(countBranches, polygonindex, shortDesc, polygon);

                      } // end for 



                  } //end else    

                  contol4GeomTyp = contol4GeomTyp + 1;

              });      //$.each

          } //end for mit countlayers

          durchlauf++;


          //alert("latitudefeld: " + latitudefeld);
        var latsumme = 0;
        var lonsumme = 0;
        var anzahlLat;

        for (anzahlLat= 0; anzahlLat < latitudefeld.length; anzahlLat++) {
            latsumme = latsumme + latitudefeld[anzahlLat];
            lonsumme = lonsumme + longitudefeld[anzahlLat];
             }

        var latmittel = latsumme / latitudefeld.length;
        var lonmittel = lonsumme / latitudefeld.length;
        mittelpunkt = new Microsoft.Maps.Location(latmittel, lonmittel);
        var locations1 = new Microsoft.Maps.Location(latitudefeld.max(), longitudefeld.max());
        var locations2 = new Microsoft.Maps.Location(latitudefeld.min(), longitudefeld.min());
        startbound = Microsoft.Maps.LocationRect.fromCorners(locations2, locations1);
      
      }; // End Function   


  function findObjs(result, obj) {

     
       var countlayers = 0;
       var found = false;

       for (var i = 0; i < back.length; i++) {
           back.pop();
       }
       back.push(obj);
        
    //  $("#searchButton1").unbind('click');
    //  $("#searchButton1").bind('click', function () {
      
       map.entities.clear();
       map.setView({bounds: startbound});
          $('#attribute').html("");

          var startsite = $("<table></table>").attr({ id: 'startsite', border: '0' });
          startsite.css({ "margin-left": "10px", "margin-right": "10px" });
          var startsiterow = $("<tr></tr>");
          var startsitehead = $('<th></th>').attr({ "valign": "top", "height": "30" });
          startsitehead.append('<a href="javascript: void(0)"><font color="#0000ff">' + tostartsite + '</font></a>');
          startsiterow.append(startsitehead);

          var erg = $("<tr></tr>");
          var ergebnis = $('<th></th>').attr({ "valign": "bottom", "align": "left", "height": "30" });
          ergebnis.append('<a><font color="#0000ff">' + searchresult + '</font></a>');
          erg.append(ergebnis);

          startsite.append(startsiterow);
          startsite.append(erg);
          $('#attribute').append(startsite);

          startsitehead.addClass('clickable').click(function () {
              $("#searchfieldall").val("");
              findElement(result);
          });

        
          while ((countlayers < result.length) && (!found)) {

              var contol4GeomTyp = 0;

              $.each(result[countlayers], function (layername, layervalue) {

                  if (layervalue[contol4GeomTyp].Type == 1) { // Überlagerung von Punktobjekte


                      var indexPinObj = 0;

                      innerend: while (indexPinObj < layervalue.length) {


                          var lower = obj.toLowerCase();
                          var ebstb = obj.charAt(0);
                          var upper = obj.charAt(0).toUpperCase();
                          var upperebstb = obj.replace(ebstb, upper);

                          var substrlower = layervalue[indexPinObj].Name.indexOf(lower);
                          var substrupper = layervalue[indexPinObj].Name.indexOf(upperebstb);
                          var normal = layervalue[indexPinObj].Name.indexOf(obj);


                          if ((obj == layervalue[indexPinObj].Name) || (substrlower != -1) || (substrupper != -1) || (normal != -1)) {

                              if (countlayers < result.length) {
                                  var shortDesc = getInfoBox(result, layervalue[indexPinObj].Name);

                                  var pin = layervalue[indexPinObj];
                                  readoutPoints(pin, shortDesc);

                                  getObjList(result, layervalue[indexPinObj].Name);


                              } // end if
                          } // end if  
                          indexPinObj++
                      } //end inner while
                  } //end if            


                  else if (layervalue[contol4GeomTyp].Type == 2) { // Überlagerung von Linienobjekte

                      var indexLineObj = 0;
                      var line = new Array();


                      innerend2: while (indexLineObj < layervalue.length) {


                          var lower = obj.toLowerCase();
                          var ebstb = obj.charAt(0);
                          var upper = obj.charAt(0).toUpperCase();
                          var upperebstb = obj.replace(ebstb, upper);

                          var substrlower = layervalue[indexLineObj].Name.indexOf(lower);
                          var substrupper = layervalue[indexLineObj].Name.indexOf(upperebstb);
                          var normal = layervalue[indexLineObj].Name.indexOf(obj);


                          if ((obj == layervalue[indexLineObj].Name) || (substrlower != -1) || (substrupper != -1) || (normal != -1)) {


                              if (countlayers < result.length) {

                                  var shortDesc = getInfoBox(result, layervalue[indexLineObj].Name);
                                  var countBranches;
                                  var lineObject = layervalue[indexLineObj];
                                  readoutLines(countBranches, lineObject, shortDesc, line);

                                  getObjList(result, layervalue[indexLineObj].Name);
                              } // end if



                          } // end if
                          indexLineObj++
                      } // end while

                  } // end else if


                  else if (layervalue[contol4GeomTyp].Type == 3) {    // Überlagerung von Flächenobjekte

                      var polygon = new Array();
                      var indexAreaObj = 0;

                      innerend2: while (indexAreaObj < layervalue.length) {

                          var lower = obj.toLowerCase();
                          var ebstb = obj.charAt(0);
                          var upper = obj.charAt(0).toUpperCase();
                          var upperebstb = obj.replace(ebstb, upper);

                          var substrlower = layervalue[indexAreaObj].Name.indexOf(lower);
                          var substrupper = layervalue[indexAreaObj].Name.indexOf(upperebstb);
                          var normal = layervalue[indexAreaObj].Name.indexOf(obj);


                          if ((obj == layervalue[indexAreaObj].Name) || (substrlower != -1) || (substrupper != -1) || (normal != -1)) {


                              if (countlayers < result.length) {

                                  var shortDesc = getInfoBox(result, layervalue[indexAreaObj].Name);
                                  var countBranches;
                                  var polygonindex = layervalue[indexAreaObj];
                                  readoutPolygons(countBranches, polygonindex, shortDesc, polygon);
                                
                                  getObjList(result, layervalue[indexAreaObj].Name);


                              } // end if

                          } // end if

                          indexAreaObj++
                      } // end while

                  } //end else    

              });//$.each

              countlayers++;

          } //end while

          if (map.entities.getLength() == 1) {
              
              if (map.entities.get(0).toString() == "[Pushpin]") {
                  var locs = map.entities.get(0).getLocation();
                  map.setView({ center: locs, zoom: 17 });
              }
              else if (map.entities.get(0).toString() == "[Polyline]") {
                  zoomtoLocationLine = Microsoft.Maps.LocationRect.fromLocations(locationsLineGlob);
                  map.setView({ bounds: zoomtoLocationLine });
              }
              if (map.entities.get(0).toString() == "[Polygon]") {
                  zoomtoLocationArea = Microsoft.Maps.LocationRect.fromLocations(locationsPolygonGlob);
                  map.setView({ bounds: zoomtoLocationArea });
              }
              
          }
          
     // });//end click  

  }; // End Function



//########################################################################################################################################

      function getLayer(result,  kategorie) {
          
          var countlayers;
          var found = false;
        
        for (var i = 0; i < back.length; i++) {
        back.pop();
        } 
        back.push(kategorie);

          for (countlayers = 0; countlayers < result.length; countlayers++) {
              var contol4GeomTyp = 0;

              $.each(result[countlayers], function (layername, layervalue) {

                  if (kategorie == layername) {

                      if (layervalue[contol4GeomTyp].Type == 1) { // Überlagerung von Punktobjekte

                          var indexPinObj;
                          for (indexPinObj = 0; indexPinObj < layervalue.length; indexPinObj++) {

                              var shortDesc = getInfoBox(result, layervalue[indexPinObj].Name);
                              var pin = layervalue[indexPinObj];
                              readoutPoints(pin, shortDesc);

                          } // end For   

                      } //end if            


                      else if (layervalue[contol4GeomTyp].Type == 2) { // Überlagerung von Linienobjekte

                          var indexLineObj;
                          var line = new Array();

                          for (indexLineObj = 0; indexLineObj < layervalue.length; indexLineObj++) {

                              var shortDesc = getInfoBox(result, layervalue[indexLineObj].Name);
                              var countBranches;
                              var lineObject = layervalue[indexLineObj];
                              readoutLines(countBranches, lineObject, shortDesc, line);


                          } // end for

                      } // end else if


                      else if (layervalue[contol4GeomTyp].Type == 3) {    // Überlagerung von Flächenobjekte

                          var polygon = new Array();
                          var indexAreaObj;

                          for (indexAreaObj = 0; indexAreaObj < layervalue.length; indexAreaObj++) {

                              var shortDesc = getInfoBox(result, layervalue[indexAreaObj].Name);
                              var countBranches;
                              var polygonindex = layervalue[indexAreaObj];
                              readoutPolygons(countBranches, polygonindex, shortDesc, polygon);

                          } // end for 
                            
                      } //end else    

                      contol4GeomTyp = contol4GeomTyp + 1;
                      return false;
                  } //end if

              }); //$.each

          } //end for mit countlayers  

      }; // End Function


      function reducePicSize(picture) {
          picture.load(function () {
              var getWidth = picture.width();
              var getHeight = picture.height();
              if (picture.width() > picture.height()) {
                  picture.attr({ height: '150', width: '200' });
              }
              else {
                  picture.attr({ height: '200', width: '150' });
              }
          });
      }

//################################################################################################################################################
         function createInfoWindow(result, objname) {
         
          $('#attribute').html("");
          var countlayers=0;
          var found = false;
          var startsite = $("<table></table>").attr({ id: 'startsite', border: '0'});
          //  startsite.css({ "margin-left": "10px", "margin-right": "10px" });
          var startsiterow = $("<tr></tr>");
          var erg= $("<tr></tr>");
          var startsitehead = $('<th></th>').attr({ "valign": "left", "height": "30" });
          var zwischenlage = $('<th></th>').attr({ "height": "30", "width": "10" });
          var einszurueck = $('<th></th>').attr({ "id": "einszurueck", "valign": "right", "height": "30" });
          startsitehead.append('<a href="javascript: void(0)"><font color="#0000ff">' + tostartsite + '</font></a>');
          einszurueck.append('<a href="javascript: void(0)"><font color="#0000ff">' + back1 + '</font></a>');

          startsiterow.append(startsitehead);
          startsiterow.append(zwischenlage);
          startsiterow.append(einszurueck);
          startsite.append(startsiterow);

          $('#attribute').append(startsite);

          startsitehead.addClass('clickable').click(function () {
              $("#searchfieldall").val("");
              findElement(result);
          });

          einszurueck.addClass('clickable').click(function () {

              var objektname = $.inArray(back[back.length - 1], layers);

              if (objektname != -1) {
                  map.entities.clear();
                  getLayer(result, back[back.length - 1]);
                  getDatafromLayer(result, back[back.length - 1], objektList);
              }
              else {
                  findObjs(result, back[back.length - 1]);
              }

          });


          while ((countlayers < result.length) && (!found)) {
              var contol4GeomTyp = 0;

              $.each(result[countlayers], function (layername, layervalue) {

                  if (layervalue[contol4GeomTyp].Type == 1) {

                      var indexPinObj = 0;

                      innerend: while (indexPinObj < layervalue.length) {

                          if (objname == layervalue[indexPinObj].Name) {

                              //-------------------create info content---------------------

                              var table = $("<table></table>").attr({ id: 'table4info', border: '0' });
                              var title = layervalue[indexPinObj].Name;
                              var trh = $("<tr></tr>");
                              var trh2 = $("<tr></tr>");
                              var th1 = $('<th colspan="2"></th>');
                              var tdpic = $('<td colspan="2"></td>');
                             // var td = $('');
                              if (layervalue[indexPinObj].Picture != "") {
                                  var a = $('<a href="javascript: void(0)"></a>');

                                  var picture = $("<img/>").attr({ id: "pictureid", alt: "fotos", src: layervalue[indexPinObj].Picture });

                                  reducePicSize(picture);
                                  a.append(picture);
                                  th1.append(title);
                                  tdpic.append(a);
                                  trh.append(th1);
                                  trh2.append(tdpic);
                                  table.append(trh2);
                                  table.append(trh);

                                  a.click(function () {
                                      $.fancybox({
                                          'padding': 30,
                                          'href': layervalue[indexPinObj].Picture,
                                          'title': layervalue[indexPinObj].Name,
                                          'titlePosition': 'inside',
                                          'transitionIn': 'elastic',
                                          'hideOnContentClick': true,
                                          'transitionOut': 'elastic'
                                      });
                                  });

                              }
                              else {

                                  th1.append(title);
                                  tdpic.append("");
                                  trh.append(th1);
                                  trh2.append(tdpic);
                                  table.append(trh);

                              }

                              $.each(layervalue[indexPinObj], function (name, value) {

                                  var trd = $("<tr></tr>");
                                 // var td1 = $("<td></td>");
                                  var td1 = $("<td></td>").attr('valign','top');
                                  var td2 = $("<td></td>").attr('valign', 'top');

                                  trd.css('height', '20');
                                  td1.css('height', '20');
                                  td2.css({ 'height': '20', 'word-break': 'break-all' });
                                  if (name == "Type") {

                                      found = true;
                                      return false;
                                  }
                                  else if (value == "") {

                                  }
                                  else {
                                      if ((name == "www") || (name == "Icon") || name == "Picture" || name == "PictureURL" || name == "ID" || name == "OBJID") {

                                          if (name == "www") {
                                              var http = value.slice(0, 7);

                                              if (http != "http://") {

                                                  value = "<a href=" + "http://" + value + ' target="_blank"' + '><font color="#0000ff">' + value + '</font></a>';

                                                  td1.append(name);
                                                  td2.append(value);
                                                  trd.append(td1);
                                                  trd.append(td2);
                                                  table.append(trd);

                                              }
                                              else {
                                                  value = "<a href=" + value + ' target="_blank"' + '><font color="#0000ff">' + value + '</font></a>';

                                                  td1.append(name);
                                                  td2.append(value);
                                                  trd.append(td1);
                                                  trd.append(td2);
                                                  table.append(trd);
                                              }
                                          }


                                      }
                                      else {

                                          td1.append(name);
                                          td2.append(value);
                                          trd.append(td1);
                                          trd.append(td2);
                                          table.append(trd);
                                      }
                                  }


                              });

                              $('#attribute').append(table);

                              found = true;
                              break innerend;
                              return false;

                          } // end if  

                          indexPinObj++
                      } // end For   

                  } //end if            


                  else if (layervalue[contol4GeomTyp].Type == 2) {

                      var indexLineObj = 0;

                      innerendtyp2: while (indexLineObj < layervalue.length) {

                          if (objname == layervalue[indexLineObj].Name) {

                              //-------------------create info content---------------------

                              var table = $("<table></table>").attr({ id: 'table4info', border: '0' });

                              var title = layervalue[indexLineObj].Name;
                              var trh = $("<tr></tr>");
                              var trh2 = $("<tr></tr>");
                              var th1 = $('<th colspan="2"></th>');
                              var tdpic = $('<td colspan="2"></td>').css({ height: '100' });

                              if (layervalue[indexLineObj].Picture != "") {
                                  var a = $('<a href="javascript: void(0)"></a>');

                                  var picture = $("<img/>").attr({ id: "pictureid", alt: "fotos", src: layervalue[indexLineObj].Picture });

                                  reducePicSize(picture);


                                  a.append(picture);
                                  th1.append(title);
                                  tdpic.append(a);
                                  trh.append(th1);
                                  trh2.append(tdpic);
                                  table.append(trh2);
                                  table.append(trh);


                                  a.click(function () {

                                      $.fancybox({

                                          'padding': 30,
                                          'href': layervalue[indexLineObj].Picture,
                                          'title': layervalue[indexLineObj].Name,
                                          'titlePosition': 'inside',
                                          'transitionIn': 'elastic',
                                          'hideOnContentClick': true,
                                          'transitionOut': 'elastic'
                                      });
                                  });

                              }
                              else {

                                  th1.append(title);
                                  tdpic.append("");
                                  trh.append(th1);
                                  trh2.append(tdpic);
                                  table.append(trh);

                              }

                              $.each(layervalue[indexLineObj], function (name, value) {

                                  if (name != "Locations") {

                                      //-------------------Infobox contents---------------------
                                      var trd = $("<tr></tr>");
                                      //var td1 = $("<td></td>");
                                      var td1 = $("<td></td>").attr('valign', 'top');
                                      var td2 = $("<td></td>").attr('valign', 'top');

                                      trd.css('height', '20');
                                      td1.css('height', '20');
                                      td2.css({ 'height': '20', 'word-break': 'break-all' });

                                      if (name == "Type") {

                                          found = true;
                                          return false;
                                      }
                                      else if (value == "") {

                                      }
                                      else {
                                          if ((name == "www") || (name == "Icon") || name == "Picture" || name == "PictureURL" || name == "ID" || name == "OBJID") {

                                              if (name == "www") {
                                                  var http = value.slice(0, 7);

                                                  if (http != "http://") {

                                                      value = "<a href=" + "http://" + value + ' target="_blank"' + '><font color="#0000ff">' + value + '</font></a>';

                                                      td1.append(name);
                                                      td2.append(value);
                                                      trd.append(td1);
                                                      trd.append(td2);
                                                      table.append(trd);

                                                  }
                                                  else {
                                                      value = "<a href=" + value + ' target="_blank"' + '><font color="#0000ff">' + value + '</font></a>';

                                                      td1.append(name);
                                                      td2.append(value);
                                                      trd.append(td1);
                                                      trd.append(td2);
                                                      table.append(trd);
                                                  }
                                              }


                                          }
                                          else {

                                              td1.append(name);
                                              td2.append(value);
                                              trd.append(td1);
                                              trd.append(td2);
                                              table.append(trd);
                                          }
                                      }
                                  }

                              });

                              $('#attribute').append(table);

                              found = true;
                              break innerendtyp2;
                              return false;

                          } // end if  
                          indexLineObj++
                      } // end while

                  } // end else if

                  else if (layervalue[contol4GeomTyp].Type == 3) {

                      var indexAreaObj = 0;

                      innerendtyp3: while (indexAreaObj < layervalue.length) {

                          if (objname == layervalue[indexAreaObj].Name) {


                              //-------------------create info content---------------------

                              var table = $("<table></table>").attr({ id: 'table4info', border: '0' });

                              var title = layervalue[indexAreaObj].Name;
                              var trh = $("<tr></tr>");
                              var trh2 = $("<tr></tr>");
                              var th1 = $('<th colspan="2"></th>');
                              var tdpic = $('<td colspan="2"></td>').css({ height: '100' });

                              if (layervalue[indexAreaObj].Picture != "") {
                                  var a = $('<a href="javascript: void(0)"></a>');
                                  var picture = $("<img/>").attr({ id: "pictureid", alt: "fotos", src: layervalue[indexAreaObj].Picture });

                                  reducePicSize(picture);

                                  a.append(picture);
                                  th1.append(title);
                                  tdpic.append(a);
                                  trh.append(th1);
                                  trh2.append(tdpic);
                                  table.append(trh2);
                                  table.append(trh);


                                  a.click(function () {

                                      $.fancybox({
                                          'padding': 30,
                                          'href': layervalue[indexAreaObj].Picture,
                                          'title': layervalue[indexAreaObj].Name,
                                          'titlePosition': 'inside',
                                          'transitionIn': 'elastic',
                                          'hideOnContentClick': true,
                                          'transitionOut': 'elastic'
                                      });
                                  });

                              }
                              else {

                                  th1.append(title);
                                  tdpic.append("");
                                  trh.append(th1);
                                  trh2.append(tdpic);
                                  table.append(trh);

                              }

                              $.each(layervalue[indexAreaObj], function (name, value) {

                                  if (name != "Locations") {

                                      //-------------------Infobox contents---------------------
                                      var trd = $("<tr></tr>");
                                      // var td1 = $("<td></td>");
                                      var td1 = $("<td></td>").attr('valign', 'top');
                                      var td2 = $("<td></td>").attr('valign', 'top');
                                      trd.css('height', '20');
                                      td1.css('height', '20');
                                      td2.css({ 'height': '20', 'word-break': 'break-all' });

                                      if (name == "Type") {

                                          found = true;
                                          return false;
                                      }
                                      else if (value == "") {

                                      }
                                      else {
                                          if ((name == "www") || (name == "Icon") || name == "Picture" || name == "PictureURL" || name == "ID" || name == "OBJID") {

                                              if (name == "www") {
                                                  var http = value.slice(0, 7);

                                                  if (http != "http://") {

                                                      value = "<a href=" + "http://" + value + ' target="_blank"' + '><font color="#0000ff">' + value + '</font></a>';

                                                      td1.append(name);
                                                      td2.append(value);
                                                      trd.append(td1);
                                                      trd.append(td2);
                                                      table.append(trd);

                                                  }
                                                  else {
                                                      value = "<a href=" + value + ' target="_blank"' + '><font color="#0000ff">' + value + '</font></a>';

                                                      td1.append(name);
                                                      td2.append(value);
                                                      trd.append(td1);
                                                      trd.append(td2);
                                                      table.append(trd);
                                                  }
                                              }


                                          }
                                          else {

                                              td1.append(name);
                                              td2.append(value);
                                              trd.append(td1);
                                              trd.append(td2);
                                              table.append(trd);
                                          }
                                      }
                                  }

                              });

                              $('#attribute').append(table);

                              found = true;
                              break innerendtyp3;
                              return false;

                          } // end if  

                          indexAreaObj++
                      } // end while 

                  } //end else    


              });//$.each

              countlayers++;
          } //end for mit countlayers

      }; // End Function   



      function findElement(result) {  
          if (map.entities.getLength()!= 0) {
              //alert("map.entitiesLength" + map.entities.getLength());
              map.entities.clear();
          }
         
          var categories = $("<table></table>").attr({ id: 'category', border: '0' });
          categories.css("margin", "20px");
          var feld4Obj = new Array();

          var longi;
          var lati;
          var located = false;

              $('#attribute').html("");
              categories.html("");

              var tabrow4all = $("<tr></tr>").attr("id", "row4all");
              var th4alllayer = $("<td></td>").attr({ id: 'alllayers', height: '25' });
              th4alllayer.css("font-weight", "bold");
              th4alllayer.append('<a href="javascript: void(0)"><font color="#0000ff"><h3>' + all + '</h3></font></a>');
              categories.append(th4alllayer);

              th4alllayer.addClass('clickable').click(function () {

              }); // end th4layername 

              th4alllayer.hover(function () {
                  $(this).css("background-color", "#cdc5bf");
                 // map.entities.clear();
                 
              }, function () {
                  $(this).css("background-color", "#FFFFFF");
              });


              var layerInMap = 0;
              while (layerInMap < result.length) {

                  $.each(result[layerInMap], function (layername, ObjList) {
                     
                      var tabrow1 = $("<tr></tr>").attr("id", "trow");

                      var th4layername = $("<td></td>").attr({ id: 'layernamen', height: '25', alt: layername });
                      // th4layername.css("font-weight", "bold");
                      th4layername.css("font-weight");
                      var th4value = $("<th></th>").attr({ id: 'zeilen', height: '25' });

                      th4layername.append('<a href="javascript: void(0)"><font color="#0000ff">' + layername + '</font></a>');
                      th4value.append("(" + ObjList.length + ")");

                      th4layername.addClass('clickable').click(function () {

                          map.entities.clear();
                          getLayer(result, layername);
                          getDatafromLayer(result, layername, ObjList);


                      }); // end th4layername.addClass('clickable').click(function () 


                      tabrow1.hover(function () {
                          $(this).css("background-color", "#cdc5bf");

                      }, function () {
                          $(this).css("background-color", "#FFFFFF");

                      });

                      tabrow1.append(th4layername);
                      tabrow1.append(th4value);
                      categories.append(tabrow1);

                  });

                  layerInMap++;
              } // outer while
              map.entities.clear();
              getAllObj(result);
              map.setView({ bounds: startbound });
              $('#attribute').append(categories);

               
      }   //end function



      function getDatafromLayer(result, layername, ObjList) {
           objektList = ObjList;
           $('#attribute').html("");
           // map.setView({ center: new Microsoft.Maps.Location(48.6718558012159, 9.52413880815028), zoom: 15 });
           map.setView({ bounds: startbound });
           var startsite = $("<table></table>").attr({ id: 'startsite', border: '0' });
           startsite.css({ "margin-left": "10px", "margin-right": "10px" });
           var startsiterow = $("<tr></tr>");
           var startsitehead = $('<th></th>').attr({ "valign": "top", "height": "30" });
           startsitehead.append('<a href="javascript: void(0)"><font color="#0000ff">' + tostartsite + '</font></a>');
           startsiterow.append(startsitehead);
           startsite.append(startsiterow);
           $('#attribute').append(startsite);

           startsitehead.addClass('clickable').click(function () {

               findElement(result);
           });

          var GeomObj = 0;
         
          while (GeomObj < ObjList.length) {
             
              getObjList(result, ObjList[GeomObj].Name);
              GeomObj++;

          } // end inner while

      }


         var istda = 0;
         function callRouteDialog(startlocation) {
             istda = istda + 1;
            
             if (istda <= 1) {

                 var dialogwindow = $("<div></div>").attr({ id: "dialog-modal", title: "Route" });
                 dialogwindow.css("padding-top", "20px");

                 var zenter = $("<div></div>").attr({ "align": "center", "class": "ui-widget-header" });
                 var a = $("<a></a>").attr("id", "startPoint");
                 a.text(startPoint);
                 var box1 = $("<div></div>").css({ padding: "2px", border: "thin solid #AAAAAA", margin: "5px" });
                 var ul1 = $("<ul></ul>").css("width", "100%");
                 var li1 = $("<li></li>").attr("class", "searchContainer");
                 li1.css("width", "100%");
                 var li3 = $("<li></li>");
                 var a3 = $("<a></a>").attr("id", "routestart");
                 a3.text(text4Route);

                 var box2 = $("<div></div>").attr("class", "ui-widget");
                 var input = $("<input/>").attr({ id: "from", name: "search" });
                 input.css("width", "80%");
                 var img = $("<img/>").attr({ src: "images/redpushpin.png", id: "start", alt: "Search" });
                 img.css({ 'padding-left': '5px', 'width': '20px', 'height': '20px' });


                 var zenter2 = $("<div></div>").attr({ "align": "center", "class": "ui-widget-header" });
                 var a2 = $("<a></a>").attr("id","endPoint");
                 a2.text(endPoint);
                 var box3 = $("<div></div>").css({ padding: "2px", border: "thin solid #aaaaaa", margin: "5px" });
                 var ul2 = $("<ul></ul>").css("width", "100%");
                 var li2 = $("<li></li>").attr("class", "searchContainer");
                 li2.css("width", "100%");

                 var li4 = $("<li></li>");
                 var a4 = $("<a></a>").attr("id", "routeziel");
                 a4.text(text4Route);

                 
                 var box4 = $("<div></div>").attr("class", "ui-widget");
                 var input2 = $("<input/>").attr({ id: "to", name: "search" });
                 input2.css("width", "80%");
                 var img2 = $("<img/>").attr({ src: 'images/greenpushpin.png', id: 'ziel', alt: 'search' });
                 img2.css({ "padding-left": "5px",width: "20px", height: "20px" });

                 var button = $("<div></div>").css({ width: "60px", height: "40px", position: "relative", "margin-left": "200px", "margin-top": "10px" });
             
                 var img3 = $("<input>").attr({ type: "image", src: "images/go.png", id: "gobutton", alt: "search" });
                 img3.css({ width: "60px", height: "40px" });
                 button.append(img3);


                 box2.append(input);
                 box2.append(img);
                 li1.append(box2);
                 li3.append(a3);

                 ul1.append(li1);
                 ul1.append(li3);
                 box1.append(ul1);
                 zenter.append(a);
                 dialogwindow.append(zenter);
                 dialogwindow.append(box1);

                 box4.append(input2);
                 box4.append(img2);
                 li2.append(box4);

                 li4.append(a4);
                 ul2.append(li2);
                 ul2.append(li4);
                 box3.append(ul2);
                 zenter2.append(a2);

                 dialogwindow.append(zenter2);
                 dialogwindow.append(box3);

                 dialogwindow.append(button);

                 $("#west").append(dialogwindow);

                 $("#dialog-modal").dialog({
                     maxHeight: 220,    
                     width: 300,
                     modal: false,
                     resizable: false,
                     position: ['right', 'bottom']
                     

                 });

             }

             else if ($("#dialog-modal").dialog("isOpen") == false) {
             $("#dialog-modal").dialog({
                 maxHeight: 220,
                 width: 300,
                 modal: false,
                 resizable: false,
                 position: ['right', 'bottom']  
               
             });

         }


         $("#to").val("");
          $("#to").val(startlocation);
             $("#from").val("");
             $("#gobutton").click(function () {

                 map.entities.clear();
                 //$('#from').val("");
                 getDirections();

             });

            // startlocation = "";
 }

 function getObjList(result, name) {

     var layerdatatab = $("<table></table>").attr({ id: 'layerdatatab', border: '0', width: '90%' });
     layerdatatab.css({ "margin-left": "10px", "margin-right": "10px" });
     var tabrow2 = $("<tr></tr>");
     var tabrow3 = $("<tr></tr>").attr('height', '3');
     var tabrow4 = $("<tr></tr>");

     var tabhead1 = $('<td colspan="1"></td>').attr({ "valign": "bottom", height: '25' });
     tabhead1.css("font-weight", "bold");
     tabhead1.css("background-color", "#E5E5E5");
     var td = $('<td colspan="3"></td>').attr({ id: 'zeilen', height: '25' });
     var td0 = $("<td></td>");
     var td3 = $("<td></td>");
     td3.css({ height: '15', width: '20', 'background-color': '#E5E5E5' });
     td0.css({ height: '15', width: '50%' });

     tabhead1.append('<a href="javascript: void(0)">' + name + '</a>');
     tabhead1.addClass('clickable').click(function () {

         if (type == 1) {
            // alert("Type ist: " + type);
             map.setView({ center: zoomtoLocation, zoom: 18 });
         }
         else if (type == 2) {
           // alert("Type ist: " + type + "   zoomtoLocationLine: " + zoomtoLocationLine);
       
             map.setView({ bounds: zoomtoLocationLine });
         }
         else if (type == 3) {
            // alert("Type ist: " + type + "   zoomtoLocationArea: " + zoomtoLocationArea);
             map.setView({ bounds: zoomtoLocationArea }); 
         }

         map.entities.pop();
         createInfoWindow(result, objname);

     });

     var objname
     layerdatatab.hover(function () {
         $(this).find("td:first").css("background-color", "#cdc5bf");
          objname = $(this).find("td:first").text();
          getTempObj(result, objname);
        
     }, function () {
         $(this).find("td:first").css("background-color", "#E5E5E5");
          map.entities.pop();

     });   // tabhead1.hover

     var iconroute = $("<input>").attr({ 'type': 'image', 'src': 'images/route.gif', height: '15', width: '18' });
     td3.append(iconroute);
     td3.addClass('clickable').click(function () {
         callRouteDialog(startlocation);
     });

     tabrow2.append(tabhead1);
     tabrow2.append(td3);
     layerdatatab.append(tabrow2);
     layerdatatab.append(tabrow4);
     layerdatatab.append(tabrow3);

     $('#attribute').append(layerdatatab);

 }



 function getInfoBox(result, name) {

     var title = name;
     var tableinfo = $("<table></table>").attr({ id: 'tableinfo', border: '0' });
     var tr1 = $("<tr></tr>");
     var tr2 = $("<tr></tr>");
     var tr3 = $("<tr></tr>");
     var th = $('<th colspan="3"></th>').attr('height', '25');
     th.css("background-color", "#E5E5E5");
     th.append(title);

     var td1 = $("<td></td>").attr({"align":"left", "width": "20"});
     var td2 = $("<td></td>").attr({ "align": "left", "width": "20" });
     var td3 = $("<td></td>");
     var moreinfo = $("<input>").attr({ 'type': 'image', 'src': 'images/info_orange.png', height: '20', width: '22' });
     td1.append(moreinfo);
     td1.addClass('clickable').click(function () {
         var isWestOpen = !myLayout.state.west.isClosed;
         if (!isWestOpen) {
             myLayout.toggle('west');
         }

         createInfoWindow(result, objname);
         $('#einszurueck').html("");
     });
     var objname;
     tableinfo.hover(function () {

         $(this).find("th:first").css("background-color", "#cdc5bf");
         objname = $(this).find("th:first").html();
         getTempObj(result, objname);
         //alert("objname: " + objname);

     }, function () {
         $(this).find("th:first").css("background-color", "#E5E5E5");
         map.entities.pop();
     }); // tabhead1.hover

     var route = $("<input>").attr({ 'type': 'image', 'src': 'images/route.gif', height: '18', width: '21' });
     td2.append(route);
     td2.addClass('clickable').click(function () {

         callRouteDialog(startlocation);

     });


     tr1.append(th);
     tr2.append(td1);
     tr2.append(td2);
     tr2.append(td3);
     tableinfo.append(tr1);
     tableinfo.append(tr2);

     return tableinfo;
    
 }


 function readoutPoints(pinObj, shortDesc) {
     var pinlat = pinObj.Latitude;
     var pinlon = pinObj.Longitude;

     var istlatvorhanden = $.inArray(pinlat, latitudefeld);
     var istlonvorhanden = $.inArray(pinlon, longitudefeld);
     if ((istlatvorhanden == -1)||(istlonvorhanden == -1)) {
         latitudefeld.push(pinObj.Latitude);
         longitudefeld.push(pinObj.Longitude);
     }
     var locations = new Microsoft.Maps.Location(pinObj.Latitude, pinObj.Longitude);
                          var options = {
                              icon: pinObj.Icon,
                              anchor: new Microsoft.Maps.Point(0,0),
                              sticky: false,
                              infobox: shortDesc
                          };

                          var pins = map.AddPushpin(locations, options);
                          map.entities.push(pins);

      var objectname = pinObj.Name;
                              var exists = $.inArray(objectname, data);
                              if (exists == -1) {
                                  data.push(objectname);
     }

 }


 var locationsLineGlob = new Array();
 function readoutLines(countBranches, lineObj, shortDesc, linefield) {

     for (countBranches = 0; countBranches < lineObj.Locations.length; countBranches++) {
         var countCoords;
         var locationsLine = new Array();
         for (countCoords = 0; countCoords < lineObj.Locations[countBranches].length; countCoords++) {
             locationsLine[countCoords] = new Microsoft.Maps.Location(lineObj.Locations[countBranches][countCoords].lat, lineObj.Locations[countBranches][countCoords].lon);

             var istlatvorhanden = $.inArray(lineObj.Locations[countBranches][countCoords].lat, latitudefeld);
             var istlonvorhanden = $.inArray(lineObj.Locations[countBranches][countCoords].lon, longitudefeld);
             if ((istlatvorhanden == -1) || (istlonvorhanden == -1)) {
                 latitudefeld.push(lineObj.Locations[countBranches][countCoords].lat);
                 longitudefeld.push(lineObj.Locations[countBranches][countCoords].lon);
             }

         }

         var options = {
             strokeColor: new Microsoft.Maps.Color(lineObj.Opacity, lineObj.LineForegroundRed, lineObj.LineForegroundGreen, lineObj.LineForegroundBlue),
             strokeThickness: lineObj.SizeLine, visible: true,
             sticky: false,
             infobox: shortDesc
         };
         locationsLineGlob = locationsLine;
         linefield[countBranches] = map.AddPolyline(locationsLine, options);
       
         map.entities.push(linefield[countBranches]);

         var objectname = lineObj.Name;
                              var exists = $.inArray(objectname, data);
                              if (exists == -1) {
                                  data.push(objectname);
                              }
     } // end for  


 }


var locationsPolygonGlob = new Array();
 function readoutPolygons(countBranches, areaObj, shortDesc, areafield) {

     for (countBranches = 0; countBranches < areaObj.Locations.length; countBranches++) {
         var countCoords;
         var locationsPolygon = new Array();
         for (countCoords = 0; countCoords < areaObj.Locations[countBranches].length; countCoords++) {
             locationsPolygon[countCoords] = new Microsoft.Maps.Location(areaObj.Locations[countBranches][countCoords].lat, areaObj.Locations[countBranches][countCoords].lon);

             var istlatvorhanden = $.inArray(areaObj.Locations[countBranches][countCoords].lat, latitudefeld);
             var istlonvorhanden = $.inArray(areaObj.Locations[countBranches][countCoords].lon, longitudefeld);
             if ((istlatvorhanden == -1) || (istlonvorhanden == -1)) {
                 latitudefeld.push(areaObj.Locations[countBranches][countCoords].lat);
                 longitudefeld.push(areaObj.Locations[countBranches][countCoords].lon);
             }
                
         }

         var optionsArea = {
             fillColor: new Microsoft.Maps.Color(areaObj.Opacity, areaObj.AreaBackgroundRed, areaObj.AreaBackgroundGreen, areaObj.AreaBackgroundBlue),
             strokeColor: new Microsoft.Maps.Color(areaObj.Opacity, areaObj.AreaForegroundRed, areaObj.AreaForegroundGreen, areaObj.AreaForegroundBlue),
             strokeThickness: areaObj.AreaLineSize,
             sticky: false,
             infobox: shortDesc

         };
         locationsPolygonGlob = locationsPolygon;
         areafield[countBranches] = map.AddPolygon(locationsPolygon, optionsArea);

         map.entities.push(areafield[countBranches]);

            var objectname = areaObj.Name;
                              var exists = $.inArray(objectname, data);
                              if (exists == -1) {
                                  data.push(objectname);
                              }
     } // end for


}

Array.prototype.max = function () {
    var max = this[0];
    var len = this.length;
    for (var i = 1; i < len; i++) if (this[i] > max) max = this[i];
    return max;
}
Array.prototype.min = function () {
    var min = this[0];
    var len = this.length;
    for (var i = 1; i < len; i++) if (this[i] < min) min = this[i];
    return min;
}
