// JavaScript Document
var checkText = '';
var sugImgPath = 'efa/img/sug/';
var sendOdvSuggestMin = '3';
var sendOdvSuggestMax = '7';
var lastOdvPoints = 'true';
function odvSuggest(event, value, usage){
if(event.keyCode == 38 || event.keyCode == 40 || event.keyCode == 27) {
return false;
}
checkText = value;
window.setTimeout(
function(){
if(checkText != value){
return false
}
sendOdvSuggest(value, usage)
}, 600);
}
function sendOdvSuggest(value, usage){
//Control sendOdvSuggestMax and sendOdvSuggestMax from Def Date
if(value.length >= sendOdvSuggestMin){//&& value.length < 7
var URL = suggestURL;
var _params = {
language: 'de',
locationServerActive: '1',
anyObjFilter_sf: 126, //10, //$('#anyObjFilter_origin').val()
SpEncId: 0,
itdLPxx_usage: usage,
anyMaxSizeHitList: '50',
useHouseNumberList: 'true',
type_sf: 'any',
name_sf: value,
itdLPxx_checkText: value,
reducedAnyWithoutAddressObjFilter_sf: '103',
reducedAnyPostcodeObjFilter_sf: '64',
reducedAnyTooManyObjFilter_sf: '2',
stateless: '1',
outputFormat: 'JSON'
}
if (document.getElementById('SpEncId')) {
_params.SpEncId = jQuery('#SpEncId').attr('value');
}
// set region filter
if (jQuery('.regionFilter:checked').length > 0) {
_params.regionID_sf = jQuery('.regionFilter:checked').attr('value');
}
checkText = value;
var _ajax = mdvLib.ajax({ host: URL, parameters: _params, onComplete: odvSuggest_onAjaxComplete});
} else {
if(document.getElementById('odvOverlay')){
$('#odvOverlay').remove();
}
}
};
/* this function creates the odv suggest overlay */
function odvSuggest_onAjaxComplete(response){
var json = null;
var efa = null;
if (response.responseText) {
json = response.responseText;
}
eval('efa = ' + json + ';');
var usage = efa.parameters[1].value;
if($('#odvOverlay')){
$('#odvOverlay').remove();
}
if(!efa.stopFinder){
return false;
}
var length = 0;
if (efa.stopFinder.points.length != null) length = efa.stopFinder.points.length;
//var length = efa.stopFinder.length
if(efa.stopFinder.point){
length = 1;
}
//efa.stopFinder.sort(sortContent);
// sort result list if more than one hit
if(length > 1){
efa.stopFinder.points.sort(typeComparison);
//efa.stopFinder.sort(typeComparison);
}
var results = '';
if(efa.stopFinder.points.length > 1){
for(i=0;i < efa.stopFinder.points.length; i ++) {
var point = efa.stopFinder.points[i];
var stateless= point.stateless; // alert(point.stateless);
//for(i=0;i < length; i ++){
// var point = efa.stopFinder[i] || efa.stopFinder.point;
// var stateless= point.stateless;
if(point.type=='street' && !ptRef.coords){
break;
}
var type = "\'any\'";
var add= '';
var txt = point.name;
if(point.anyType =='loc'){
txt = point.ref.place;
}
switch(point.anyType){
case 'stop': add = '';
break;
case 'poi': add = '
';
break;
case 'street': add = '
';
break;
case 'address': add = '
';
break;
default: add = '
';
break;
}
//var href ="javascript:submitPoint('"+stateless+"','"+usage+"','"+escape(txt)+"')";
var href = 'javascript:submitPoint(\''+stateless+'\',\''+usage+'\',\''+(txt)+'\');';
var pointDiv = "