var wgs84 ='';
var globalSubmit = false;

//add cookie to page 
function addCookie(odv){

	if(odv.indexOf('Aktuelle Position')!='-1' || odv.indexOf('Current position')!='-1'){
		return false;
	}

	var a = new Date();a = new Date(a.getTime() +1000*60*60*24*365);
	var newCookie = new Array(); 
    var oldCookie = getCookie('odvs'); 
	
	if(oldCookie.indexOf(odv.substr(0, odv.lastIndexOf('|')))=='-1'){
		if(oldCookie.length > 0){
			oldCookie = oldCookie.split("$:$");
            newCookie = oldCookie;
		}
		newCookie.unshift(odv);
		if(newCookie.length > nOfCookies){
			newCookie.pop();
		}
        
        newCookie = newCookie.join("$:$")
        document.cookie = 'odvs=' +encodeURIComponent(newCookie) +'; expires='+ a.toGMTString()+';';
    }
}

//insert new odv cookie
function insertCookie(usage){

	if(document.cookie && document.getElementById('content') && getCookie('odvs')){
		var name = getCookie('odvs'); 
            name = name.split("$:$"); 
            
		var cookieDropDown = document.createElement('div');cookieDropDown.className='cdp';
		var imgWidth = '220'; 
        var imgHeight = '220';
        
		if(typeof clientDisplayWidth !='undefined' && typeof clientDisplayHeight !='undefined'){
			imgWidth = parseInt(clientDisplayWidth);
			imgHeight = parseInt(clientDisplayHeight);
		}
        
		var request = (usage =='dm') ? 'XSLT_DM_REQUEST?deleteAssignedStops_dm=1&' : 'XSLT_TRIP_REQUEST2?imageFormat=PNG&imageOnly=1&';
        
            request += 'stateless=1&ptOptionsActive=1&'
        
        request +=document.getElementById('cookieOptions').value.substring(1) + '&';
        
		if(usage!='dm'){
        
            var time = null;
            
            if(document.getElementById('itdTimeHour')){
                time = document.getElementById('itdTimeHour').value + '' +document.getElementById('itdTimeMinute').value
            }
            else{
                time = document.getElementById('itdTime').value
            }
            
            if(document.forms[0].useRealtime){
                request += 'useRealtime=1&';
            }
        
			request += 'imageTiles=1&';
			request += 'imageWidth=' + imgWidth + '&';
			request += 'imageHeight=' + imgHeight + '&';
            request += 'itdTime=' + time + '&';
			request +='itdDate=' + document.getElementById('itdDate').value + '&ptOptionsActive=1&';
			
            if(initialLineRestriction){
				request +='lineRestriction=' + initialLineRestriction + '&';
			}
			
			if(initialProxFootSearch){
				request +='useProxFootSearch=' + initialProxFootSearch + '&';
			}
		}
        
		if(usage=='dm'){
        
            if(document.forms[0].useRealtime){
                request += 'useRealtime=1&';
            }
            
			request += 'useAllStops=1&maxAssignedStops=1&itOptionsActive=1&trITMOTvalue100=5&itdLPxx_dest=' + document.forms[0].itdLPxx_dest.value + '&';
		}
		if(document.getElementById('itdLPxx_transComp')){
			request +='itdLPxx_transComp=' + document.getElementById('itdLPxx_transComp').value + '&';
		}
        
		if(document.getElementById('tryToFindStoppingPoint')){
			request += 'tryToFindStoppingPoint=1' + '&';
		}
        
        
		if(document.getElementById('exclMOT_11')){
			request += 'exclMOT_11=1'+ '&';
		}
        
		var sessionID= 'sessionID=' + document.forms[0].sessionID.value;
		var lang = 'language=' +document.forms[0].language.value;
		var url = request +sessionID + '&' +lang + '&locationServerActive=1&mode=direct&limit=10&itdLPxx_script=true';	


		for(i=0;i< name.length; i++){
        
			var splitName = name[i].split('|');
			
			var optionURL = url + '&name_' + usage + '=' +splitName[1] + '&type_' + usage +'=any';
			
			if(splitName[4]){
				optionURL += '&' + splitName[4].replace('USAGE', usage)
			}
			
			if(usage=='destination'){
				optionURL += '&' +addToCookie;
			}
			
			var cookieImg = "<img src=" + imgPath + "stop.gif>";
			if(splitName[0]=='poiID' || splitName[0]=='poi'){
				cookieImg = "<img src=" + imgPath + "pin.png>"
			}
			if(splitName[0]=='coord' || splitName[1] =='' || splitName[0]=='address' 
            || splitName[0]=='street'|| splitName[0]=='singlehouse'){
				cookieImg = "<img src=" + imgPath + "address.gif>";
			}
			
			var cookieLink = document.createElement("a");
               cookieLink.setAttribute('href', optionURL);
			cookieLink.setAttribute('class', 'co');
            
            cookieLink.innerHTML = cookieImg + splitName[2];
			cookieDropDown.appendChild(cookieLink);
		}
        
		insertAfter(document.getElementById('content'), cookieDropDown, document.getElementById('ia'))
	}
}

function insertAfter(parent, node, referenceNode) {
  if (parent && node && referenceNode) {
    parent.insertBefore(node, referenceNode.nextSibling);
  }
}

function getCookie(c_name)
{
	if (document.cookie.length>0)
	  {
	  c_start=document.cookie.indexOf(c_name + "=");
	  if (c_start!=-1)
	    { 
	    c_start=c_start + c_name.length+1; 
	    c_end=document.cookie.indexOf(";",c_start);
	    if (c_end==-1) c_end=document.cookie.length;
	    return decodeURIComponent(document.cookie.substring(c_start,c_end));
        } 
	  }
	return "";
}

function checkRadio(obj){
  for (var i = 0; i < document.forms[0].elements.length; i++) {
	if(document.forms[0].elements[i].name!=obj && document.forms[0].elements[i].checked==true){
		document.forms[0].elements[i].checked = false;
	}
  }
}

function checkCommand(usage){
  for (var i = 0; i < document.forms[0].elements.length; i++) {
	if(document.forms[0].elements[i].checked==true && document.forms[0].elements[i].name=='name_' + usage){
		document.forms[0].command.value='';
	}
  }
}

function toggleStops(className){
	obj = document.getElementById('img' + className)
	if(obj.src.indexOf('minus')!='-1'){
		obj.src='images/plus.gif'
		for(i=0; i < document.getElementsByTagName("tr").length; i++){
			if(document.getElementsByTagName("tr")[i].className.indexOf(className)>-1){
				document.getElementsByTagName("tr")[i].style.display='none';
			}
		}
	}
	else{
		obj.src='images/minus.gif'
		for(i=0; i < document.getElementsByTagName("tr").length; i++){
			if(document.getElementsByTagName("tr")[i].className.indexOf(className)>-1){
				document.getElementsByTagName("tr")[i].style.display='';
			}
		}
	}
}

function addToCookie(time, value){
	for(i=0; i < document.getElementsByTagName("a").length; i++){
		if(document.getElementsByTagName("a")[i].className=='co'){
			var href = document.getElementsByTagName("a")[i].href;
			if(time=='date'){
				if(href.indexOf('itdDate')!='-1'){
					var indexHr = parseInt(href.indexOf('itdDate'));
					var hour = href.substring(indexHr, indexHr +16);
					href.replace(hour, '&itdDate='+value);
				}
				else{
					href += '&itdDate='+value;
				}
			}
			else if(time=='hr'){
				if(href.indexOf('itdTimeHour')!='-1'){
					var indexHr = parseInt(href.indexOf('itdTimeHour'));
					var hour = href.substring(indexHr, indexHr +14);
					href.replace(hour, '&itdTimeHour='+value);
				}
				else{
					href += '&itdTimeHour='+value;
				}
			}
			else if(time=='min'){
				if(href.indexOf('itdTimeMinute')!='-1'){
					var indexMin = parseInt(href.indexOf('itdTimeMinute'));
					var min = href.substring(indexMin, indexMin +14);
					href.replace(min, '&itdTimeMinute='+value);
				}
				else{
					href += '&itdTimeMinute='+value;
				}
			}
			document.getElementsByTagName("a")[i].setAttribute('href', href)
		}
	}
}

function getLocation(refresh){

    if(geo_position_js.init()){

        if(!refresh){
            var posImg = '<img src="/mdv/mdvMobileLayout3/images/iPhone/deLocation.png" onclick="setPosition()" id="position" class="curPos" alt=""/>'
            var posSpan = document.getElementById("getPos");
            if(posSpan){
                posSpan.innerHTML =posImg;
            }
        }
    
        geo_position_js.getCurrentPosition(getGeoLoc_success,getGeoLoc_error,{enableHighAccuracy:true, maximumAge: 10000});
    }
    
}


function getGeoLoc_success(p){
	
    if(!document.getElementById('position')){
        return false
    }
    
	if(p && p.coords){
		document.getElementById('position').src =  imgPath + 'location.png';
		
		wgs84 = p.coords.longitude  + ':'+ p.coords.latitude + ':WGS84[DD.ddddd]';
        
        if(wgs84!='' && globalSubmit==true){
            document.forms[0].nameInfo_dm.value = wgs84;
            document.forms[0].typeInfo_dm.value = 'coord';
            document.forms[0].submit();
        }
        
	}
	else{
	  //alert('Standort nicht verfügbar.');
	}
}

function getGeoLoc_error(p){
	 //alert('Standort nicht verfügbar. Code: ' + p.message);
}

function setPosition(){

    globalSubmit = true;

    geo_position_js.getCurrentPosition(getGeoLoc_success,getGeoLoc_error,{enableHighAccuracy:true, maximumAge: 10000});
}
