// Allgemeinde JS-Funktionen für ePilot
// Neue Ausgaben
function AddParamToLink(strLink, strParamName, strValue) {
    strValue = strValue.toString().replace(/[ ]/g, "%20")
    if (strLink.indexOf("?") >= 0) {
        return strLink += "&" + strParamName + "=" + strValue;
    } else {
        return strLink += "?" + strParamName + "=" + strValue;
    }
}

function SortImmo() {
    var sortby = document.forms["ImmoSorting"].elements["sortby"].value;
    var sortin = document.forms["ImmoSorting"].elements["sortin"].value;
    var sortparam = (Number(sortby) + Number(sortin));

    document.forms["ImmoSorting"].elements["O"].value = sortparam;
    
    document.forms["ImmoSorting"].submit();

    /*
    var sortby = arguments.length >= 2 ? arguments[1] : document.forms["ImmoSorting"].elements["sortby"].value;
    var sortin = arguments.length >= 3 ? arguments[2] : document.forms["ImmoSorting"].elements["sortin"].value;
    var sortparam = (Number(sortby) + Number(sortin));
    var z2 = document.forms["ImmoSorting"].elements["z2"].value

    var city = arguments.length == 0 ? document.forms["ImmoSorting"].elements["sortcity"].value : arguments[0];
    var call = location.href;
    if (call.indexOf("?") >= 0) {
        call = call.substr(0, call.indexOf("?"));
    }
    if (call.indexOf("#") == (call.length - 1)) {
        call = call.substr(0, call.length - 1);
    }
    call = AddParamToLink(call, "O", sortparam);
    call = AddParamToLink(call, "z", city);
    call = AddParamToLink(call, "z2", z2);
    //call = SetURLRewriteParam(call, "ID", FixID_wohnungen, "/");
    location.href = call;
    */

}

// Neue Ausgabe



function SetURLParam(strUrl, strParam, strValue) {
    var TstrUrl = strUrl;
    var TstrUrlleft = "";
    var TstrUrlright = "";
    var TlstParams = Array();
    var TlngFound = -1;
    var TblnParamFound = false;
    var newUrl = "";

    // Gibt es Parameter?
    TlngFound = TstrUrl.indexOf("?");

    // Wenn Ja, dann Parameter aus Url auslesen
    if (TlngFound >= 0) {
        TstrUrlleft = TstrUrl.substr(0, TlngFound);
        TstrUrlright = TstrUrl.substr(TlngFound + 1, TstrUrl.length);
        if (TstrUrlright.length > 0)
            TlstParams = TstrUrlright.split("&");

        // Parameter in die einzelnen Bestandteile zerlegen
        var TlstSingleParams = Array();
        for (i = 0; i < TlstParams.length; i++) {
            value = TlstParams[i];
            lngIndex = value.indexOf("=");
            TlstSingleParams[TlstSingleParams.length] = value.substr(0, lngIndex);
            TlstSingleParams[TlstSingleParams.length] = value.substr(lngIndex + 1, value.length);

            if (value.substr(0, lngIndex) == strParam)
                TblnParamFound = true;
        }

        // Parameter schon vorhanden??? Dann Wert ersetzen
        if (TblnParamFound) {
            for (i = 0; i < TlstSingleParams.length; i = i + 2) {
                value = TlstSingleParams[i];

                if (TlstSingleParams[i] == strParam)
                    TlstSingleParams[i + 1] = strValue;
            }
        } else {
            // Ansonsten einfach hinzufügen
            TlstSingleParams[TlstSingleParams.length] = strParam;
            TlstSingleParams[TlstSingleParams.length] = strValue;
        }

        // Url wieder zusammensetzen und zurückgeben
        for (i = 0; i < TlstSingleParams.length; i = i + 2) {
            if (i > 0)
                newUrl += "&";

            if (TlstSingleParams.length > 0)
                newUrl += TlstSingleParams[i] + "=" + TlstSingleParams[i + 1];
        }
        newUrl = TstrUrlleft + "?" + newUrl
    } else {
        // Es ist der erste Parameter in der Liste
        newUrl = TstrUrl;
    }
    return newUrl;
}

function SetURLRewriteParam(strUrl, strParam, strValue, strdivider) {
    var TstrUrl = strUrl;
    var TstrUrlleft = "";
    var TstrUrlright = "";
    var TlstParams = Array();
    var TblnParamFound = false;
    var newUrl = "";

    // zuerst evtl. Clicks auf der gelcihen Seite entfernen -> #
    TstrUrl = TstrUrl.replace(/#/, "");
    if (TstrUrl.substr(TstrUrl.length - 1, 1) == "/") {
        TstrUrl = TstrUrl.substring(0, TstrUrl.length - 1);
    }

    // Ist Trennzeichen vorhanden? den ersten '/' dabei übergehen
    var TlngFound = TstrUrl.indexOf(strdivider, 1);
    if (TlngFound > 0) {
        // Wenn ja, dann die Parameter aus URL auslesen ( URL-Links / Parameter-Rechts ) ( "Splitten" )

        // URL-Links
        TstrUrlleft = TstrUrl.substr(0, TlngFound + 1);

        // Parameter-Rechts
        TstrUrlright = TstrUrl.substr(TlngFound + 1, TstrUrl.length);

        // URL zerlegen in die einzelnen Parametern und Value's ( "Splitten" )
        if (TstrUrlright.length > 0) {
            TlstParams = TstrUrlright.split(strdivider);
        }

        // gesuchten Parameter abfragen
        for (i = 0; i < TlstParams.length; i++) {
            value = TlstParams[i];

            if (value == strParam) {
                TblnParamFound = true;
                TlstParams[i + 1] = strValue;
                break;
            }
        }

        // wenn nicht gefunden, dann einfach anhängen
        if (!TblnParamFound) {
            TlstParams[TlstParams.length] = strParam;
            TlstParams[TlstParams.length] = strValue;
        }

        newUrl = TlstParams.join(strdivider);
        newUrl = TstrUrlleft + newUrl
    } else {
        newUrl = strUrl;
    }

    newUrl += strdivider;
    return newUrl;
}






// Projektspezifische JS-Funktionen
/*
function openPopup(url,ID){
	//der array 'IstrListboxTargetPopupstyle' wird in der methode
	//MainOutputClass.GetClientJSPopupTargets() gefuellt...
	window.open(url,"ePilotPopup"+ID,IstrListboxTargetPopupstyle[ID]);
}
*/

function openPopup(url, ID, mediaID){
	//der array 'IstrListboxTargetPopupstyle' wird in der methode
	//MainOutputClass.GetClientJSPopupTargets() gefuellt...

	if ((mediaID > 0) && (ID == 197)) {
		url = "/default.aspx?G=" + GroupID + "&L=" + LangID + "&A=" + AreaID + "&ID=" + mediaID + "&V=media";
		window.open(url, "ePilotPopup"+ID, IstrListboxTargetPopupstyle[ID]);
	} else {
		//url += "/V/popup/PM/1";
		window.open(url, "ePilotPopup"+ID, IstrListboxTargetPopupstyle[ID]);
	}
}


function openContent(url,ID){
	switch(ID){
		case 4:
			parent.location.href = url;
			break;
		case 5:
			parent.window.opener.location.href = url;
			break;
	}
}

function RunSearch(lngPopupMode) {

  var strLink = IstrPopupLink;
  var queryval = document.forms["suche"].elements["Z"].value;
  var ID = document.forms["suche"].elements["ID"].value;

  strLink += "/ID/" + ID + "/Z/" + queryval;

  openPopup(strLink, lngPopupMode);
}


function hideshowdiv(divID) {
	var VState = document.getElementById(divID).style.visibility;

	//document.title = divID + " " + document.getElementById(divID).style.display;

	if (VState=="visible") {
		document.getElementById(divID).style.visibility = "hidden";
	} else {
		document.getElementById(divID).style.visibility = "visible";
	}

} //end function

function hidediv(divID) {
	document.getElementById(divID).style.visibility = "hidden";
} //end function

function showdiv(divID) {
	document.getElementById(divID).style.visibility = "visible";
} //end function

function CloseAlleMenues(blnShowDiv) {

	if (!blnShowDiv) {
		showdiv("objectsearch");
	}
	closaAlleMenues();
}


function OpenPDF(url, title, popupID) {
	var link = "/pdf.aspx?"
	link += "docname=" + encodeURI(title);
	link += "&url=" + encodeURIComponent(url);

	openPopup(link, popupID, -1);
}

var activenav01index = 0;
var activenav01id = 0;
var nav02index = 0;

function OpenMap(street, zipcode, city, popupMode)
{
    var url = "http://www.yellowmap.de/Partners/Dogewo/Map.aspx?";

    url += "Street=" + encodeURIComponent(street);
    url += "&Zip=" + zipcode;
    url += "&Town=" + encodeURIComponent(city);

    openPopup(url, popupMode);
}

function MarkNav02(objectid, index) {

}


function RunImmoSearch() {
	// hier werden alle Werte selektiert
	var city = document.forms["AppartmentSuche"].elements["city"].value;
	var using = document.forms["AppartmentSuche"].elements["using"].value;
    var space_lower = window.document.AppartmentSuche.spacelower.value;
	var space_upper = window.document.AppartmentSuche.spaceupper.value;
	var room_lower = window.document.AppartmentSuche.roomlower.value;
	var room_upper = window.document.AppartmentSuche.roomupper.value;
	var rent_lower = window.document.AppartmentSuche.rentlower.value;
	var rent_upper = window.document.AppartmentSuche.rentupper.value;

	var strZ1 = "";
	var strZ2 = "";
	var space = "";
	var room = "";
	var rent = "";

	// space
	if (space_lower != "") {
		space = space_lower;
	}
	space += "-";
	if (space_upper != "") {
		space += space_upper;
	}
	// room
	if (room_lower != "") {
		room += room_lower;
	}
	room += "-";
	if (room_upper != "") {
		room += room_upper;
	}
	// rent
	if (rent_lower != "") {
		rent += rent_lower;
	}
	rent += "-";
	if (rent_upper != "") {
		rent += rent_upper;
	}

	strZ1 = encodeURIComponent(city);
	strZ2 = space + ";" + room + ";" + rent + ";" + using;
	
	// vorerst werden per get die Listen aufgerufen
	var link = "/default.aspx?g=111327&a=" + AreaID;
	link = SetURLParam(link, "z", strZ1, "/");
	link = SetURLParam(link, "z2", strZ2, "/");
	
	if (using == 3)
	    link = SetURLParam(link, "id", FixID_wohnungen, "/");
	else
	    link = SetURLParam(link, "id", FixID_wohnungen, "/");
  
	//alert(link);
  location.href = link;
}


