// everestTracks.js

var kAlt_ME = 8848;
var kLoginTimeSec = 60 * 30;			//  30min.
var kMinClubMembers = 10;
var kAddTrackFreezeTime = 60 * 60;		//	60min.
var kCacheResTimeSec = 60 * 10;			// 10 min.
var kPageSize = 50;


var gSelectedTrack = 1;

var gSiteURL = "http://mounteverest.ch/";		// mit / at end
var gSiteURLPrefix = "";						// empty or me-test/

var gMail_request = null;
var gUser_request = null;
var gResults_request = null;
var gUsername = "";
var gUserNickname = "";
var gUserTotalHoehe = 0;
var gUserAnzahlTracks = 0;
var gUserRang = 0;
var gUserStatus = 0;
var gSID = 0;


var gPage = 0;

var gTID1 = 0;
var gTID2 = 0;

var gTrackStart = new Array();
var gTrackEnd = new Array();
var gTrackName = "";

var gCachedTrackSearch = "";
var gMap;



// -----------------------------------------------------------
// USER TRACKS
// -----------------------------------------------------------

function displayAddTrack()
{
	gTID1 = 0;
	gTID2 = 0;
	var txt = "";
	txt += "<span class='boxTitle'>" + getLocStr('STRECKE HINZUFÜGEN') + "</span><br><br>";
	txt += "<span class='boxText'>" + getLocStr('Msg-Contest-Is-Over') + "</span><br><br>";		//decomment when contest is over
	document.getElementById("userAddTrackBox").innerHTML = txt;
	return;
	
	txt += "<span class='boxText'>" + getLocStr('Txt-Add-Track-Freeze-Time') + "</span><br><br>";
	txt += "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
	txt += "<tr><td class='track1-font' width='100'>" + getLocStr('Datum') + ":</td><td class='track1-font' width='250'>" + getLocStr('Startpunkt')+"/"+getLocStr('Strecke')+"</td><td class='track1-font'>&nbsp;</td></tr>";
	
	txt += "<tr><td><input name='addDate' type='text' id='addDate' size='10' maxlength='10' onfocus='showCalendarControl(this);' /></td>";
	txt += "<td><input name='searchTrack' type='text' id='searchTrack' size='10' maxlength='30' />&nbsp;";
	txt += "<input type='submit' name='searchTrackBtn' id='searchTrackBtn' value='" +getLocStr('Suchen')+ "' /></td>";
	txt += "<td></td>";
//	txt += "<td><select onchange='changeAddTrack(this);' class='popupMenu' name='addTrackRegPopup' class='track2-font' id='addTrackRegPopup'><option value='0'></option>";
//	txt += "<option value='1'>Gurten</option><option value='2'>Erlenbach-Chrindi</option><option value='3'>Chrindi-Stockhorn</option></select></td>";
	txt += "</tr>";
	
	txt += "<tr><td></td><td colspan='2'><select class='popupMenu' style='visibility:hidden;' name='addTrackPopup' id='addTrackPopup' onchange='changeAddTrackStart(this);'><option></option></select>&nbsp;";
	txt += "<select class='popupMenu' style='visibility:hidden;' name='addTrackPopupBahnStart' id='addTrackPopupBahnStart' onchange='changeAddTrackBahnStart(this);'><option value='0'>"+getLocStr('Start- und Endpunkt')+"</option>";
	txt += "<option value='1'>"+getLocStr('Talstation als Startpunkt')+"</option><option value='2'>"+getLocStr('Bergstation als Startpunkt')+"</option></select></td></tr>";
	
	txt += "<tr><td></td><td valign='top'><div class='track3-font' id='addTrackText'></div></td><td valign='top'><div class='track3-font' id='addTrackText2'></div></td></tr>";	
	txt += "</table>";
	document.getElementById("userAddTrackBox2").innerHTML = "";
	document.getElementById("userAddTrackBox3").innerHTML = "";
	document.getElementById("userAddTrackBox3").style.visibility = "hidden";
	document.getElementById("userAddTrackBox").innerHTML = txt;
//	document.getElementById('addTrackRegPopup').options[0].selected = true;
	
	changeAddTrack(document.getElementById('addTrackRegPopup'));
	

	var submit = document.getElementById("searchTrackBtn"); 
	submit.onclick = function(ev) { 
		var searchTrack = document.getElementById("searchTrack").value.toLowerCase();
		if (searchTrack.length <= 1) {
			return;
		}
		else {
			document.getElementById("userAddTrackBox2").innerHTML = "";
			document.getElementById("userAddTrackBox3").innerHTML = "";
			document.getElementById("userAddTrackBox3").style.visibility = "hidden";
			document.getElementById("addTrackPopupBahnStart").style.visibility = "hidden";
			myTracks("stp",searchTrack);
		}
	};
	
}


function changeAddTrackBahnStart(elem) 
{
	document.getElementById("userAddTrackBox3").innerHTML = "";
	document.getElementById("userAddTrackBox3").style.visibility = "hidden";

	var sel = parseInt(elem.options[elem.selectedIndex].value);
	if (sel == 0) {		// predefined track only
		var txt = "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
		txt += "<tr><td width='100'></td><td colspan='2' align='right'><input type='submit' name='addTrackBtnBack' id='addTrackBtnBack' value='" + getLocStr('Zurücksetzen') + "' /> ";
		txt += "</td></tr>";
		document.getElementById("addTrackPopupBahnStart").style.visibility = "visible";
		var elem2 = document.getElementById("addTrackPopup");
		var selTrack = parseInt(elem2.options[elem2.selectedIndex].value);
		
		displayAddTrackSummary(gTrackStart[selTrack].name,gTrackStart[selTrack].alt_tal,"",gTrackStart[selTrack].alt_berg);
		txt += "</table>";
		document.getElementById("userAddTrackBox2").innerHTML = txt;		
		document.getElementById("userMyTrackBox").style.top = (200 + 180) + "px";
	}
	else {
		var txt = "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
		txt += "<tr><td width='100'></td><td width='60'>"+getLocStr('Radius')+"</td><td class='track1-font'>"+getLocStr('Endpunkt')+"</td></tr>";
		txt += "<tr><td width='100'></td><td width='60'><select name='addRadiusPopup' class='popupMenu' id='addRadiusPopup' onchange='changeAddSelRadius(this);'><option value='3'>3km</option><option value='5'>5km</option><option value='10'>10km</option><option value='20'>20km</option></select></td>";
		txt += "<td><select class='popupMenu'  name='addTrackPopup2' id='addTrackPopup2' onchange='changeAddTrackEnd(this);'><option></option></select> &nbsp;";
		txt += "<select class='popupMenu' style='visibility:hidden;' name='addTrackPopup3' id='addTrackPopup3' onchange='changeAddTrackPredefined(this);'><option></option></select></td></tr>";
		txt += "<tr><td width='100'></td><td colspan='2' align='right'><input type='submit' name='addTrackBtnBack' id='addTrackBtnBack' value='" + getLocStr('Zurücksetzen') + "' /></td></tr";
//			document.getElementById('addTrackPopup2').options[0].selected = true;
//		document.getElementById("addTrackPopupBahnStart").style.visibility = "hidden";
		txt += "</table>";
		document.getElementById("userAddTrackBox2").innerHTML = txt;		
		document.getElementById("userMyTrackBox").style.top = (200 + 180) + "px";
		
		var elem2 = document.getElementById("addTrackPopup");
		var selTrack = parseInt(elem2.options[elem2.selectedIndex].value);
		gTID1 = gTrackStart[selTrack].tid;
//		alert(gTrackStart[selTrack].tid);
		myTracks("nbp",gTID1,3);
		
	}
	var submit = document.getElementById("addTrackBtnBack"); 
	submit.onclick = function(ev) { 
		document.getElementById("userMyTrackBox").style.top = (200) + "px";
		displayAddTrack();
	};
}




function changeAddTrackStart(elem)
{
	var selTrack = parseInt(elem.options[elem.selectedIndex].value);
	gTID1 = gTrackStart[selTrack].tid;
	document.getElementById("userAddTrackBox2").innerHTML = "";
	document.getElementById("userAddTrackBox3").innerHTML = "";
	document.getElementById("userAddTrackBox3").style.visibility = "hidden";
	document.getElementById("addTrackPopupBahnStart").style.visibility = "hidden";
//	alert(selTrack+"/"+gTID1);
	if (gTID1 <= 0) {
//		document.getElementById("addTrackText").innerHTML = "";
	}
	else {
		var txt = "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
		
		
		if (gTID1 < 2000) {
			txt += "<tr><td width='100'></td><td colspan='2' align='right'><input type='submit' name='addTrackBtnBack' id='addTrackBtnBack' value='" + getLocStr('Zurücksetzen') + "' /> ";
			txt += "</td></tr>";
			document.getElementById('addTrackPopupBahnStart').options[0].selected = true;
			document.getElementById("addTrackPopupBahnStart").style.visibility = "visible";
			displayAddTrackSummary(gTrackStart[selTrack].name,gTrackStart[selTrack].alt_tal,"",gTrackStart[selTrack].alt_berg);
		}
		else {
			txt += "<tr><td width='100'></td><td width='60'>"+getLocStr('Radius')+"</td><td class='track1-font'>"+getLocStr('Endpunkt')+"</td></tr>";
			txt += "<tr><td width='100'></td><td width='60'><select name='addRadiusPopup' class='popupMenu' id='addRadiusPopup' onchange='changeAddSelRadius(this);'><option value='3'>3km</option><option value='5'>5km</option><option value='10'>10km</option><option value='20'>20km</option></select></td>";
			txt += "<td><select class='popupMenu'  name='addTrackPopup2' id='addTrackPopup2' onchange='changeAddTrackEnd(this);'><option></option></select> &nbsp;";
			txt += "<select class='popupMenu' style='visibility:hidden;' name='addTrackPopup3' id='addTrackPopup3' onchange='changeAddTrackPredefined(this);'><option></option></select></td></tr>";
			txt += "<tr><td width='100'></td><td colspan='2' align='right'><input type='submit' name='addTrackBtnBack' id='addTrackBtnBack' value='" + getLocStr('Zurücksetzen') + "' /></td></tr";
//			document.getElementById('addTrackPopup2').options[0].selected = true;
//			document.getElementById("addTrackPopupBahnStart").style.visibility = "hidden";
		}
		
		txt += "</table>";
		document.getElementById("userAddTrackBox2").innerHTML = txt;		
		document.getElementById("userMyTrackBox").style.top = (200 + 170) + "px";
		
		if (gTID1 >= 2000)
			myTracks("nbp",gTID1,3);
		
		var submit = document.getElementById("addTrackBtnBack"); 
		submit.onclick = function(ev) { 
			document.getElementById("userMyTrackBox").style.top = (200) + "px";
			displayAddTrack();
		};
	}
}


function changeAddSelRadius(elem) 
{
	var selRadius = parseInt(elem.options[elem.selectedIndex].value);
	myTracks("nbp",gTID1,selRadius);
}


function changeAddTrackEnd(elem)
{
	var selTrack = parseInt(elem.options[elem.selectedIndex].value);
	gTID2 = gTrackEnd[selTrack].tid;
	if (selTrack >= 0) {
		var startElem = document.getElementById("addTrackPopup");
		var trackStart = parseInt(startElem.options[startElem.selectedIndex].value);
//		alert(gTrackEnd[selTrack].type);
		if (gTrackEnd[selTrack].type < 10) {
			var popup3 = document.getElementById("addTrackPopup3");
			while (popup3.firstChild) {							// remove old entries first
				popup3.removeChild(popup3.firstChild);
			}

			popup3.style.visibility = "visible";
			element = document.createElement("option");
			element.value = gTrackEnd[selTrack].alt_tal;
			element.innerHTML = getLocStr('Talstation')+", " + gTrackEnd[selTrack].alt_tal+"m";
			popup3.appendChild(element);
			
			element = document.createElement("option");
			element.value = gTrackEnd[selTrack].alt_berg;
			element.innerHTML = getLocStr('Bergstation')+", " + gTrackEnd[selTrack].alt_berg+"m";
			popup3.appendChild(element);
		}
		else {
			var stationElem = document.getElementById("addTrackPopupBahnStart");
			var selStation = parseInt(stationElem.options[stationElem.selectedIndex].value);			
			if (selStation == 1)
				displayAddTrackSummary(gTrackStart[trackStart].name+" ("+getLocStr('Talstation')+")",gTrackStart[trackStart].alt_tal,gTrackEnd[selTrack].name,gTrackEnd[selTrack].alt_berg);
			else
				if (selStation == 2)
					displayAddTrackSummary(gTrackStart[trackStart].name+" ("+getLocStr('Bergstation')+")",gTrackStart[trackStart].alt_berg,gTrackEnd[selTrack].name,gTrackEnd[selTrack].alt_berg);
				else
					displayAddTrackSummary(gTrackStart[trackStart].name,gTrackStart[trackStart].alt_berg,gTrackEnd[selTrack].name,gTrackEnd[selTrack].alt_berg);
			
			document.getElementById("addTrackPopup3").style.visibility = "hidden";
		}
	}
}


function changeAddTrackPredefined(elem)
{
	var startElem = document.getElementById("addTrackPopup");
	var trackStart = parseInt(startElem.options[startElem.selectedIndex].value);
	
	var endElem = document.getElementById("addTrackPopup2");
	var selTrack = parseInt(endElem.options[endElem.selectedIndex].value);
	var altTrack = parseInt(elem.options[elem.selectedIndex].value);
	
	var stationElem = document.getElementById("addTrackPopupBahnStart");
	var selStation = parseInt(stationElem.options[stationElem.selectedIndex].value);
	if (selStation == 1)
		displayAddTrackSummary(gTrackStart[trackStart].name+" ("+getLocStr('Talstation')+")",gTrackStart[trackStart].alt_tal,gTrackEnd[selTrack].name,altTrack)
	else
		if (selStation == 2)
			displayAddTrackSummary(gTrackStart[trackStart].name+" ("+getLocStr('Bergstation')+")",gTrackStart[trackStart].alt_berg,gTrackEnd[selTrack].name,altTrack);
		else
			displayAddTrackSummary(gTrackStart[trackStart].name,gTrackStart[trackStart].alt_berg,gTrackEnd[selTrack].name,altTrack);
	
//	displayAddTrackSummary(gTrackStart[trackStart].name,gTrackStart[trackStart].alt_berg,gTrackEnd[selTrack].name,altTrack);	//
}



function displayAddTrackSummary(p1text,p1alt,p2text,p2alt) 
{
	var hoehe = 0;
	var name = "";
	var txt2 = "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
	if (p2text.length > 0) {
		hoehe = p2alt - p1alt;
		name = p1text+" - "+p2text;
		txt2 += "<tr><td colspan='4' style='color:#FFFF99;'>"+p1text+" ("+p1alt+"m) > "+p2text+" ("+p2alt+"m) = "+hoehe+" "+getLocStr('Höhenmeter')+"</td>";
	}
	else {
		hoehe = p2alt - p1alt;
		name = p1text;
		gTID2 = gTID1;
		gTID1 = 0;
		txt2 += "<tr><td colspan='4' style='color:#FFFF99;'>"+p1text+" ("+p1alt+" - "+p2alt+"m) = "+hoehe+" "+getLocStr('Höhenmeter')+"</td>";
	}

	txt2 += "<tr><td colspan='3'><strong>"+getLocStr('Optionale Angaben')+":</strong></td></tr>";
	txt2 += "<tr><td>"+getLocStr('Art')+":</td><td>"+displayAddTrackOptionType()+"</td><td align='left'>"+getLocStr('Zeit')+": &nbsp;<input name='trackTime' type='text' id='trackTime' size='5' maxlength='5' /> "+getLocStr('Min.')+" ("+getLocStr('nicht sichtbar')+")</td></tr>";
	txt2 += "<tr><td>"+getLocStr('Wetter')+":</td><td>"+displayAddTrackOptionWeather()+"</td><td></td>";
	txt2 += "<td align='right'><input type='submit' name='addTrackBtnSave' id='addTrackBtnSave'' value='"+getLocStr('Hinzufügen')+"' /></td></tr>";
	txt2 += "</table>";
	document.getElementById("userAddTrackBox3").innerHTML = txt2;
	document.getElementById("userAddTrackBox3").style.visibility = "visible";
	
		var submit2 = document.getElementById("addTrackBtnSave"); 
		submit2.onclick = function(ev) { 
			var datum = document.getElementById("addDate").value;
			if (datum.length < 5 || !checkDateContestRange(document.getElementById("addDate").value)) {
				alert(getLocStr('Msg-Range-Date'));
				return;
			}
			
			if (datum.length > 5 && checkDate(document.getElementById("addDate"))) {
				if (checkDateForFuture(document.getElementById("addDate").value)) {
					if (checkDateForPast(document.getElementById("addDate").value)) {
						
						
						var elem = document.getElementById("addWalkTypPopup");
						var walkTyp = parseInt(elem.options[elem.selectedIndex].value);
						elem = document.getElementById("addWeatherPopup");
						var weather = parseInt(elem.options[elem.selectedIndex].value);
						var zeit = 0;
						if (document.getElementById("trackTime").value.length > 0)
							zeit = parseInt(document.getElementById("trackTime").value,10);

						myTracks("sav",gUID,gTID2,document.getElementById("addDate").value,hoehe,walkTyp,zeit,gTID1,name,weather);
						gTrackName = name;
						document.getElementById("userMyTrackBox").style.top = (200) + "px";
						
						displayStatusUserBox();
						displayAddTrack();
						displayClubProfilBox();
					}
					else {
						document.getElementById("addDate").value = datum;
						alert(getLocStr('Msg-Past-Date'));
					}
				}
				else {
					document.getElementById("addDate").value = datum;
					alert(getLocStr('Msg-Future-Date'));
				}
			}
			else {
				document.getElementById("addDate").value = datum;
				alert(getLocStr('Msg-Invalid-Date'));
			}
		};
}


function changeAddTrack(elem)
{
	return;
	document.getElementById("searchTrack").value = "";
	var select = document.getElementById('addTrackPopup');
	var element;


	while (select.firstChild) {							// remove old entries first
		select.removeChild(select.firstChild);
	}
	document.getElementById("addTrackText").innerHTML = "";
	document.getElementById("addTrackText2").innerHTML = "";
	
	var selRegion = parseInt(elem.options[elem.selectedIndex].value);
	
	element = document.createElement("option");
	element.value = -1;
	element.innerHTML = "Select >>>";
	select.appendChild(element);
				
	for (var j = 0; j < gTrackList.length; j++) {
		if (selRegion == gTrackList[j].region) {
			element = document.createElement("option");
			element.value = gTrackList[j].id;
			element.innerHTML = gTrackList[j].ort + ", " + gTrackList[j].name;
			select.appendChild(element);
		}
	}
}



function displayAddTrackOptionType() 
{
	var txt2 = "";
	txt2 += "<select name='addWalkTypPopup' class='popupMenu' id='addWalkTypPopup'>";
	txt2 += "<option value='0'></option><option value='1'>"+getWalkTypeDesc(1)+"</option><option value='2'>"+getWalkTypeDesc(2)+"</option><option value='3'>"+getWalkTypeDesc(3)+"</option>";
	txt2 += "<option value='4'>"+getWalkTypeDesc(4)+"</option><option value='5'>"+getWalkTypeDesc(5)+"</option><option value='6'>"+getWalkTypeDesc(6)+"</option>";
	txt2 += "<option value='7'>"+getWalkTypeDesc(7)+"</option><option value='8'>"+getWalkTypeDesc(8)+"</option><option value='9'>"+getWalkTypeDesc(9)+"</option></select>";
	return txt2;
}

 
function displayAddTrackOptionWeather() 
{
	var txt2 = "";
	txt2 += "<select name='addWeatherPopup' class='popupMenu' id='addWeatherPopup'>";
	txt2 += "<option value='0'></option><option value='1'>" + getLocStr('Sonnig') + "</option><option value='2'>" + getLocStr('Leicht bewölkt') + "</option><option value='3'>" + getLocStr('Bewölkt') + "</option>";
	txt2 += "<option value='4'>" + getLocStr('Regen') + "</option><option value='5'>" + getLocStr('Gewitter') + "</option><option value='6'>" + getLocStr('Schneefall') + "</option></select>";
	return txt2;
}




function deleteMyTrack(utid)
{
	var check = confirm(getLocStr('Msg-Confirm-Delete-Track'));
	if (check) {
		myTracks("del",gUID,utid,"","");
	}
}





function displayMyTracks(year)
{
	switch (year) {
		case 2008:
			myTracks("lo8",gUID,1,"","");		// load first page
			break;
		case 2009:
			myTracks("lo9",gUID,1,"","");
			break;
		case 2010:
			myTracks("lo0",gUID,1,"","");
			break;
			
		default: myTracks("loa",gUID,1,"","");
	}
}

function displayMyTracksCups(year)
{
	switch (year) {
		case 2010:
			myTracks("cup",gUID,1,"","");		// load first page
			break;
			
		default: myTracks("cup",gUID,1,"","");
	}
	
}



function myTracks(cmd,uid,tid,datum,hoehe,walktyp,zeit,tid2,name,weather)
{
//	resetTimer();
	gTracks_request = false;
    if (typeof XMLHttpRequest != 'undefined') {
    	try {
			gTracks_request = new XMLHttpRequest();
        } catch(e) {
			gTracks_request = false;
        }
    } else if(window.ActiveXObject) {
       	try {
        	gTracks_request = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) {
        	try {
          		gTracks_request = new ActiveXObject("Microsoft.XMLHTTP");
        	} catch(e) {
          		gTracks_request = false;
        	}
		}
    }

	if (gTracks_request) {
		var localfile = document.URL.indexOf("file:",0);
		if (localfile < 0)
			var url = document.URL.substring(0,(document.URL.indexOf(".ch/") + 4)) + gSiteURLPrefix + "cgi-local/";
		else
			var url = gSiteURL + "cgi-local/";
								
		switch (cmd) {
			case 'lo8': 	url += "Tracks.pl?cmd=LoadMy2008&uid=" + uid + "&page=" + tid + "&psize=30";
							gTracks_request.onreadystatechange = processTracksReqLoadMy2008;
							break;
			case 'lo9': 	url += "Tracks.pl?cmd=LoadMy2009&uid=" + uid + "&page=" + tid + "&psize=20";
							gTracks_request.onreadystatechange = processTracksReqLoadMy2009;
							break;
			case 'lo0': 	url += "Tracks.pl?cmd=LoadMy2010&uid=" + uid + "&page=" + tid + "&psize=20";
							gTracks_request.onreadystatechange = processTracksReqLoadMy2010;
							break;
			case 'loa': 	url += "Tracks.pl?cmd=LoadMy&uid=" + uid + "&page=" + tid + "&psize=20";
							gTracks_request.onreadystatechange = processTracksReqLoadMy;
							break;
			case 'sav':		url += "Tracks.pl?cmd=SaveMy&uid=" + uid + "&tid=" + tid + "&tid2=" + tid2 + "&name=" + encodeURIComponent(name) + "&datum=" + datum + "&hoehe=" + hoehe + "&typ=" + walktyp + "&zeit=" + zeit + "&meteo=" + weather + "&sid=" + gSID;
							gTracks_request.onreadystatechange = processTracksReqSaveMy;
							break;
			case 'del':		url += "Tracks.pl?cmd=DeleteMy&uid=" + uid + "&utid=" + tid + "&sid=" + gSID;			// utid is in tid
							gTracks_request.onreadystatechange = processTracksReqDeleteMy;
							break;			

			case 'stx': 	url += "Tracks.pl?cmd=SearchTracks&name=" + encodeURIComponent(uid);
							gTracks_request.onreadystatechange = processTracksReqSearchTracks;
							break;
			case 'stp': 	url += "Tracks.pl?cmd=SearchTracks&name=" + encodeURIComponent(uid);
							gTracks_request.onreadystatechange = processTracksReqSearchTracksPopup;
							break;							
			case 'nbi': 	url += "TracksSearch.pl?cmd=NearbyID&tid=" + uid + "&d=" + tid;	
							gTracks_request.onreadystatechange = processTracksReqSearchNearbyID;
							break;
			case 'nbp': 	url += "TracksSearch.pl?cmd=NearbyID&tid=" + uid + "&d=" + tid;	
							gTracks_request.onreadystatechange = processTracksReqSearchNearbyIDPopup;
							break;
			case 'cup': 	url += "Cup.pl?cmd=LoadMyCups&uid=" + uid + "&page=" + tid + "&psize=20";
							gTracks_request.onreadystatechange = processTracksReqLoadMyCups;
							break;

			default: ;
		}		

		gTracks_request.open("GET",url,true);
		gTracks_request.send(null);
	}
}


function processTracksReqLoadMy2008()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				var txt = "<div class='hoizontalLine' style='position:relative; left:0px; top:6px;'>&nbsp;</div>";
				txt += "<table width='100%' border='0' cellspacing='0' cellpadding='1'>";
				txt += "<tr><td colspan='3'><span class='boxTitle'>"+getLocStr('MEINE STRECKEN')+"</span></td>";
				txt += "<td colspan='4' align='right'><span class='tabTextSelected'>2008</span> | <span class='tabText' onclick='displayMyTracks(2009);'>2009</span>";
				txt += " | <span class='tabText' onclick='displayMyTracks(2010);'>2010</span> | <span class='tabText' onclick='displayMyTracks(2011);'>2011</span></td></tr>";
				txt += "<tr><td colspan='7'>&nbsp;</td></tr>";
				txt += "<tr><td width='70' class='track1-font'>" + getLocStr('Datum') + "</td><td width='265' class='track1-font' colspan='2'>" + getLocStr('Strecke') + "</td><td width='70' class='track1-font'>&nbsp;</td><td width='70' class='track1-font'>" + getLocStr('Höhenmeter') + "</td><td width='35' class='track1-font' align='center'>" + getLocStr('Zeit') + "</td><td width='28' class='track1-font' align='center'>" + getLocStr('Bild') + "</td></tr>";
				
				var newTotalHoehe = 0;
				var tdClass;
				var trackImage;
				var trackWalk;
				var pageSize = 30;

				var items = gTracks_request.responseXML.getElementsByTagName("total");
				var totalTracks = parseInt(getElementTextNS("", "anzahl", items[0], 0),10);
				var curPage = parseInt(getElementTextNS("", "page", items[0], 0),10);
				var totalPages = (totalTracks / pageSize) + 1;
				if (totalTracks % pageSize == 0)
					totalPages--;

				var utid, trackName, tid, hoehe, walktyp, datum, zeit, imgCnt, type;
				items = gTracks_request.responseXML.getElementsByTagName("track");
				for (var i = 0; i < items.length; i++) {
					utid = parseInt(getElementTextNS("", "utid", items[i], 0),10);
					trackName = getElementTextNS("", "name", items[i], 0);
					tid = parseInt(getElementTextNS("", "tid", items[i], 0),10);
					hoehe = parseInt(getElementTextNS("", "hoehe", items[i], 0),10);
					walktyp = parseInt(getElementTextNS("", "typ", items[i], 0),10);
					datum = getElementTextNS("", "datum", items[i], 0);
					zeit = parseInt(getElementTextNS("", "zeit", items[i], 0),10);
					imgCnt = parseInt(getElementTextNS("", "images", items[i], 0),10);
					type = parseInt(getElementTextNS("", "ttype", items[i], 0),10);
					newTotalHoehe += hoehe;
					
					if (i % 2) {
						tdClass = "class='track2e-font'";
					}
					else {
						tdClass = "class='track2o-font'";
					}

					
					var zeitStr = "<td "+tdClass+" align='right' valign='middle'></td>";
					if (zeit > 0)
						zeitStr = "<td "+tdClass+"' align='right' valign='middle'>" + convertMinutestoHHMM(zeit) + "</td>";
					
					if (imgCnt > 0)
						var trackImage = "<td "+tdClass+" style='cursor:pointer;' onclick='editImageUploadBox(event," + utid + ","+ tid +");'>&nbsp;<img src='img/icon/icon_uploadedimage.gif' align='absmiddle'  width='16' height='12' /></td>";
					else
						var trackImage = "<td "+tdClass+" style='cursor:pointer;' onclick='displayImageUploadBox(event," + utid + ","+ tid +");'>&nbsp;<img src='img/icon/icon_noimage.gif' align='absmiddle' width='18' height='12' /></td>";
						
					if (walktyp > 0)
						trackWalk = "<td "+tdClass+" align='right' style='font-size: 9px; color:#CCCCCC'>"+getWalkTypeDesc(walktyp,false)+"</td>";
					else
						trackWalk = "<td "+tdClass+">&nbsp;</td>";
						
						
					txt += "<tr><td width='70' "+tdClass+" align='left' valign='middle'>" + formatDateFromDB(datum) + "</td><td width='20' valign='middle' align='left' "+tdClass+"> " + 
							getTrackTypeIcon(type,true) + "</td><td width='310' "+tdClass+" valign='middle'>" + trackName +"</td>"+trackWalk+"<td width='70' align='right' "+tdClass+" valign='middle'>" + 
							hoehe + "m &nbsp;&nbsp;</td>" + zeitStr + trackImage + "</tr>";
				}
				
				if (newTotalHoehe == 0)
					txt += "<tr><td colspan='4' class='messageYellow'>" + getLocStr('Msg-No-Tracks') + "</td></tr>";
				txt += "</table>";
				
				
				if (totalPages > 1) {
					var prevText = "";
					var nextText = "";
					if (curPage > 1)
						prevText = "<span class='tabText' onclick='myTracks(\"lo8\","+gUID+","+ (curPage - 1) +");'>" + getLocStr('Zurück') + "</span>";
					
	 				var indexes = " ";
					for (var j=1; j<= (totalPages); j++)
						if (j == curPage)
							indexes +=  "&nbsp;<span class='tabTextSelected'>"+j+"</span>&nbsp;";
						else
							indexes +=  "&nbsp;<span class='tabText' onclick='myTracks(\"lo8\","+gUID+","+j+");'>"+j+"</span>&nbsp;";
					
					if (curPage * pageSize < totalTracks)
						nextText = " <span class='tabText' onclick='myTracks(\"lo8\","+gUID+","+ (curPage + 1) +");'>" + getLocStr('Vorwärts') + "</span>";
				
					txt += "<p align='center'>" + prevText + indexes + nextText + "</p>";
				}
				document.getElementById("userMyTrackBox").innerHTML = txt;
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T1 (load tracks)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}


function processTracksReqLoadMy2009()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				var txt = "<div class='hoizontalLine' style='position:relative; left:0px; top:6px;'>&nbsp;</div>";
				txt += "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
				txt += "<tr><td colspan='3'><span class='boxTitle'>"+getLocStr('MEINE STRECKEN')+"</span></td>";
				txt += "<td colspan='5' align='right'><span class='tabText' onclick='displayMyTracks(2008);'>2008</span> | <span class='tabTextSelected'>2009</span> | <span class='tabText' onclick='displayMyTracks(2010);'>2010</span>";
				txt += " | <span class='tabText' onclick='displayMyTracks(2011);'>2011</span></td></tr>";
				txt += "<tr><td colspan='7'>&nbsp;</td></tr>";
				txt += "<tr><td width='70' class='track1-font'>" + getLocStr('Datum') + "</td><td width='330' class='track1-font' colspan='2'>" + getLocStr('Strecke') + "</td><td width='70' class='track1-font'>" + getLocStr('Höhenmeter') + "</td><td width='35' class='track1-font' align='center'>" + getLocStr('Zeit') + "</td><td width='23' class='track1-font' align='center'>&nbsp;</td><td width='39' colspan='2' class='track1-font' align='left'>"+getLocStr('Bild')+"</td></tr>";
				
				displayTracksReqLoadMy(txt,"lo9");
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T1 (load tracks)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}

function processTracksReqLoadMy2010()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				var txt = "<div class='hoizontalLine' style='position:relative; left:0px; top:6px;'>&nbsp;</div>";
				txt += "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
				txt += "<tr><td colspan='3'><span class='boxTitle'>"+getLocStr('MEINE STRECKEN')+"</span></td>";
				txt += "<td colspan='5' align='right'><span class='tabText' onclick='displayMyTracks(2008);'>2008</span> | <span class='tabText' onclick='displayMyTracks(2009);'>2009</span> | <span class='tabTextSelected'>2010</span>";
				txt += " | <span class='tabText' onclick='displayMyTracks(2011);'>2011</span></td></tr>";
				txt += "<tr><td colspan='7'>&nbsp;</td></tr>";
				txt += "<tr><td width='70' class='track1-font'>" + getLocStr('Datum') + "</td><td width='330' class='track1-font' colspan='2'>" + getLocStr('Strecke') + "</td><td width='70' class='track1-font'>" + getLocStr('Höhenmeter') + "</td><td width='35' class='track1-font' align='center'>" + getLocStr('Zeit') + "</td><td width='23' class='track1-font' align='center'>&nbsp;</td><td width='39' colspan='2' class='track1-font' align='left'>"+getLocStr('Bild')+"</td></tr>";
				
				displayTracksReqLoadMy(txt,"lo0");
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T1 (load tracks)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}



function processTracksReqLoadMy()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				var txt = "<div class='hoizontalLine' style='position:relative; left:0px; top:6px;'>&nbsp;</div>";
				txt += "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
				txt += "<tr><td colspan='3'><span class='boxTitle'>"+getLocStr('MEINE STRECKEN')+"</span>&nbsp;&nbsp;<span class='tabTextSelected'>alle</span> | <span class='tabText' onclick='displayMyTracksCups(2011);'>Cups</span></td>";
				txt += "<td colspan='5' align='right'><span class='tabText' onclick='displayMyTracks(2008);'>2008</span> | <span class='tabText' onclick='displayMyTracks(2009);'>2009</span> | <span class='tabText' onclick='displayMyTracks(2010);'>2010</span>";
				txt += " | <span class='tabTextSelected'>2011</span></td></tr>";
				txt += "<tr><td colspan='7'>&nbsp;</td></tr>";
				txt += "<tr><td width='70' class='track1-font'>" + getLocStr('Datum') + "</td><td width='330' class='track1-font' colspan='2'>" + getLocStr('Strecke') + "</td><td width='70' class='track1-font'>" + getLocStr('Höhenmeter') + "</td><td width='35' class='track1-font' align='center'>" + getLocStr('Zeit') + "</td><td width='23' class='track1-font' align='center'>&nbsp;</td><td width='39' colspan='2' class='track1-font' align='left'>"+getLocStr('Bild')+"</td></tr>";
				
				displayTracksReqLoadMy(txt,"loa");
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T1 (load tracks)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}


function processTracksReqLoadMyCups()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				var txt = "<div class='hoizontalLine' style='position:relative; left:0px; top:6px;'>&nbsp;</div>";
				txt += "<table width='100%' border='0' cellspacing='0' cellpadding='2'>";
				txt += "<tr><td colspan='3'><span class='boxTitle'>"+getLocStr('MEINE STRECKEN')+"</span>&nbsp;&nbsp;<span class='tabText' onclick='displayMyTracks(2011);'>alle</span> | <span class='tabTextSelected'>Cups</span></td>";
				txt += "<td colspan='5' align='right'><span class='tabText' onclick='displayMyTracks(2008);'>2008</span> | <span class='tabText' onclick='displayMyTracks(2009);'>2009</span>";
				txt += " | <span class='tabText' onclick='displayMyTracks(2010);'>2010</span> | <span class='tabTextSelected'>2011</span></td></tr>";
				txt += "<tr><td colspan='7'>&nbsp;</td></tr>";
				txt += "<tr><td width='70' class='track1-font'>" + getLocStr('Datum') + "</td><td width='330' class='track1-font' colspan='2'>" + getLocStr('Strecke') + "</td><td width='70' class='track1-font'>" + getLocStr('Höhenmeter') + "</td><td width='35' class='track1-font' align='center'>" + getLocStr('Zeit') + "</td><td width='23' class='track1-font' align='center'>&nbsp;</td><td width='39' colspan='2' class='track1-font' align='left'>"+getLocStr('Bild')+"</td></tr>";
				
				var newTotalHoehe = 0;
				var tdClass;
				var trackImage;
				var trackWalk;
				var pageSize = 20;

				var items = gTracks_request.responseXML.getElementsByTagName("total");
				var totalTracks = parseInt(getElementTextNS("", "anzahl", items[0], 0),10);
				var curPage = parseInt(getElementTextNS("", "page", items[0], 0),10);
				var totalPages = (totalTracks / pageSize) + 1;
				if (totalTracks % pageSize == 0)
					totalPages--;

				var utid, trackName, tid, hoehe, walktyp, datum, zeit, imgCnt, type, weather, cupname, cupid, newcupid;
				cupid = -1;
				items = gTracks_request.responseXML.getElementsByTagName("track");
				for (var i = 0; i < items.length; i++) {
					utid = parseInt(getElementTextNS("", "utid", items[i], 0),10);
					trackName = getElementTextNS("", "name", items[i], 0);
					tid = parseInt(getElementTextNS("", "tid", items[i], 0),10);
					hoehe = parseInt(getElementTextNS("", "hoehe", items[i], 0),10);
					walktyp = parseInt(getElementTextNS("", "typ", items[i], 0),10);
					datum = getElementTextNS("", "datum", items[i], 0);
					zeit = parseInt(getElementTextNS("", "zeit", items[i], 0),10);
					imgCnt = parseInt(getElementTextNS("", "images", items[i], 0),10);
					add_datum = dateOlderThanFreezeTime(getElementTextNS("", "add_datum", items[i], 0));
					type = parseInt(getElementTextNS("", "ttype", items[i], 0),10);
					weather = parseInt(getElementTextNS("", "meteo", items[i], 0),10);
					newcupid = parseInt(getElementTextNS("", "cupid", items[i], 0),10);
					cupname = getElementTextNS("", "cupname", items[i], 0);
					newTotalHoehe += hoehe;
					
					if (i % 2) {
						tdClass = "class='track2e-font'";
					}
					else {
						tdClass = "class='track2o-font'";
					}
					
					if (cupid != newcupid) {
						txt += "<tr><td "+tdClass+" colspan='8' style='color:#FFFFCC; font-Size:14px' height='30'><strong>"+cupname+"</strong></td></tr>";
						cupid = newcupid;
					}
					
					var delIcon = "<td width='16' "+tdClass+">&nbsp;</td>";
					if (add_datum)
						 delIcon = "<td "+tdClass+" align='center' width='16' class='track2-font'style='cursor: pointer;'><a onClick='deleteMyTrack("+utid+")'><img src='img/icon/icon_del.png'></a></td>";

					
					var zeitStr = "<td "+tdClass+" align='right' valign='middle'></td>";
					if (zeit > 0)
						zeitStr = "<td "+tdClass+"' align='right' valign='middle'>" + convertMinutestoHHMM(zeit) + "</td>";
					
					if (imgCnt > 0)
						var trackImage = "<td "+tdClass+" style='cursor:pointer;' onclick='editImageUploadBox(event," + utid + ","+ tid +");'><img src='img/icon/icon_uploadedimage.gif' width='16' height='12' /></td>";
					else
						var trackImage = "<td "+tdClass+" style='cursor:pointer;' onclick='displayImageUploadBox(event," + utid + ","+ tid +");'><img src='img/icon/icon_noimage.gif' width='18' height='12' /></td>";
						
					if (walktyp > 0)
						trackWalk = "<span style='font-size: 9px; color:#CCCCCC'>"+getWalkTypeDesc(walktyp,false)+"</span>";
					else
						trackWalk = "-";
						
						
					txt += "<tr><td width='70' "+tdClass+" align='left' valign='middle'>" + formatDateFromDB(datum) + "</td><td width='20' valign='middle' align='left' "+tdClass+"> " + 
							getTrackTypeIcon(type,true) + "</td><td width='310' "+tdClass+" valign='middle'>" + trackName +"<br>"+trackWalk+"</td>"+""+"<td width='70' align='right' "+tdClass+" valign='middle'>" + 
							hoehe + "m &nbsp;&nbsp;</td>" + zeitStr+"<td "+tdClass+" align='center'>" + getWeatherIcon(weather)+"</td>" + trackImage + delIcon +"</tr>";
				}
				
				if (newTotalHoehe == 0)
					txt += "<tr><td colspan='4' class='messageYellow'>" + getLocStr('Msg-No-Tracks') + "</td></tr>";
				txt += "</table>";
				
				
				if (totalPages > 1) {
					var prevText = "";
					var nextText = "";
					if (curPage > 1)
						prevText = "<span class='tabText' onclick='myTracks(\"cup\","+gUID+","+ (curPage - 1) +");'>" + getLocStr('Zurück') + "</span>";
					
	 				var indexes = " ";
					for (var j=1; j<= (totalPages); j++)
						if (j == curPage)
							indexes +=  "&nbsp;<span class='tabTextSelected'>"+j+"</span>&nbsp;";
						else
							indexes +=  "&nbsp;<span class='tabText' onclick='myTracks(\"cup\","+gUID+","+j+");'>"+j+"</span>&nbsp;";
					
					if (curPage * pageSize < totalTracks)
						nextText = " <span class='tabText' onclick='myTracks(\"cup\","+gUID+","+ (curPage + 1) +");'>" + getLocStr('Vorwärts') + "</span>";
				
					txt += "<p align='center'>" + prevText + indexes + nextText + "</p>";
				}
				document.getElementById("userMyTrackBox").innerHTML = txt;
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T1 (load tracks)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}


function displayTracksReqLoadMy(txt,loadCmd)
{
				var newTotalHoehe = 0;
				var tdClass;
				var trackImage;
				var trackWalk;
				var pageSize = 20;

				var items = gTracks_request.responseXML.getElementsByTagName("total");
				var totalTracks = parseInt(getElementTextNS("", "anzahl", items[0], 0),10);
				var curPage = parseInt(getElementTextNS("", "page", items[0], 0),10);
				var totalPages = (totalTracks / pageSize) + 1;
				if (totalTracks % pageSize == 0)
					totalPages--;

				var utid, trackName, tid, hoehe, walktyp, datum, zeit, imgCnt, type, weather;
				items = gTracks_request.responseXML.getElementsByTagName("track");
				for (var i = 0; i < items.length; i++) {
					utid = parseInt(getElementTextNS("", "utid", items[i], 0),10);
					trackName = getElementTextNS("", "name", items[i], 0);
					tid = parseInt(getElementTextNS("", "tid", items[i], 0),10);
					hoehe = parseInt(getElementTextNS("", "hoehe", items[i], 0),10);
					walktyp = parseInt(getElementTextNS("", "typ", items[i], 0),10);
					datum = getElementTextNS("", "datum", items[i], 0);
					zeit = parseInt(getElementTextNS("", "zeit", items[i], 0),10);
					imgCnt = parseInt(getElementTextNS("", "images", items[i], 0),10);
					add_datum = dateOlderThanFreezeTime(getElementTextNS("", "add_datum", items[i], 0));
					type = parseInt(getElementTextNS("", "ttype", items[i], 0),10);
					weather = parseInt(getElementTextNS("", "meteo", items[i], 0),10);
					newTotalHoehe += hoehe;
					
					if (i % 2) {
						tdClass = "class='track2e-font'";
					}
					else {
						tdClass = "class='track2o-font'";
					}
					
					var delIcon = "<td width='16' "+tdClass+">&nbsp;</td>";
					if (add_datum)
						 delIcon = "<td "+tdClass+" align='center' width='16' class='track2-font'style='cursor: pointer;'><a onClick='deleteMyTrack("+utid+")'><img src='img/icon/icon_del.png'></a></td>";

					
					var zeitStr = "<td "+tdClass+" align='right' valign='middle'></td>";
					if (zeit > 0)
						zeitStr = "<td "+tdClass+"' align='right' valign='middle'>" + convertMinutestoHHMM(zeit) + "</td>";
					
					if (imgCnt > 0)
						var trackImage = "<td "+tdClass+" style='cursor:pointer;' onclick='editImageUploadBox(event," + utid + ","+ tid +");'><img src='img/icon/icon_uploadedimage.gif' width='16' height='12' /></td>";
					else
						var trackImage = "<td "+tdClass+" style='cursor:pointer;' onclick='displayImageUploadBox(event," + utid + ","+ tid +");'><img src='img/icon/icon_noimage.gif' width='18' height='12' /></td>";
						
					if (walktyp > 0)
						trackWalk = "<span style='font-size: 9px; color:#CCCCCC'>"+getWalkTypeDesc(walktyp,false)+"</span>";
					else
						trackWalk = "-";
						
						
					txt += "<tr><td width='70' "+tdClass+" align='left' valign='middle'>" + formatDateFromDB(datum) + "</td><td width='20' valign='middle' align='left' "+tdClass+"> " + 
							getTrackTypeIcon(type,true) + "</td><td width='310' "+tdClass+" valign='middle'>" + trackName +"<br>"+trackWalk+"</td>"+""+"<td width='70' align='right' "+tdClass+" valign='middle'>" + 
							hoehe + "m &nbsp;&nbsp;</td>" + zeitStr+"<td "+tdClass+" align='center'>" + getWeatherIcon(weather)+"</td>" + trackImage + delIcon +"</tr>";
				}
				
				if (newTotalHoehe == 0)
					txt += "<tr><td colspan='4' class='messageYellow'>" + getLocStr('Msg-No-Tracks') + "</td></tr>";
				txt += "</table>";
				
				
				if (totalPages > 1) {
					var prevText = "";
					var nextText = "";
					if (curPage > 1)
						prevText = "<span class='tabText' onclick='myTracks(\""+loadCmd+"\","+gUID+","+ (curPage - 1) +");'>" + getLocStr('Zurück') + "</span>";
					
	 				var indexes = " ";
					for (var j=1; j<= (totalPages); j++)
						if (j == curPage)
							indexes +=  "&nbsp;<span class='tabTextSelected'>"+j+"</span>&nbsp;";
						else
							indexes +=  "&nbsp;<span class='tabText' onclick='myTracks(\""+loadCmd+"\","+gUID+","+j+");'>"+j+"</span>&nbsp;";
					
					if (curPage * pageSize < totalTracks)
						nextText = " <span class='tabText' onclick='myTracks(\""+loadCmd+"\","+gUID+","+ (curPage + 1) +");'>" + getLocStr('Vorwärts') + "</span>";
				
					txt += "<p align='center'>" + prevText + indexes + nextText + "</p>";
				}
				document.getElementById("userMyTrackBox").innerHTML = txt;
}



function processTracksReqSaveMy()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
//				alert(gTracks_request.responseText);
				var utid = parseInt(gTracks_request.responseText,10);
//				resetCacheRes();
				displayMyTracks();
				displayAddTrack();
				
//				alert(utid);
				getResults("rnk",gUID);			// update rank incl. update of topten
				registerActivity(gUID,3,gTrackName,utid);
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T2 (save tracks)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}


function processTracksReqDeleteMy()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				displayMyTracks();
//				getResults("rnk",gUID);			// update rank incl. update of topten
				displayClubProfilBox();
				resetCacheRes();

			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T3 (delete track)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}





function processTracksReqSearchTracksPopup()
{
	
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				
				var select = document.getElementById('addTrackPopup');
				select.style.visibility = "visible";
				var element;

				while (select.firstChild) {							// remove old entries first
					select.removeChild(select.firstChild);
				}
				while (gTrackStart.pop())
					;

//				document.getElementById("addTrackText").innerHTML = "";
//				document.getElementById("addTrackText2").innerHTML = "";
	
				element = document.createElement("option");
				element.value = -1;
				element.innerHTML = "Select >>>";
				select.appendChild(element);

				var tid, name, ort, bahn_type, alt_tal, alt_berg, kanton;
				var prevType = 0;
				var items = gTracks_request.responseXML.getElementsByTagName("track");
				for (var i = 0; i < items.length; i++) {
					tid = parseInt(getElementTextNS("", "tid", items[i], 0),10);
					name = getElementTextNS("", "name", items[i], 0)
					ort = getElementTextNS("", "ort", items[i], 0);
					bahn_type = parseInt(getElementTextNS("", "typ", items[i], 0),10);
					kanton = getElementTextNS("", "kanton", items[i], 0);
					alt_tal = parseInt(getElementTextNS("", "tal", items[i], 0),10);;
					alt_berg = parseInt(getElementTextNS("", "alt", items[i], 0),10);
					
					if (doTrackTypeDivider(select,prevType,bahn_type))
						prevType = bahn_type;

					element = document.createElement("option");
					element.value = i;
					if (kanton.length == 2)
						element.innerHTML = name + " ("+kanton+")";
					else
						element.innerHTML = name;
						
					if (alt_tal > 0)
						element.innerHTML += ", " + alt_tal+"-"+alt_berg+"m"
					else
						element.innerHTML += ", " + alt_berg+"m";
						
					select.appendChild(element);

					var obj = new Object();
					obj.tid = tid
					obj.name = name;
					obj.type = bahn_type;
					obj.alt_tal = alt_tal;
					obj.alt_berg = alt_berg;
					gTrackStart.push(obj);

				}
				if (items.length <= 0)
					document.getElementById('addTrackPopup').options[0].innerHTML = getLocStr('Msg-No-Track-Found');
				else
					document.getElementById('addTrackPopup').options[0].innerHTML =  "Select >>> " + items.length + " " + getLocStr('gefunden');

						
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T4 (search track)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}






function processTracksReqSearchNearbyIDPopup()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
				var select = document.getElementById('addTrackPopup2');
				var element;

				while (select.firstChild) {							// remove old entries first
					select.removeChild(select.firstChild);
				}
				
				while (gTrackEnd.pop())
					;

//				document.getElementById("addTrackText").innerHTML = "";
//				document.getElementById("addTrackText2").innerHTML = "";
//				document.getElementById('addTrackPopup2').options[0].selected = true;
	
				element = document.createElement("option");
				element.value = -1;
				element.innerHTML = "Select >>>";
				element.disabled = true;
				select.appendChild(element);
	
				var cnt = 0;
				var tid, name, ort, bahn_type, alt_tal, alt_berg;
				var prevType = 0;
				var items = gTracks_request.responseXML.getElementsByTagName("track");
				for (var i = 0; i < items.length; i++) {
					tid = parseInt(getElementTextNS("", "tid", items[i], 0),10);
					name = getElementTextNS("", "name", items[i], 0)
					ort = getElementTextNS("", "ort", items[i], 0);
					bahn_type = parseInt(getElementTextNS("", "typ", items[i], 0),10);
					alt_tal = parseInt(getElementTextNS("", "tal", items[i], 0),10);;
					alt_berg = parseInt(getElementTextNS("", "alt", items[i], 0),10);

					if (tid != gTID1) {
						if (doTrackTypeDivider(select,prevType,bahn_type))
							prevType = bahn_type;

						element = document.createElement("option");
						element.value = i;
						element.innerHTML = name + ", " + alt_berg+"m";
						select.appendChild(element);
						cnt++;
					}
					var obj = new Object();
					obj.tid = tid
					obj.name = name;
					obj.type = bahn_type;
					obj.alt_tal = alt_tal;
					obj.alt_berg = alt_berg;
					gTrackEnd.push(obj);

				}
				
				if (cnt <= 0)
					document.getElementById('addTrackPopup2').options[0].innerHTML = getLocStr('Msg-No-Track-Found');
				else
					document.getElementById('addTrackPopup2').options[0].innerHTML =  "Select >>> " + cnt + " " + getLocStr('gefunden');

			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T3 (nearby track)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}



function processTracksReqSearchTracks()
{
	
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {

				
				document.getElementById("mainbg").style.height = "1000px";
				document.getElementById("vline").style.height = "1200px";
				
				var txt = "<table border='0' width='100%' cellpadding='2' cellspacing='0'>";
					txt += "<tr><td class='track1-font' colspan='2'>"+getLocStr('Startpunkt')+"/"+getLocStr('Strecke')+"</td><td class='track1-font' align='left'>"+getLocStr('Ort')+"/"+getLocStr('Kanton')+"</td><td class='track1-font' align='right' width='100'>" +getLocStr('Höhe')+ "</td><td class='track1-font' width='25'>" +getLocStr('Link')+ "</td></tr>";
		
				document.getElementById("tracksSelectorNavBox").innerHTML = "";
				var items = gTracks_request.responseXML.getElementsByTagName("track");
				var tdClass = "";
				var tdClassLink = "";
				var tid, name, ort, bahn_type, alt_tal, alt_berg, kanton, url, x, y, altText, ortText;
				var prevType = 0;
				var typeText;
				var bgPatternCnt = 0;
				var i;
				for (i = 0; i < items.length; i++) {
					tid = parseInt(getElementTextNS("", "tid", items[i], 0),10);
					name = getElementTextNS("", "name", items[i], 0)
					ort = getElementTextNS("", "ort", items[i], 0);
					bahn_type = parseInt(getElementTextNS("", "typ", items[i], 0),10);
					alt_tal = parseInt(getElementTextNS("", "tal", items[i], 0),10);;
					alt_berg = parseInt(getElementTextNS("", "alt", items[i], 0),10);
					kanton = getElementTextNS("", "kanton", items[i], 0);
					url = getElementTextNS("", "url", items[i], 0);
					x = parseInt(getElementTextNS("", "x", items[i], 0),10);
					y = parseInt(getElementTextNS("", "y", items[i], 0),10);


					typeText = trackTypeDividerText(prevType,bahn_type);
					if (typeText != "") {
						prevType = bahn_type;
						txt += "<tr><td colspan='5'>&nbsp;</td></tr>";
						txt += "<tr><td width='25'>"+getTrackTypeIcon(bahn_type,false)+"</td><td colspan='4' align='left'><span style='color:#FFFF99;'>"+ typeText + "</span></td></tr>";
						bgPatternCnt = 0;
					}

					if (bgPatternCnt % 2) {
						tdClass = "class='track2e-font'";
						tdClassLink = "class='track2el-font'";
					}
					else {
						tdClass = "class='track2o-font'";
						tdClassLink = "class='track2ol-font'";
					}

					if (url.length > 0)
						url = "<a href='http://" + url + "' target='bahnurl'><img src='img/icon/icon_link.gif' border='0'></a>";
					else
						url = "";

					if (bahn_type < 10)
						altText = alt_tal+" - "+alt_berg;
					else
						altText = alt_berg;
						
					ortText = "";
					if (ort.length > 0) {
						ortText = ort;
						if (kanton.length == 2)
							ortText += ", "+kanton;
					}
					else {
						if (kanton.length == 2)
							ortText = kanton;
					}
				
					txt += "<tr><td colspan='2' id='c"+tid+"' "+tdClassLink+" onClick='expandCell("+tid+","+x+","+y+","+alt_berg+");'>"+name+"</td><td "+tdClass+" width='180' align='left'>"+ortText+"</td><td "+tdClass+" width='100' align='right'>" +altText+ "m</td><td "+tdClass+" align='center'>" +url+ "</td></tr>";
					bgPatternCnt++;
					
					if (i > 60) {
						document.getElementById("tracksSelectorNavBox").innerHTML = "<span class='messageYellow'>" + getLocStr('Msg-Track-Search-Toomany') + "</span>";
						break;
					}
				}
		
				if (i == 0)
					txt += "<tr><td colspan='5' class='messageYellow'>" + getLocStr('Msg-No-Track-Found') + "</td></tr>";
					
				txt += "</table><br>";
				
				document.getElementById("tracksListBox").innerHTML = txt;
				gCachedTrackSearch = txt;
			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T4 (search track)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}


function processTracksReqSearchNearbyID()
{
	var err = 0;
	
    if (gTracks_request.readyState == 4) {
        // only if "OK"
        if (gTracks_request.status == 200) {
			if (gTracks_request.responseText.length > 0) {
//				alert(gTracks_request.responseText);

				var txt = "<table border='0' width='100%' cellpadding='2' cellspacing='0'>";
					txt += "<tr><td class='track1-font' colspan='2'>" +getLocStr('Strecke') + "</td><td class='track1-font' align='right'>" +getLocStr('Höhe') + "</td><td class='track1-font' align='right'>" +getLocStr('Differenz') + "</td><td class='track1-font' width='30'>" +getLocStr('Link')+ "</td></tr>";

				var items = gTracks_request.responseXML.getElementsByTagName("track");
				var tdClass = "";
				var tdClassLink = "";
				var prevType = 0;
				var bgPatternCnt = 0;
				var tid, name, ort, bahn_type, alt_tal, alt_berg, kanton, url, x, y, altText, ortText, delta;
				var i = 0;
				for (i = 0; i < items.length; i++) {
					tid = parseInt(getElementTextNS("", "tid", items[i], 0),10);
					name = getElementTextNS("", "name", items[i], 0)
					ort = getElementTextNS("", "ort", items[i], 0);
					bahn_type = parseInt(getElementTextNS("", "typ", items[i], 0),10);
					alt_tal = parseInt(getElementTextNS("", "tal", items[i], 0),10);;
					alt_berg = parseInt(getElementTextNS("", "alt", items[i], 0),10);
					url = getElementTextNS("", "url", items[i], 0);

					typeText = trackTypeDividerText(prevType,bahn_type);
					if (typeText != "") {
						prevType = bahn_type;
						txt += "<tr><td colspan='4'>&nbsp;</td></tr>";
						txt += "<tr><td width='25'>"+getTrackTypeIcon(bahn_type,false)+"</td><td colspan='4' style='color:#FFFF99' align='left'>"+ typeText + "</td></tr>";
						bgPatternCnt = 0;
					}

					if (bgPatternCnt % 2) {
						tdClass = "class='track2e-font'";
						tdClassLink = "class='track2el-font'";
					}
					else {
						tdClass = "class='track2o-font'";
						tdClassLink = "class='track2ol-font'";
					}
					
					if (url.length > 0)
						url = "<a href='http://" + url + "' target='bahnurl'><img src='img/icon/icon_link.gif' border='0'></a>";
					else
						url = "";

					if (bahn_type < 10) {
						altText = alt_tal+" - "+alt_berg;
						if (alt_tal - gAlt < 0)
							delta = alt_berg - gAlt;
						else
							delta = (alt_tal - gAlt) +" - "+ (alt_berg - gAlt);
					}
					else {
						altText = alt_berg;
						delta = alt_berg - gAlt;
					}

					
					if (bahn_type < 10)
						txt += "<tr><td colspan='2' id='c"+tid+"' "+tdClass+" >" + name + "</td><td "+tdClass+" align='right' width='100'>" + altText + "m</td><td "+tdClass+" align='right' width='100' valign='top'>" + delta + "m</td><td "+tdClass+" align='center'>" +url+ "</td></tr>";
					else
						txt += "<tr><td colspan='2' id='c"+tid+"' "+tdClass+" >" + gSaved+" - "+name + "</td><td "+tdClass+" align='right' width='100'>" + altText + "m</td><td "+tdClass+" align='right' width='100' valign='top'>" + delta + "m</td><td "+tdClass+" align='center'>" +url+ "</td></tr>";
					bgPatternCnt++;
				}


				if (i == 0)
					txt += "<tr><td colspan='5' class='messageYellow'>" + getLocStr('Msg-No-Track-Found') + "</td></tr>";

				txt += "</table><br>";
				document.getElementById("tracksListBox").innerHTML = txt;
				
				
				var hh = (i-20) * 15;
				if (hh < 500)
					hh = 500;
				document.getElementById("mainbg").style.height = (500 + hh) + "px";
				document.getElementById("vline").style.height = (700 + hh) + "px";

			}
			else
				alert(getLocStr('Msg-Failed-Operation') + ": T3 (nearby track)");
		}
		else {
			//alert("Failed to retrieve data (" + gTracks_request.status + "/" + err + ")");
		}
	}
	else {
	}
}

var gTID;
var gSaved;

function resetCacheSearch()
{
	document.getElementById("tracksSelectorNavBox").innerHTML = "";
	document.getElementById("tracksListBox").innerHTML = gCachedTrackSearch;
	gMap.clearOverlays();
}


function changeSearchRadius(elem,tid)
{
	document.getElementById("tracksListBox").innerHTML = loadingMessage();
	var selRadius = parseInt(elem.options[elem.selectedIndex].value);
	myTracks("nbi",tid,selRadius);
}




function expandCell(tid,x,y,alt)
{	
//	alert(x+"/"+y+"/"+alt);
	var txt = "";
	gAlt = alt;
	gSaved = document.getElementById("c"+tid).innerHTML;
	txt += "<span style='cursor:pointer;text-decoration:underline;'><a onClick='resetCacheSearch();'>"+getLocStr('Zurück zu den Suchresultaten')+"</a></span> -- " + gSaved + " ("+alt+"m) ";
	txt += "&nbsp;"+getLocStr('Radius')+": <select name='searchRadiusPopup' class='popupMenu' id='searchRadiusPopup' onchange='changeSearchRadius(this,"+tid+");'><option value='3'>3km</option><option value='5'>5km</option><option value='10'>10km</option><option value='20'>20km</option></select>";
	document.getElementById("tracksSelectorNavBox").innerHTML = txt;
	document.getElementById('searchRadiusPopup').options[1].selected = true;
	
	document.getElementById("tracksListBox").innerHTML = loadingMessage();
	var point = new GLatLng(swissToWgsLat(x,y),swissToWgsLng(x,y));
	gMap.setCenter(point, 13);
	gMap.addOverlay(new GMarker(point));
		
	myTracks("nbi",tid,5);
	window.scrollTo(0, 280);	
}


// -----------------------------------------------------------
// GENERAL TRACK LIST
// -----------------------------------------------------------

function checkReturnKey(event)
{
	taste=event.keyCode?event.keyCode:event.which?event.which:event.charCode;
	if(taste==13) {
		var searchTrack = document.getElementById("searchTrack").value.toLowerCase();
		if (searchTrack.length <= 1) {
			return;
		}
		else {
			document.getElementById("tracksListBox").innerHTML = loadingMessage();
			myTracks("stx",searchTrack);
		}	
	}
}



function displayTracksMain()
{
	var txt ="";
	
	txt = "<span class='boxTitle'>" + getLocStr('STRECKEN AUSWAHL') + "</span><br>";
	txt += "<span class='boxText'>" + getLocStr('Txt-Tracks-Text') + "</span>";
	document.getElementById("tracksBoxHead").innerHTML = txt;
	
	txt = "<br>";
	txt += "<span class='boxText'>" + getLocStr('Startpunkt') + "/"+getLocStr('Strecke')+":</span>&nbsp;";
	txt += "<input name='searchTrack' type='text' id='searchTrack' size='12' maxlength='30' />&nbsp; <input type='submit' name='searchTrackBtn' id='searchTrackBtn' value='" + getLocStr('Suchen') + "' /><br><br>";
	document.getElementById("tracksSelectorBox").innerHTML = txt;	
	
	var submit = document.getElementById("searchTrackBtn"); 
	submit.onclick = function(ev) { 
		var searchTrack = document.getElementById("searchTrack").value.toLowerCase();
		if (searchTrack.length <= 1) {
			return;
		}
		else {
			document.getElementById("tracksListBox").innerHTML = loadingMessage();
			myTracks("stx",searchTrack);
		}
	};
	
	document.getElementById("searchTrackBtn").focus();
	
	loadRandomUserImage();		// load one user image (top right corner)
	
	displayReportFeedbackBox();
	
	document.getElementById("mapTitleText").innerHTML = getLocStr('Kartenausschnitt');
}



function displayReportFeedbackBox()
{
	var txt = "<span class='boxTitle'>" + getLocStr('Txt-Tracks-Text2Title') + "</span><br />";
	txt += "<span class='track2-font'>" + getLocStr('Txt-Tracks-Text2') + "</span><br><br>";
	
	document.getElementById("reportFeedbackBox").innerHTML = txt;

	txt += "<table width='100%' border='0'>";
	txt += "<tr><td>" + getLocStr('Punktname') + ":</td><td><input name='track_name' type='text' id='track_name' size='25' /></td></tr>";
	txt += "<tr><td>" + getLocStr('Typ') + ":</td><td><select name='track_typ' class='style2' id='track_typ'><option value='0'></option><option value='10'>" + getLocStr('Ort') + "</option><option value='11'>" + getLocStr('Hütte') + "</option><option value='12'>" + getLocStr('Pass') + "</option>";
	txt += "<option value='13'>" + getLocStr('Strassenpass') + "</option><option value='14'>" + getLocStr('See') + "</option><option value='15'>" + getLocStr('Aussichtspunkt') + "</option><option value='20'>" + getLocStr('Hügel') + "</option><option value='21'>" + getLocStr('Gipfel') + "</option></select></td></tr>";
	txt += "<tr><td>" + getLocStr('Ort') + ":</td><td><input name='track_ort' type='text' id='track_ort' size='10' />&nbsp;&nbsp; ";
	txt += "<select name='track_kanton' class='style2' id='track_kanton'><option value='0'></option>";
    txt += "<option value='AG'>AG</option><option value='AR'>AR</option><option value='AI'>AI</option><option value='BL'>BL</option><option value='BS'>BS</option><option value='BE'>BE</option><option value='FR'>FR</option><option value='GE'>GE</option>";
	txt += "<option value='GL'>GL</option><option value='GR'>GR</option><option value='JU'>JU</option><option value='LU'>LU</option><option value='NE'>NE</option><option value='NW'>NW</option><option value='OW'>OW</option><option value='SH'>SH</option>";
	txt += "<option value='SZ'>SZ</option><option value='SG'>SG</option><option value='SO'>SO</option><option value='TI'>TI</option><option value='TG'>TG</option><option value='UR'>UR</option><option value='VD'>VD</option><option value='VS'>VS</option>";
	txt += "<option value='ZG'>ZG</option><option value='ZH'>ZH</option></select></td></tr>";
	txt += "<tr><td>" + getLocStr('Höhe') + ":</td><td><input name='track_hoehe' type='text' id='track_hoehe' size='10' /></td></tr>";
	txt += "<tr><td>" + getLocStr('Koordinaten') + " X:</td><td><input name='track_x' type='text' id='track_x' size='8' />&nbsp;&nbsp;Y: <input name='track_y' type='text' id='track_y' size='8' /></td></tr>";
//	txt += "<tr><td></td><td><input type='reset' value='" + getLocStr('Löschen') + "' /> ";
	txt += "<tr><td>" + getLocStr('Kommentar') + ":</td><td><input name='track_comment' type='text' id='track_comment' size='25' /></td></tr>";

	txt += " <tr><td></td><td><input type='submit' name='modifyUserBtn' id='modifyUserBtn' value='" + getLocStr('Melden') + "' /></td></tr>";
	txt += "</table>";

	
}



function trackTypeDividerText(prevType,curType)
{
	if (prevType != curType) {
		if (curType == 1 && (prevType == 2 || prevType == 3 || prevType == 5))
			return "";
		if (curType == 2 && (prevType == 1 || prevType == 3 || prevType == 5))
			return "";
		if (curType == 3 && (prevType == 1 || prevType == 2 || prevType == 5))
			return "";
		if (curType == 5 && (prevType == 1 || prevType == 2 || prevType == 3))
			return "";
		if ((curType == 4 && prevType == 6) || (curType == 6 && prevType == 4))
			return "";
		if (curType == 22 && (prevType == 23 || prevType == 24))
			return "";
		if (curType == 23 && (prevType == 22 || prevType == 24))
			return "";
		if (curType == 24 && (prevType == 22 || prevType == 23))
			return "";
		
		return getTrackTypeDesc(curType);
	}
	return "";	
}




function doTrackTypeDivider(popupMenu,prevType,curType)
{
	if (prevType != curType) {
		if (curType == 1 && (prevType == 2 || prevType == 3 || prevType == 5))
			return true;
		if (curType == 2 && (prevType == 1 || prevType == 3 || prevType == 5))
			return true;
		if (curType == 3 && (prevType == 1 || prevType == 2 || prevType == 5))
			return true;
		if (curType == 5 && (prevType == 1 || prevType == 2 || prevType == 3))
			return true;
		if ((curType == 4 && prevType == 6) || (curType == 6 && prevType == 4))
			return true;
		if (curType == 22 && (prevType == 23 || prevType == 24))
			return true;
		if (curType == 23 && (prevType == 22 || prevType == 24))
			return true;
		if (curType == 24 && (prevType == 22 || prevType == 23))
			return true;

		var element = document.createElement("option");
		element.value = 0;
		element.innerHTML = getTrackTypeDesc(curType);
		element.disabled = true;
		element.style.backgroundColor="#104268";
		element.style.color="#dddddd";
		popupMenu.appendChild(element);
		return true;
	}
	return false;	
}



function getTrackTypeDesc(typ)
{
	var name = "";
	
	switch (typ) {
		case 1:		;
		case 2:		;
		case 3:		;
		case 5:		name = getLocStr("Seilbahn");			break;
		case 4:		;
		case 6:		name = getLocStr("Zahnradbahn")+"/"+getLocStr("Standseilbahn");		break;
		case 7:		name = getLocStr("Bahn");				break;
		case 8:		name = getLocStr("Klettersteig");		break;
		case 9:		name = getLocStr("Postauto");			break;
		case 10:	name = getLocStr("Ort");				break;
		case 11:	name = getLocStr("Hütte");				break;
		case 12:	name = getLocStr("Pass");				break;
		case 13:	name = getLocStr("Strassenpass");		break;
		case 14:	name = getLocStr("See");				break;
		case 15:	name = getLocStr("Aussichtspunkt");		break;
		case 20:	name = getLocStr("Hügel");				break;
		case 21:	name = getLocStr("Gipfel");				break;
		default: ;
	}
	
	return name;
}


function getTrackTypeIcon(typ,alignLeft)
{
	var name = "";
	var left = "";
	if (alignLeft) 
		left = " align='left'";
	
	switch (typ) {
		case 1:		;
		case 2:		;
		case 3:		;
		case 5:		name = "<img src='img/icon/iconTypeSeilbahn.png' alt='Seilbahn' width='20' height='19'" +left +">";		break;
		case 4:		;
		case 6:		name = "<img src='img/icon/iconTypeZahnradbahn.png' width='20' height='19'" +left +">";		break;
		case 7:		name = "<img src='img/icon/iconTypeZug.png' width='20' height='19'" +left +">";				break;
		case 8:		name = "<img src='img/icon/iconTypeKlettersteig.png' width='20' height='19'" +left +">";	break;
		case 9:		name = "<img src='img/icon/iconTypeBus.png' width='20' height='19'" +left +">";				break;
		case 10:	name = "<img src='img/icon/iconTypeOrt.png' width='20' height='19'" +left +">";				break;
		case 11:	name = "<img src='img/icon/iconTypeHuette.png' width='20' height='18'" +left +">";			break;
		case 12:	name = "<img src='img/icon/iconTypePass.png' width='20' height='18'" +left +">";			break;
		case 13:	name = "<img src='img/icon/iconTypePassstrasse.png' width='20' height='19'" +left +">";		break;
		case 14:	name = "<img src='img/icon/iconTypeBergsee.png' width='20' height='20'" +left +">";			break;
		case 15:	name = "<img src='img/icon/iconTypeAussichtspunkt.png' width='20' height='20'" +left +">";	break;
		case 20:	name = "<img src='img/icon/iconTypeHuegel.png' width='20' height='19'" +left +">";			break;
		case 21:	name = "<img src='img/icon/iconTypeGipfel.png' width='20' height='19'" +left +">";			break;
		default: ;
	}
	
	return name;
}



function getWalkTypeDesc(typ,showNull)
{
	var name = "";
	
	switch (typ) {
		case 0:		if (showNull) name = getLocStr("ohne Angabe");		break;
		case 1:		name = getLocStr("Wandern");			break;
		case 2:		name = getLocStr("Jogging");			break;
		case 3:		name = getLocStr("Nordic Walking");		break;
		case 4:		name = getLocStr("Bike");				break;
		case 5:		name = getLocStr("Schneeschuh");		break;
		case 6:		name = getLocStr("Klettern");			break;
		case 7:		name = getLocStr("Velo");				break;
		case 8:		name = getLocStr("Bergsteigen");		break;
		case 9:		name = getLocStr("Tourenski");			break;
		default:	;
	}
	
	return name;
}


function getWeatherIcon(typ)
{
	var name = "";
	
	switch (typ) {
		case 1:		name = "<img src='img/icon/weatherSonnig.png' width='20' height='20' alt='"+getLocStr("Sonnig")+"'>";			break;
		case 2:		name = "<img src='img/icon/weatherLeichtbewoelkt.png' width='20' height='20' alt='"+getLocStr("Leicht bewölkt")+"'>";		break;
		case 3:		name = "<img src='img/icon/weatherBewoelkt.png' width='20' height='20' alt='"+getLocStr("Bewölkt")+"'>";			break;
		case 4:		name = "<img src='img/icon/weatherRegen.png' width='20' height='20' alt='"+getLocStr("Regen")+"'>";				break;
		case 5:		name = "<img src='img/icon/weatherGewitter.png' width='20' height='20' alt='"+getLocStr("Gewitter")+"'>";			break;
		case 6:		name = "<img src='img/icon/weatherSchnee.png' width='20' height='20' alt='"+getLocStr("Scheefall")+"'>";			break;
		default:	;
	}
	
	return name;
}


function getGenderDesc(typ)
{
	var name = "";
	
	switch (typ) {
		case 0:		name = getLocStr("ohne Angabe");	break;
		case 1:		name = getLocStr("Frauen");			break;
		case 2:		name = getLocStr("Männer");			break;
		
		default:	name = getLocStr("ohne Angabe");	break;
	}
	
	return name;
}


// -----------------------------------------------------------
// GOOGLE MAP
// -----------------------------------------------------------


function initializeMap() {
	if (GBrowserIsCompatible()) {
        gMap = new GMap2(document.getElementById("gmap"));
		gMap.addMapType(G_PHYSICAL_MAP);
		gMap.removeMapType(G_HYBRID_MAP);
		gMap.addControl(new GSmallMapControl());
		gMap.addControl(new GMapTypeControl());
		gMap.setMapType(G_PHYSICAL_MAP);
		
		var scale = new GScaleControl();
		gMap.addControl(scale);
 // 		gMap.setCenter(new GLatLng(37.4419, -122.1419), 13);
		_mPreferMetric = true;
	}
}



