var mydate = new Date();
var nextDate = '';
var newSortTimerId = 0;
var motUsage='origin';
var mouseDown= false;
var dragger= 1;
var headTab = 0;


function checkIfRemoteFileExists(fileToCheck)
{
	var tmp=new Image;
	tmp.src=fileToCheck;
	if(tmp.complete==false)
	{ 
	
		if(document.scripts){
			for(i=0; i< document.scripts.length; i++){
			
				if(document.scripts[i].src.indexOf('http://map.vvs')!='-1'){
					alert(document.scripts[i].src + ' ist nicht erreichbar!');
					document.scripts[i].src='scripts/';
				}
			}
		}

	}
} 

function resizeMap(){

	var sbh = $("searchbar")?$("searchbar").offsetHeight:$("addressbar").offsetHeight
	var fh=$("header")?$("header").offsetHeight+sbh:sbh;
	var sh=$("sidebarmenu")?$("sidebarmenu").offsetHeight:0;
	var sw=$("sidebarmenu")?$("sidebarmenu").offsetWidth:0;
	var ch=document.documentElement.clientHeight;
	var cw=document.documentElement.clientWidth;
	var mh=ch-fh;
	var mw=cw-sw;

	if($("mdvMap")){
		$("mdvMap").style.height=(ch>=mh && mh > 300)?mh+"px":"300px";
		$("map").style.height=(ch>=mh && mh > 300)?mh+"px":"300px";
		
		$("mdvMap").style.width=(cw>=mw && mw > 425)?mw+"px":"425px";
		$("map").style.width=(cw>=mw && mw > 420)?mw+"px":"420px";
	}
};


// this function submit the form if the sort is complete 
function mdvEventOnNewSortComplete(obj)
{
	var from = obj.id.split(':')[1];
	var to = 1;
	
	if(obj.previousSibling && obj.previousSibling.id){
		to = obj.previousSibling.id.split(':')[1];
	}
	else{
		to='origin';
	}
	
	if(from != to){
	
		if(from =='start' && to=='end'){
			document.forms[0].changeOrigToDestVia.value = 1;
		}
		else if(from =='end' && to=='start'){
			document.forms[0].changeDestToViaPos.value=0;
		}
		else if(from =='end' && to=='origin'){
			document.forms[0].changeDestToOrigVia.value = 1;
		}
		
		else if(from =='start'){
			document.forms[0].changeOrigToViaPos.value = parseInt(to) +1;
		}
		else if(from =='end'){
		
			if(to=='origin'){
				document.forms[0].changeDestToViaPos.value = 1;
			}
			else{
				document.forms[0].changeDestToViaPos.value = parseInt(to) +1;
			}
		}
		else if(to =='start'){
			document.forms[0].changeVia.value = from + ':' + 0;
		}
		else if(to =='end'){
			document.forms[0].changeVia.value = from + ':' + 'destination';
		}
		else{
		
			if(from > to){
				to = parseInt(to) +1
			}

			document.forms[0].changeVia.value = from + ':' + to;
		}
		
		document.forms[0].submit();
	}
};


function setdate(choser){

	switch(choser)
	{
		case "1":
			nextDate = mydate;
			break;
		case "2":
			nextDate = new Date(mydate.getFullYear(),mydate.getMonth(),mydate.getDate()+1);
			break;
		case "3":
			nextDate = new Date(mydate.getFullYear(),mydate.getMonth(),mydate.getDate()+(6-mydate.getDay()));
			break;
		case "4":
			nextDate = new Date(mydate.getFullYear(),mydate.getMonth(),mydate.getDate()+(7-mydate.getDay()));
			break;
	}

	if(choser!='anyday')
	{	
		if(day = document.getElementById('itdDateDayPopUp')) day.value = formatdate(nextDate.getDate());
		if(month = document.getElementById('itdDateMonthPopUp')) month.value = formatdate(nextDate.getMonth() + 1);

		if(day = document.getElementById('itdDateDay')) day.value = formatdate(nextDate.getDate());
		if(month = document.getElementById('itdDateMonth')) month.value = formatdate(nextDate.getMonth() + 1);
		
		var tempYear = nextDate.getFullYear();
		tempYear += ''
		tempYear = tempYear.substr(2,4);

		if(year = document.getElementById('itdDateYearPopUp')) year.value = tempYear; 
		if(year = document.getElementById('itdDateYear')) year.value = tempYear;
		
	} 
};

// this function format the date
function formatdate(value)
{
	var myval = new String(value);

	if(myval.length < 2) myval = "0" + myval;
	return myval;
};

// change the position of the origin/destination and via points from the left side of the page
function changePoint(id){

	var checkboxOrig = document.getElementById('type-s1:' + id);
	var checkboxDest = document.getElementById('type-s2:' + id);
	var checkboxVia = document.getElementById('type-s3:' + id);
	var dwellTime = document.getElementById('dwellTime_' + id);
	
	// change start point
	if(id=='start'){
		// to origin and destination
		if(checkboxOrig.checked==true && checkboxOrig.checked==true){
			document.forms[0].copyOrigToDest.value = '1';
		}
		// to destination
		else if(checkboxDest.checked==true){
			document.forms[0].changeOrigToDest.value = id;
		}
		// to via
		else if(checkboxVia.checked==true){
			document.forms[0].changeOrigToVia.value = 1;
		}
	}
	
	// change end point
	else if(id=='end'){
		// to origin and destination
		if(checkboxOrig.checked==true && checkboxOrig.checked==true){
			document.forms[0].copyDestToOrig.value = '1';
		}
		// to origin
		else if(checkboxOrig.checked==true){
			document.forms[0].changeDestToOrig.value = id;
		}
		// to via
		if(checkboxVia.checked==true){
			document.forms[0].changeDestToVia.value = 1;
		}
	}
	
	//change via point
	else{
	
		// to origin and destination
		if(checkboxOrig.checked==true && checkboxDest.checked==true){
			document.forms[0].changeViaToOrigDest.value = id;
		}
		// to origin
		else if(checkboxOrig.checked==true){
			document.forms[0].changeViaToOrig.value = id;
		}
		// to destination
		else if(checkboxDest.checked==true){
			document.forms[0].changeViaToDest.value = id;
		}
	}
	
	$('adoptViaDwellMin').value=id+ ':' + dwellTime.value;
	
};

// set map centre and zoom level 
function checkOdvState(){

	var viaIndex = document.getElementById('via_index').value;
	
	if(document.getElementById('itdLPxx_adoptPoint').value=='inputField' && 
		document.getElementById('itdLPxx_odv_via') && 
		document.getElementById('nameState_via').value=='identified' ){
	
		var viaID = document.getElementById('itdLPxx_odv_via').value;
		var x = document.getElementById('nameX_via').value;
		var y = document.getElementById('nameY_via').value;
		var mapName = document.getElementById('nameMapName_via').value;
	
		document.getElementById('itdLPxx_mapCentre').value = x + ':' + y + ':' +mapName; 
		//document.getElementById('itdLPxx_zoomLevel').value = '5';		
		document.getElementById('itdLPxx_adoptPoint').value= viaID;
	}
};

// this function set the right parameter to calculate the trip
function rdyToCal(state){

	var submit=false;
	var type = '107';
	var onlyBikeVia = 0;

	if(document.forms[0].nameState_via.value=='identified'){
		document.forms[0].delVia.value='1';
	}
	
	document.forms[0].execInst.value='normal';
	
	// get all adoptViaMOT elements in the form with id searchfom
	var elements = $('searchform').getElements('input[name=adoptViaMOT]');

	
	if(!$('adoptViaMOT_0')){
		type = document.forms[0].adoptOrigMOT.value;
	}
	else{
		for(var i=0; i < elements.length; i++){
		
			if(elements[i].id.indexOf('adoptViaMOT')!='-1'){
				type=	elements[i].value.split(':')[1] || elements[i].value;
				
				if(elements[i].value.split(':')[1]=='107' || elements[i].value=='107'){
					onlyBikeVia+= 1;
				}
			}
		}
	}
	
	document.forms[0].adoptDestMOT.value = type;
	
	if(document.forms[0].adoptOrigMOT.value == 107 && 
		document.forms[0].adoptDestMOT.value ==107 && elements.length==0){
		
		document.forms[0].cycleType.value = '107';
		submit=true;
	}
	else if(document.forms[0].adoptOrigMOT.value == 107 && 
		document.forms[0].adoptDestMOT.value ==107 && elements.length == onlyBikeVia){
		
		submit=true;
	}
	else if(document.forms[0].adoptOrigMOT.value == 102 && 
		document.forms[0].adoptDestMOT.value ==102 && elements.length==0){
		document.forms[0].cycleType.value = '102';
	}
	else{
		document.forms[0].cycleType.value = '';
	}
	
    if(state=='time'){
		document.getElementById('itdLPxx_lastCommand').value='changeRequest';
		document.forms[0].execInst.value='verifyOnly';
	}
	else if(submit==true || document.getElementById('itdLPxx_lastCommand').value=='changeRequest' && $('sidebar-calendar-time')){
		document.getElementById('itdLPxx_lastCommand').value='';
		//document.forms[0].submit();
        sendForm()
	}
	else if(state=='overlay' || state=='overlayInfo'){
		
		hideOverlay('overlayInfo');
		showOverlay();
	}
}


function changeMot(type, value){

    value = 60 * value / 15;

    $('trIT' + type + 'MOTvalue102').value = value;
    $('trIT' + type + 'MOTvalue101').value = value;

}


function setMotType(type){

	var typeText= takept;
	
	if(type=='102'){
		typeText=takeBike;
	}
	else if(type=='107'){
		typeText=bikeRoute;
	} 
	
	if(motUsage=='origin'){
		document.forms[0].adoptOrigMOT.value = type;
		document.getElementById('motOrigin').innerHTML = typeText;
	}
	else{
		document.getElementById('motVia' + motUsage).innerHTML = typeText;
		document.getElementById('adoptViaMOT_' + motUsage).value = motUsage + ':' + type;
	}

    
    
    
	hideLayer('sidebar-popup-planung');
	hideLayer('sidebar-popup-vvsbike');
	hideLayer('sidebar-popup-vvs');
};

function checkApplyButton(id){

	var idNumber = 0;

	if(id.indexOf('typeorigin')!='-1'){
		idNumber = id.substring(10);
		document.getElementById('dwellTimeToolTip' +idNumber).disabled=true;
	}
	else if(id.indexOf('typedestination')!='-1'){
		idNumber = id.substring(15);
		document.getElementById('dwellTimeToolTip' +idNumber).disabled=true;
	}
	else{
		idNumber = id.substring(7);
		document.getElementById('dwellTimeToolTip' +idNumber).disabled=false;
	}
	
	// set usage to origDest if origin and destination checked
	if(document.getElementById('typeorigin' +idNumber).checked==true && document.getElementById('typedestination' +idNumber).checked==true){
		mdvToolTip.toolTip.helper.usage='origDest';
	}

	if(document.getElementById('typeorigin' +idNumber).checked==true || document.getElementById('typedestination' +idNumber).checked==true || document.getElementById('typevia' +idNumber).checked==true){ 
		document.getElementById('buttonDisabled' +idNumber).style.display='none';
		document.getElementById('buttonEnabled' +idNumber).style.display='inline';
	}
	else{
		document.getElementById('buttonDisabled' +idNumber).style.display='inline';
		document.getElementById('buttonEnabled' +idNumber).style.display='none';
	}
};



function setTripSelector(pos){
	$('tripSelector').name = 'tripSelector' + pos;
	$('itdLPxx_tripSelector').value = pos;
};


function setRouteOptions(type){

	if(type=='shortest'){
		document.forms[0].useSignedRoute.checked=false;
		document.forms[0].usePseudoRouting.checked=false;
		document.forms[0].preferAsphaltTracks.checked=false;
		document.forms[0].preferGreenTracks.checked=false;
		document.forms[0].cycleSpeed.value='20';
        optionSlider.set(0)
	}
	else if(type=='sportive'){
		document.forms[0].useSignedRoute.checked=false;
		document.forms[0].usePseudoRouting.checked=true;
		document.forms[0].preferAsphaltTracks.checked=true;
		document.forms[0].preferGreenTracks.checked=false;
		document.forms[0].cycleSpeed.value='20';
        optionSlider.set(50)
	}
	else if(type=='attractive'){
		document.forms[0].useSignedRoute.checked=false;
		document.forms[0].usePseudoRouting.checked=true;
		document.forms[0].preferAsphaltTracks.checked=false;
		document.forms[0].preferGreenTracks.checked=true;
		document.forms[0].cycleSpeed.value='15';
        optionSlider.set(0)
	}

	$('choosenRoute').value = type;
};



function openwindow(URL,Name,Eigenschaft) {
 	top.window.open(URL,Name,Eigenschaft);
};


function checkReturnKey(e)
{	
	var keyCode = 0;	
	if(window.event){ 
		keyCode = window.event.keyCode;
	}
	else {
		keyCode = e.keyCode;	
	
	}
	
	if(document.forms[0].nameState_via.value=='identified'){
		document.forms[0].nameState_via.value='empty'
	}
	
	if(document.forms[0].placeState_via.value=='identified'){
		document.forms[0].placeState_via.value='empty'
	}
	
	document.forms[0].via_index.value='empty';
	document.forms[0].itdLPxx_adoptPoint.value='inputField';
	document.forms[0].execInst.value='verifyOnly';
};

function submitButtonInputField(){

	if(document.forms[0].nameState_via.value=='identified'){
		document.forms[0].nameState_via.value='empty'
	}
	
	if(document.forms[0].placeState_via.value=='identified'){
		document.forms[0].placeState_via.value='empty'
	}
	
	document.forms[0].via_index.value='empty';
	document.forms[0].itdLPxx_adoptPoint.value='inputField';
};

var changeContentID = null;

function changeResultTabs(currPage, command, purpose, pathId){

	var _params = {
		sessionID: document.getElementById('sessionID').value, 
		requestID: document.getElementById('requestID').value, 
		itdLPxx_onlyContent: '1', 
		command: command, 
		itdLPxx_currentPage: currPage, 
		purpose: purpose
	};
		
	if(purpose=='RRP' || purpose=='RRP2'){
		_params['purpose'] = 'RRP2.Detail';
		_params['imageFormat'] = 'PNG';
		_params['imageWidth'] = '345';
		_params['imageHeight'] = '204';
		_params['imageWidthO'] = '345';
		_params['imageHeightO'] = '42';
		_params['2ndElevation'] = '1';
		_params['2ndPurpose'] = 'RRP2.Overview';
		_params['addYAxis'] = '1';
	}

	var host = 'XSLT_TRIP_REQUEST2?';
	
	if(currPage == 'netPathElevationProfile'){
		_params['pathId'] = pathId;
		host = 'XSLT_ELEVATION_REQUEST?';
		changeContentID = 'tabElevationContent';
	}
    
	
	if(currPage == 'netPathGpxTracks'){
         var points = getOrigDestGPX(pathId);
    
		_params['command'] = 'GPXTrack';
		_params['pathId'] = pathId;
		_params['sessionID'] = mdvNetPath.sessionID;
		_params['outputFormat'] = 'XML';
		_params['reverse'] = '1';
        _params['gpxOrig'] = points[0];
        _params['gpxDest'] = points[1];
        _params['language'] = mapLanguage;
		host = 'XSLT_NETPATH_REQUEST?';
		changeContentID = 'tabTrackContent';
	}
	
	var _ajax = mdvLib.ajax({ host: host, parameters: _params, onComplete: changeContent});
};

 /* this functino check if locality date is complete */  	 
function getOrigDestGPX(pathId){ 	 
  	 
     var http; 	
     var name = new Array();
     if (window.XMLHttpRequest) { 	 
        http = new XMLHttpRequest(); 	 
     }  	 
    else if (window.ActiveXObject) { 	 
        http = new ActiveXObject("Microsoft.XMLHTTP"); 	 
     } 	 
     else{ 	 
             return false; 	 
     } 	 
         
     http.open('GET', '/' + virtDir + '/xml/src/include/Themenrouten.xml',false); 	 
     http.send(null); 	 
         
     if(!http.responseXML){ 	 
             return false; 	 
     } 	 
         
     var routes = http.responseXML.getElementsByTagName('record') 	 
 
     for(var i=0;i< routes.length;i++) 	 
     { 	 
          if(routes[i].getElementsByTagName('ID_Themenroute')[0].text == pathId){
            name.push(routes[i].getElementsByTagName('Startort')[0].text)
            name.push(routes[i].getElementsByTagName('Zielort')[0].text)
          }
          else if(routes[i].getElementsByTagName('ID_Themenroute')[0].textContent == pathId){
            name.push(routes[i].getElementsByTagName('Startort')[0].textContent)
            name.push(routes[i].getElementsByTagName('Zielort')[0].textContent)
          }
     } 	
     
     return name;
 }



function changeContent(request){

	if($('sidebarausgabe')){
		$('sidebarausgabe').innerHTML = this.response.text;
	}
	else if(changeContentID =='tabTrackContent'){
    
		$('downloadLink').href = this.response.xml.lastChild.lastChild.firstChild.lastChild.getAttribute('src')
        
		$('downloadLinkReturn').href = this.response.xml.lastChild.lastChild.lastChild.lastChild.getAttribute('src');
        
	}
	else if($(changeContentID)){
		$(changeContentID).innerHTML = this.response.text;
	}
	
	initiate();
	
	var scrollDiv = parseInt(dragger) -1 + '';
	var box = $('wideProfile' + dragger);
	
	if(box){
		box.onscroll = function () {
			$('elPin' + scrollDiv).style.display='none';
		}
	}

	var droppables = $('dragger' +dragger);
	
	$$('div.dragger').each(function(drag){
	
		drag.style.top='0px';
		drag.style.left='0px';

		var id = drag.id.substring(7,8)
		var container = $('containment' +id);
		
		var firstTop = drag.style.top;
        var currentStep = 0;
        
        var mySlider = new Slider(container, droppables, {
            steps: 345,	// There are 100 steps
            range: [0],	// Minimum value is 0
            onChange: function(step){
                var left = parseInt(step) - this.half;
                var profileImgWidth = parseInt($('profileImgWidth'+ parseInt(id -1)).value);
                var imgWidth = this.max;
                var pr = (left/imgWidth)*100;
                var scrL = (pr * profileImgWidth) / 100;
                
                $('wideProfile' + id).scrollLeft = scrL;
                $('elPin' + scrollDiv).style.display='none';
            },

        	onComplete: function(step){
                    
                if(currentStep!=step){

                    var profileImgWidth = parseInt($('profileImgWidth'+ parseInt(id -1)).value);
    				var profileImgLength = parseInt($('profileImgLength'+ parseInt(id -1)).value);

    				var imgWidth = this.max;
    				var pr = ((parseInt(step) + Math.round(parseInt($('profileBox' + id).style.width) / 2))/imgWidth)*100;
    				var meter = Math.ceil(profileImgLength * pr/100);
    				var trip = '1';
    				
    				if(mdvJpMaps[currentMap].mdvMap.getLayer('polylines')){
    					var coords = mdvJpMaps[currentMap].mdvMap.getLayer('polylines').polylines[id -1].coords.length;
    				}
    				else{
    					var coords = mdvJpMaps[currentMap].trips.layer.polylines[id -1].coords.length;
    				}
                    
    				var coordPos = Math.ceil(pr/100 * coords);
    				var scrL = (pr * profileImgWidth) / 100;
    				
    				if(this.element.getLeft() < 10){
    					scrL = 0;
    					coordPos =1;
    				} 
    				
    				if(coordPos==coords){
    					coordPos-=1;
    				}
    				else if(coordPos > coords){
    					coordPos = coords -1;
    				}
    				else if(coordPos < 0){
    					coordPos = 0;
    				}
    				
    				var _params = {
    					sessionID: document.getElementById('sessionID').value, 
    					requestID: document.getElementById('requestID').value, 
    					command: 'ElevationPos:' + trip,
    					meter: meter
    				};

    				var host = 'XSLT_TRIP_REQUEST2?';
    				
    				if(headTab == 'net'){
    					host = 'XML_NETPATH_REQUEST?';
    					_params['pathId'] = mdvNetPath.pathId;
    					_params['sessionID'] = mdvNetPath.sessionID;
    					_params['command'] = 'ElevationPos';
                        _params['language'] = mapLanguage;
    				}
                    
    				var _ajax = mdvLib.ajax({ host: host, parameters: _params, onComplete: setCoord});
                }
                
                currentStep = step;
            }
        });
		
	});
	
	if($('dragger' +dragger)){
		$('dragger' +dragger).style.top = 'auto';
	}
};


function changeEnquiryTabs(request){

    if(!document.getElementById('mdvMap')){
		if(request=='net'){
			location.href = 'XSLT_TRIP_REQUEST2?itdLPxx_currentPage=netPath&language=' + mapLanguage;
			return false;
		}
		else{
			location.href = 'XSLT_TRIP_REQUEST2?language=' + mapLanguage;
			return false;
		}
    }

	if(mdvJpMaps[currentMap].mdvMap.getLayer('efa_trip').markers.length || mdvJpMaps[currentMap].mdvMap.getLayer('vvsMarkers').markers.length){
		
		if(currentPage=='result' && request=='net' || request=='net'){
			location.href = 'XSLT_TRIP_REQUEST2?itdLPxx_currentPage=netPath&language=' + mapLanguage;
			return false;
		}
		else if(currentPage=='result'){
			location.href = 'XSLT_TRIP_REQUEST2?language=' + mapLanguage;
			return false;
		}
	}
	
	activeTab = "tabRoute";
	selPathId= null;

	// reset Map 
	if(mdvJpMaps[currentMap].mdvMap.getLayer('polylines')){
		mdvJpMaps[currentMap].mdvMap.getLayer('polylines').removeAllPolylines();
	}

	if(mdvJpMaps[currentMap].mdvMap.getLayer('vvsMarkers')){
		mdvJpMaps[currentMap].mdvMap.getLayer('vvsMarkers').removeAllMarkers();
	}

	if(mdvJpMaps[currentMap].mdvMap.getLayer('directions')){
		mdvJpMaps[currentMap].mdvMap.getLayer('directions').removeAllMarkers();
	}
	
	if(mdvJpMaps[currentMap].mdvMap.getLayer('nearInfo')){
		mdvJpMaps[currentMap].mdvMap.getLayer('nearInfo').removeAllMarkers();
	}
    
    
	if(mdvJpMaps[currentMap].mdvMap.markerLayer){
		mdvJpMaps[currentMap].mdvMap.markerLayer.removeAllMarkers()
	}
	
	if(mdvJpMaps[currentMap].hiddenMarker){
		mdvJpMaps[currentMap].hiddenMarker = null;
	}
	
	if($('routeName')){
		$('routeName').innerHTML = '';
	}

	if($('routeLink')){
		$('routeLink').style.display = 'none';
	}
    
    $('distMarkerBox').style.display='none';

	headTab = request;

	var host = 'XSLT_TRIP_REQUEST2';
	
	if(request=='net'){
		host = 'XSLT_NETPATH_REQUEST'
	
		if($('searchbar')){
			$('searchbar').style.display='none';
			$('addressbar').style.display='';
		}
		
		if($('headtabs').children){
			$('headtabs').children[0].className='';
			$('headtabs').children[1].className='active';
		}
		else if($('headtabs').childNodes){
			$('headtabs').childNodes[1].className='';
			$('headtabs').childNodes[3].className='active';
		}
	}
	else{
	
		document.forms[0].itdLPxx_currentPage.value='';
		if($('searchbar')){
			$('searchbar').style.display='';
			$('addressbar').style.display='none';
		}
		
		if($('headtabs').children){
			$('headtabs').children[0].className='active';
			$('headtabs').children[1].className='';
		}
		else if($('headtabs').childNodes){
			$('headtabs').childNodes[1].className='active';
			$('headtabs').childNodes[3].className='';
		}
	}
	
	var _params = {
		itdLPxx_onlyContent: '1'
	};
	
	var _ajax = mdvLib.ajax({ host: host, parameters: _params, onComplete: changeEnquiryContent});
};

function changeEnquiryContent(request){


	if($('sidebarausgabe')){
		$('sidebarausgabe').innerHTML = this.response.text;
	}
	else{
		$('sidebar').style.visibility='visible';
		$('sidebar').innerHTML = this.response.text;
	}
	
	if($('pathList')){
		var sbh = $("addressbar").getSize().y
		var fh=$("header")?$("header").getSize().y:128;
		var sh=$("sidebarmenu")?$("sidebarmenu").getSize().y:34;
		var ch = window.getSize();
		var ah = sh+sbh+fh -1;

		$('pathList').style.height =(ch.y-ah)+"px"
	}
	
	if($('tabRouteLegScroller-0')){
		var sbh = $("addressbar").getSize().y
		var fh=$("header")?$("header").getSize().y+sbh:sbh;
		var sh=$("sidebarmenu")?$("sidebarmenu").getSize():34;
		var ch = window.getSize();
		var mh=ch.y-fh;
		var mw=ch.x-sh.x;
		var ah = $("sidebartour").getSize().y+$("sidebartabs").getSize().y+$("tabRouteLines").getSize().y+sh.y+sbh+fh+1;

		$('tabRouteLegScroller-0').style.height =(ch.y-ah)+"px"
	}
	
	if($('fixFocus')){
		document.getElementById('fixFocus').focus();
	}
    
    if($('flyout')){
        initiate();  
        iTargets.init(); 
    }
    
	mdvJpMaps[currentMap].displayWaitDiv(false);
}


/* NEW Function to test */
function clickElevationProfile(length, pos, event){

	var profileImgWidth = parseInt($('profileImgWidth' + pos).value);

	if(event.offsetX){
		var mousePos = event.offsetX;
		var mousePosTop = event.offsetY;
	}
	else{
		var mousePos = event.layerX;
		var mousePosTop = event.layerY;
	}
	
	$('elPin' + pos).style.display= '';
	$('elPin' + pos).style.left= event.clientX -3 +  'px';
	$('elPin' + pos).style.marginTop= mousePosTop  + 'px';
	
	var imgWidth = profileImgWidth ;
	var pr = (mousePos/imgWidth)*100;
	var meter = Math.ceil(length * pr/100);
	var trip = '1';
	var partTrip = pos+1;
	var boxPos = 345 * pr / 100;
	var maxLef = 345 - parseInt($('profileBox' + parseInt(pos +1)).style.width) -10;
	
	if(boxPos > maxLef || $('dragger' + parseInt(pos +1)).style.left > 280){
		boxPos = maxLef;
	}
	else if(boxPos < 0){
		boxPos = 0;
	}
	
	if($('profileBox' + parseInt(pos +1)).style.width !='335px'){
		$('dragger' + parseInt(pos +1)).style.left = boxPos +'px';
	}
		
	var _params = {
		sessionID: document.getElementById('sessionID').value, 
		requestID: document.getElementById('requestID').value, 
		command: 'ElevationPos:' + trip,
		meter: meter
		};

	var host = 'XSLT_TRIP_REQUEST2?';
	
	if(headTab == 'net'){
		host = 'XML_NETPATH_REQUEST?';
		_params['pathId'] = mdvNetPath.pathId;
		_params['sessionID'] = mdvNetPath.sessionID;
		_params['command'] = 'ElevationPos';
		_params['outputFormat'] = 'JSON';
        _params['language'] = mapLanguage;
	}
	
	/* send ajax request to get the coord */
	var _ajax = mdvLib.ajax({ host: host, parameters: _params, onComplete: setCoord});

};


function setCoord(request){

	if(!request){
		return false;
	}
	else{
		json = request;
	}

	var retCoords= request.split(',');
	
	if(headTab == 'net'){
		eval('efa = ' + json + ';');
	
		var coordX = efa.netPathInfo.elevX;
		var coordY = efa.netPathInfo.elevY;
	}
	else{
		var coordX = parseInt(retCoords[0]);
		var coordY = parseInt(retCoords[1]);
	}
	
    
    mdvJpMaps[currentMap].setBikeMarker(coordX, coordY);
    
    
	/* var coord = new MDVCoordinates(mdvJpMaps[currentMap].mdvMap.config.params.mapName, coordX, coordY);
	
	 if(mdvJpMaps[currentMap].hiddenMarker){
		mdvJpMaps[currentMap].hiddenMarker.coords.x = coordX;
		mdvJpMaps[currentMap].hiddenMarker.coords.y = coordY;
	}
	else{
	    mdvJpMaps[currentMap].hiddenMarker = mdvJpMaps[currentMap].mdvMap.createMarker(coord, new MDVPoint(0.5, 0.5), 'images/mdvMap/elevationMarker.gif');
		mdvJpMaps[currentMap].mdvMap.markerLayer.addMarker(mdvJpMaps[currentMap].hiddenMarker);
	}
	
	mdvJpMaps[currentMap].setCentre(coord);
	mdvJpMaps[currentMap].mdvMap.update();  */
	
}





function checkTime(obj){

	if (obj.id=='itdTimeHour' || obj.id=='itdTimeHourPopUp') {
		var hour = parseInt(obj.value);

		if(isNaN(hour)){
			obj.value = 1;
		}
		else if(hour > 24){
			obj.value = 24;
		}		
	}

	if (obj.id=='itdTimeMinute' || obj.id=='itdTimeMinutePopUp') {
		var minute = parseInt(obj.value);
		
		if(isNaN(minute)){
			obj.value = '00';
		}
		else if(minute > 59){
			obj.value = 59;
		}
	}
}

function checkDate(obj){

	if (obj.id=='itdDateDay' || obj.id=='itdDateDayPopUp') {

		var day = parseInt(obj.value);

		if(isNaN(day )){
			obj.value = mydate.getDate();
		}
		else if(day > 31)
		{
			obj.value = mydate.getDate();
		}		
	}

	if (obj.id=='itdDateMonth' || obj.id=='itdDateMonthPopUp') {

		var month = parseInt(obj.value);
		
		if(isNaN( month)){
			obj.value = mydate.getMonth();
		}
		else if( month > 12)
		{
				obj.value = 12;
		}
	}
	
	if (obj.id=='itdDateYear' || obj.id=='itdDateYearPopUp') {

		var year = parseInt(obj.value);
		var tempYear  =mydate.getYear() +'';
		
		tempYear = tempYear.substring(2,4);
		
		if(isNaN(year)){
			obj.value = tempYear;
		}
		else if(year != 09 && year != 10 && year != 11 && year != 12){
			obj.value = tempYear;
		}
	}
}

function moveSelectThis(obj){

	if(mouseDown==true){
		obj.select();
	}
}


function checkDateTimeDep(obj){

	if(obj.value=='dep' && obj.checked==true){
		document.getElementById('arrdep-1').checked = true;
	}
	else{
		document.getElementById('arrdep-2').checked = true;
	}
}

function mapLink(event){

	if(event.x){
		$('map-popup-linkto').style.left = event.x -200 + 'px';
	}
	else if(event.offsetX){
		$('map-popup-linkto').style.left = event.offsetX -200 + 'px';
	}
	else{
		$('map-popup-linkto').style.left = event.layerX -200 + 'px';
	}

	$('map-popup-linkto').style.display='block';
    
    var textLink = document.getElementById('linkto');
        textLink.focus();
        textLink.select();
}


Array.prototype.sortAsc = function(intCol){
  if(intCol >= this.length) return;

  for(var i=0; i<this.length-1; i++){
    for(var j=(i+1); j<this.length; j++){
      // Falls das aktuelle Element grösser ist -> tauschen
      if(this[j][intCol] < this[i][intCol]){
        var arrHelp = this[i];
        this[i] = this[j];
        this[j] = arrHelp;
      }
    }
  }
}
