

kid       = '';
rid       = '';
sid       = '';
lang      = '';
debug     = '';
fields    = '';
selectOne = 'subregion';
selectTwo = 'startort';
// var ecMap = null;
var tours, overlays;
tours     = new Array();
overlays  = new Array();

function initIDs(nkid,nrid,nsid,nlang,nDebug) {
  kid      = nkid;
  rid      = nrid;
  sid      = nsid;
  lang     = nlang;
  debug    = nDebug;
  if(document.getElementById('subregion'))
  Event.observe('subregion', 'change', fillSelectTwo, false);
}

function observe(str) {
  fields = str.split(",");
  for (var i=0; i<fields.length; i++){
    Event.observe(fields[i], 'change', updateTours, false);
  }
}

function updateOverlays(otype,chk) {
  // alert(otype+': '+chk);
  if(otype=='hangneig'){
    (chk==true) ? addOverlayHangn() : deleteOverlayHangn();
  }else{
    // trace = 'tours='+tours+'\ntours.length='+tours.length+'\n';
    // alert(trace);
    // trace = '';
    for (var i=0; i<overlays.length; i++)  {
      if(overlays[i]['type']==otype){
        (chk==true) ? overlays[i].Show() : overlays[i].Hide();
        // trace += (chk==true) ? 'tours['+i+'].Show()\n' : 'tours['+i+'].Hide()\n';
      }
    }
    // alert(trace);
  }
}

testTrace    = '<h2>Ajax Pfadtest</h2><pre>';
function test() {
  var url    = 'inc/get_test.php';
  var pathes = new Array('','/','./','../','../template_inc/');
  // var pathes = new Array('');
  // i=0;
  for (var i=0; i<pathes.length; i++){
    // testTrace = testTrace + '|' + pathes[i] + '|<br />';
    var urlT = pathes[i] + url;
    var newTest = new Ajax.Request(
      urlT,
      {
        method: 'get',
        parameters: 'p='+pathes[i],
        onSuccess: addTestTrace,
        onFailure: addError
    });
  }
  // alert(pars + '\n' + url);
  alert(testTrace);

  function addTestTrace(datei) {
    var response = datei.responseText;
    testTrace = testTrace + response + '<br />';
    // alert(testTrace);
  }

  function addError(request) {
    testTrace = testTrace + request + '<br />';
  }

  tracebox = document.getElementById('showadvanced');
  tracebox.innerHTML = testTrace + '</pre>';

}

function updateTours() {
  var url    = '../template_inc/inc/get_tours.php';
  var params   = 'kid='+ kid +'&rid='+ rid +'&sid='+ sid +'&lang='+ lang;
  if(debug==1) params  += '&debug=1';
  loadPin.Show();
  for (var i=0; i<fields.length; i++){
    var field = document.getElementById(fields[i]);
    var ftype = field.type;
    var fval  = field.value;
    if(ftype!='checkbox' || field.checked==true)
      params += '&'+fields[i]+'='+fval;
  }

  if(debug==1){
    trace = params.replace(/&/g, "\n&");
    tracebox = document.getElementById('ajax');
    tracebox.innerHTML = trace;
  }

  for (var i=0; i<tours.length; i++)  {
    tours[i].Hide();
  }

  var newTours = new Ajax.Request(
    url,
    {
      method: 'get',
      parameters: params,
      onSuccess: show,
      onFailure: reportError
  });

  function show(tours2show) {
    var response = tours2show.responseText;
    var responseArr = response.split('|msg=');
    if(debug==1){
      trace = 'responseArr.length: '+responseArr.length+'\n\n';
      for (var i=0; i<responseArr.length; i++){
        trace += responseArr[i]+'\n\n';
      }
      alert(trace);
    }
    var tourArr = responseArr[0].split(',');
    for (var i=0; i<tours.length; i++)  {
      for (var j=0; j<tourArr.length; j++)  {
        if(tours[i]['TourID']==tourArr[j])
        tours[i].Show();
      }
    }
    msgbox = document.getElementById('resultMsg');
    msgbox.innerHTML = responseArr[1];
    loadPin.Hide();
    if(debug==1){
      trace = responseArr[2].replace(/AND/g, "\nAND");
      trace = trace.replace(/WHERE/g, "\nWHERE");
      tracebox = document.getElementById('ajax');
      tracebox.innerHTML = trace;
    }
  }
}

function fillSelectTwo() {
  var regid  = document.getElementById(selectOne).value;
  var selBox = document.getElementById(selectTwo).parentNode;
  var url    = '../template_inc/inc/get_'+ selectTwo +'.php';
  var params   = 'kid='+ kid +'&rid='+ rid +'&sid='+ sid +'&lang='+ lang +'&regid='+ regid;
  // alert(pars + '\n' + url);

  var newSelect = new Ajax.Updater(
    {success: selBox},
    url,
    {
      method: 'get',
      parameters: params,
      onFailure: reportError
  });
}

function reportError(request){
  alert('Da ging was schief :(\n' + request);
}

