
function Tabs() {
    TabsHTML = "";
    TabsHTML += "<ul>";
    TabsHTML += "<li id=\"tab_info_li\" class=\"tab_active\"><a id=\"tab_info_a\"  href=\"#\" onclick=\"showTab('tab_info');\">"+arrLanguage[language]["tab_info"]+"</a></li>";
    TabsHTML += "<li id=\"tab_inquiry_li\" class=\"tab_inactive\"><a id=\"tab_inquiry_a\"  href=\"#\" onclick=\"showTab('tab_inquiry');\">"+arrLanguage[language]["tab_inquiry"]+"</a></li>";
    TabsHTML += "<li id=\"tab_photos_li\" class=\"tab_inactive\"><a id=\"tab_photos_a\"  href=\"#\" onclick=\"showTab('tab_photos');\">"+arrLanguage[language]["tab_photos"]+"</a></li>";
    TabsHTML += "<li id=\"tab_map_li\" class=\"tab_long_inactive\"><a id=\"tab_map_a\"  href=\"#\" onclick=\"showTab('tab_map');\">"+arrLanguage[language]["tab_map"]+"</a></li>";
    TabsHTML += "</ul>";    
    return TabsHTML;
}

function TabStageStart() {
    TabStageHTML = "";
    TabStageHTML += arrLanguage[language]["stage_start"]; 
    return TabStageHTML;
}

function GalleryThumbs() {
    GalleryThumbsHTML = "";
    GalleryThumbsHTML += "<div id=\"gallery_thumb_01\" style=\"display:none;\"><img id=\"img_thumb_01\" src=\"\" onclick=\"showPic('pic_01');\"></div>";
    GalleryThumbsHTML += "<div id=\"gallery_thumb_02\" style=\"display:none;\"><img id=\"img_thumb_02\" src=\"\" onclick=\"showPic('pic_02');\"></div>";
    GalleryThumbsHTML += "<div id=\"gallery_thumb_03\" style=\"display:none;\"><img id=\"img_thumb_03\" src=\"\" onclick=\"showPic('pic_03');\"></div>";  
    return GalleryThumbsHTML;
}

function formSelect() {
    formSelectHTML = "";
    formSelectHTML += "<form>\n";
    formSelectHTML += "<select name=\"form_country\" onchange=\"showAdress(this.value);\" class=\"form_select\">\n";
    formSelectHTML += "<option value=\"\" selected>"+arrLanguage[language]["formSelectPleaseSelect"]+"</option>\n";
    if (language == "german") {
        formSelectHTML += "<option value=\"brasil\">"+arrLanguage[language]["brasil"]+"</option>\n";
        formSelectHTML += "<option value=\"germany\">"+arrLanguage[language]["germany"]+"</option>\n";
        formSelectHTML += "<option value=\"india\">"+arrLanguage[language]["india"]+"</option>\n";
        formSelectHTML += "<option value=\"spain\">"+arrLanguage[language]["spain"]+"</option>\n";
        formSelectHTML += "<option value=\"czechia\">"+arrLanguage[language]["czechia"]+"</option>\n";
    } else {
        formSelectHTML += "<option value=\"brasil\">"+arrLanguage[language]["brasil"]+"</option>\n";
        formSelectHTML += "<option value=\"czechia\">"+arrLanguage[language]["czechia"]+"</option>\n";
        formSelectHTML += "<option value=\"germany\">"+arrLanguage[language]["germany"]+"</option>\n";
        formSelectHTML += "<option value=\"india\">"+arrLanguage[language]["india"]+"</option>\n";
        formSelectHTML += "<option value=\"spain\">"+arrLanguage[language]["spain"]+"</option>\n";
    }
    formSelectHTML += "</select>\n";
    formSelectHTML += "</form>";
    return formSelectHTML;
}

function formInquiryData() {
    formInquiryDataHTML = "<form method=\"post\" action=\"/skripte/sendmails.php\" onsubmit=\"return formValidation();\" name=\"form_contact\" class=\"form_contact\">\n";
    formInquiryDataHTML += "<input type=\"hidden\" name=\"mailFrom_default\" value=\"" + arrLanguage[language]["formInquiry_mailFromDefault"] + "\" >\n";
    formInquiryDataHTML += "<input type=\"hidden\" name=\"recipient\" value=\"" + CountryData[currentCountry]["mailto"] + "\" >\n";
    formInquiryDataHTML += "<input type=\"hidden\" name=\"subject\" value=\"" + arrLanguage[language]["formInquiry_subject"] + "\" >\n";
    formInquiryDataHTML += "<input type=\"hidden\" name=\"responseURL\" value=\"" + arrLanguage[language]["formInquiry_responseURL"] + "?mail=\" >\n";
    formInquiryDataHTML += arrLanguage[language]["EMail"] + "<br>\n<input size=\"40\" name=\"userEmail\" value=\"\" type=\"text\"><br>\n";
    formInquiryDataHTML += arrLanguage[language]["Name"] + "<br>\n<input size=\"40\" name=\"lastname\" value=\"\" type=\"text\"><br>\n";
    formInquiryDataHTML += arrLanguage[language]["Firstname"] + "<br>\n<input size=\"40\" name=\"firstname\" value=\"\" type=\"text\"><br>\n";
    formInquiryDataHTML += arrLanguage[language]["Inquiry"] + "<br>\n<textarea rows=\"4\" cols=\"40\" wrap=\"virtual\" name=\"inquiry\"></textarea><br>&nbsp;<br>\n";
    formInquiryDataHTML += "<input value=\"" + arrLanguage[language]["Send"] + "\" type=\"submit\">\n";
    formInquiryDataHTML += "</form>\n";
    return formInquiryDataHTML;
}

function formValidation() {
    var formValidated = true;
    var text = "Bitte alle Felder ausfüllen. Danke!\nAll fields requested. Thank you!";
    for (var i = 0; i < document.form_contact.elements.length; i++) {
      if (document.form_contact.elements[i].value == "") {
        formValidated = false;
      }
    }
    if (!formValidated) {
        alert(text);
    }
    return formValidated;
}

// functions

function showAdress(cntry){
	currentCountry = cntry;
	showTab('tab_info');
}

function showPic(thisPic){
    cPic = CountryData[currentCountry][thisPic];
    document.getElementById("gallery_view").style.display = "block";
    document.getElementById("img_view").src = cPic;
}

function showTab(thisTab){
    document.getElementById("gallery_thumbs").style.display = "none";
    document.getElementById("gallery_view").style.display = "none";
    if (currentCountry != "") {
        GUnload();
        // Display
        document.getElementById("tab_stage").style.display = "block";
        document.getElementById("tab_top").style.display = "block";
        document.getElementById("line_countryname_content").innerHTML = arrLanguage[language][currentCountry].toUpperCase();
        document.getElementById("line_countryname").style.display = "block";        
        if (currentTab == 'tab_map') {
            document.getElementById(currentTab + "_li").className = "tab_long_inactive"; 
        }
        else {
            document.getElementById(currentTab + "_li").className = "tab_inactive"; 
        }
        if (thisTab == 'tab_map') {
            document.getElementById(thisTab + "_li").className = "tab_long_active";
        }
        else {
            document.getElementById(thisTab + "_li").className = "tab_active"; 
        }
        if (document.getElementById(currentTab + "_a")) document.getElementById(currentTab + "_a").style.color = "#015ea1"; 
        if (document.getElementById(thisTab + "_a")) document.getElementById(thisTab + "_a").style.color = "#fff";         
        // content
        var cContent = CountryData[currentCountry][thisTab];   
        if (language == "german") { // further translations
            for (var i = 0; i < arrTranslationsEnglish.length; ++i) {
                var cEnglishExpression = arrTranslationsEnglish[i];
                if (cContent.indexOf(cEnglishExpression) != -1) {
                    var cGermanExpression = arrTranslationsGerman[i];
                    varSearchEnglishExpression = eval("/"+cEnglishExpression+"/g");
                    cContent = cContent.replace(varSearchEnglishExpression, cGermanExpression);
                }
            }
        }
        document.getElementById("tab_stage_content").innerHTML = cContent;     
        document.getElementById("tab_stage").className = "tab_stage";   
        // (Tab 03:) Photos?
        if (thisTab == 'tab_photos') {
            document.getElementById("tab_stage").className = "tab_stage_gallery";
            document.getElementById("gallery_thumb_01").style.display = "none";
            document.getElementById("gallery_thumb_02").style.display = "none";
            document.getElementById("gallery_thumb_03").style.display = "none";
            if (CountryData[currentCountry]["pic_01"] != "") {
                document.getElementById("gallery_thumbs").style.display = "block";
            }
            if (CountryData[currentCountry]["pic_01_thumb"] != "") {
                document.getElementById("gallery_thumb_01").style.display = "block";
                document.getElementById("img_thumb_01").src = CountryData[currentCountry]["pic_01_thumb"];
            }
            if (CountryData[currentCountry]["pic_02_thumb"] != "") {
                document.getElementById("gallery_thumb_02").style.display = "block";
                document.getElementById("img_thumb_02").src = CountryData[currentCountry]["pic_02_thumb"];
            }
            if (CountryData[currentCountry]["pic_03_thumb"] != "") {
                document.getElementById("gallery_thumb_03").style.display = "block";
                document.getElementById("img_thumb_03").src = CountryData[currentCountry]["pic_03_thumb"];
            }
            if (CountryData[currentCountry]["pic_01_thumb"] == ""
                && CountryData[currentCountry]["pic_02_thumb"] == ""
                && CountryData[currentCountry]["pic_03_thumb"] == "") {
                document.getElementById("gallery_view").className = "gallery_view_without_thumbs";
            }
            showPic("pic_01");
        }
        // (Tab 02:) Inquery?
        if (thisTab == 'tab_inquiry') {
            cContent = document.getElementById("tab_stage_content").innerHTML;
            cContentWithForm = cContent + formInquiryData();
            document.getElementById("tab_stage_content").innerHTML = cContentWithForm;
        }
        // (Tab 04:) Google Map?
        if (thisTab == 'tab_map' && currentCountry != "china") {
            addressData["nr"]       = CountryData[currentCountry]["nr"] ;
            addressData["str"]      = CountryData[currentCountry]["str"] ;
            addressData["city"]     = CountryData[currentCountry]["city"] ;
            addressData["country"]  = CountryData[currentCountry]["country"] ;
            getAddress();
        }
    }
    currentTab = thisTab;
}
  
// GOOGLE MAP
   
function getAddress() {
    if (addressData["nr"] != "" && addressData["nr"] != undefined
        && addressData["str"] != "" && addressData["str"] != undefined
        && addressData["city"] != "" && addressData["city"] != undefined
        && addressData["country"] != "" && addressData["country"] != undefined
        ) {
            var thisAddress = addressData["nr"] + " " + addressData["str"] + ", " + addressData["city"] + ", " + addressData["country"] ;
            load();
            showAddress(thisAddress);          
    }
    else {
        document.getElementById("tab_map").visibility = "hidden";
        document.getElementById("tab_stage_content").innerHTML = "No data given.";
    }
}

var map = null;
var geocoder = null;

function load() {
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById("map"));
    map.addControl(new GSmallMapControl());
    map.setCenter(new GLatLng(37.4419, -122.1419), 13);
    geocoder = new GClientGeocoder();
  }
}

var markerImage = "http://maps.google.com/mapfiles/kml/paddle/blu-circle_maps.png"; 

function showAddress(address) {
  if (geocoder) {
     geocoder.getLatLng(
      address,
      function(point) {
        if (!point) {
          alert(address + " not found");
        } else {
          map.setCenter(point, 13);
          var marker = new GMarker(point);
          map.addOverlay(marker);
          //marker.setImage(markerImage);
          
          // route
          var link_route = "<a href='http://maps.google.com/maps?daddr="+address+"&geocode=&dirflg=&saddr=&f=d&hl=&dq=&sll=&sspn=&cid=&ie=UTF8&ll=&spn=&z=6&om=0' target='_blank'><u>Route</u></a>";
          marker.openInfoWindowHtml(address + "<br>" + link_route);
          document.getElementById("route").innerHTML =  link_route;  
          
        }
      }
    );
  }
}


// action

function checkContent() {
    // language
    checkLanguage = document.getElementById("language").innerHTML;
    if (checkLanguage.indexOf("german") != -1) language = "german";
    // get content
    showStart = "";
    startContent = "";
    mailAnswer = "";
    if (window.location.search != "") {
        wls = window.location.search;
        wls = wls.substring(1, wls.length);
        params = wls.split("&");
        for (var i = 0; i < params.length; ++i) {
            cParams = params[i].split("=");
            if (cParams[0] == "mail") {
                showStart = "showMailAnser";
                if (cParams[1] == "1") {
                    mailAnswer = arrLanguage[language]["formInquiryAnswerSuccess"];
                } else {
                    mailAnswer = arrLanguage[language]["formInquiryAnswerError"];
                } 
            }
        }
    }
    if (showStart == "showMailAnser") {
        startContent += mailAnswer + "\n";
        startContent += "<br>&nbsp;<br>\n";
        if (currentCountry != "us") startContent += formSelect();
    }
    else {
        startContent += TabStageStart();
        startContent += "<br>&nbsp;<br>\n";
        if (currentCountry != "us") startContent += formSelect();
    }
    // show content
    document.getElementById("tab_top_content").innerHTML = Tabs();
    document.getElementById("gallery_thumbs_content").innerHTML = GalleryThumbs();
    document.getElementById("tab_stage_content").innerHTML = startContent;  
    // us only: show adress
    if (currentCountry == "us") showAdress("us");  
}
