var req = null;

function loadOvermap(url, whiteBackground, title)
{
  if (!title) {
    var title = 'Details';
  }

  var obj = document.getElementById('undermap');
  if (obj)
  {
    //obj.style.display = 'none';
    obj.style.visibility = 'hidden';
  }

  obj = document.getElementById('overmap');
  var objBody = document.getElementById('overmapBody');
  var objTitle = document.getElementById('overmapTitle');
  if (obj && objBody && objTitle)
  {
    objBody.innerHTML = '<i>Lade...</i>';
    if (!whiteBackground)
    {
      objBody.parentNode.style.backgroundColor = 'transparent';
      objBody.style.backgroundColor = 'transparent';
    }
    else {
      objBody.parentNode.style.backgroundColor = 'white';
      objBody.style.backgroundColor = 'white';
    }
    objTitle.innerHTML = title;
    obj.style.display = 'block';

/****
    GDownloadUrl(url, function(data){
      objBody.innerHTML = data;
    });
****/

    new Ajax.Updater('overmapBody', url, {asynchronous:true, evalScripts:false});
  }
}

function loadOvermap2(title)
{
  var obj = document.getElementById('undermap');
  if (obj)
  {
    //obj.style.display = 'none';
    obj.style.visibility = 'hidden';
  }

  obj = document.getElementById('overmap');
  var objBody = document.getElementById('overmapBody');
  var objTitle = document.getElementById('overmapTitle');
  if (obj && objBody && objTitle)
  {
    //objBody.innerHTML = '<i>Lade...</i>';
    objTitle.innerHTML = title;
    obj.style.display = 'block';
  }
}

function showOvermap()
{
  var obj = document.getElementById('undermap');
  if (obj)
  {
    //obj.style.display = 'none';
    obj.style.visibility = 'hidden';
  }

  obj = document.getElementById('overmap');
  if (obj)
  {
    obj.style.display = 'block';
  }
}

function hideOvermap()
{
  var obj = document.getElementById('undermap');
  if (obj)
  {
    //obj.style.display = 'block';
    obj.style.visibility = 'visible';
  }

  obj = document.getElementById('overmap');
  var objBody = document.getElementById('overmapBody');
  if (obj && objBody)
  {
    obj.style.display = 'none';
    objBody.innerHTML = '';
  }
}


function checkAndSubmitSuggestion()
{
  var name = "";
  var anschrift = "";

  var obj = document.getElementById("suggest_name");
  if (obj)
  {
    name = obj.value;
    if (name.length < 3)
    {
      alert('Der Restaurant-Name sollte mind. 3 Zeichen lang sein.');
      return false;
    }
  }
  else {
    alert('Konnte Restaurant-Name nicht auslesen!');
    return false;
  }

  var obj = document.getElementById("suggest_anschrift");
  if (obj)
  {
    anschrift = obj.value;
    if (anschrift.length < 5)
    {
      alert('Die Anschrift sollte mind. 5 Zeichen lang sein.');
      return false;
    }
  }
  else {
    alert('Konnte Anschrift nicht auslesen!');
    return false;
  }

  var obj = document.getElementById("overmapBody");
  if (!obj)
  {
    alert('Konnte Fenster nicht finden');
  }

  var url = '/frontend.php/restaurant/suggest?suggest_name='+encodeURIComponent(name)+'&suggest_anschrift='+encodeURIComponent(anschrift)+'&bypass=y';
  GDownloadUrl(url, function(data){
    obj.innerHTML = data;
  });
  
  return false;
}

function overmapSwitch(sender, id1, name1, id2, name2) {

  obj1 = document.getElementById(id1);
  obj2 = document.getElementById(id2);

  if (!obj1 || !obj2) {
    return false;
  }

  if (obj1.style.display == 'none') {
    obj2.style.display = 'none';
    obj1.style.display = 'block';
    sender.firstChild.data = name2;
  }
  else {
    obj1.style.display = 'none';
    obj2.style.display = 'block';
    sender.firstChild.data = name1;
  }
}

function overmapSwitch2(sender, id1, name1, name2)
{
  obj1 = document.getElementById(id1);

  if (!obj1) {
    return false;
  }

  if (obj1.style.display == 'none') {
    obj1.style.display = 'block';
    sender.firstChild.data = name2;
  }
  else {
    obj1.style.display = 'none';
    sender.firstChild.data = name1;
  }
}

function overmapSwitch3(sender, nameInvisible, nameVisible, toggleId, targetId, targetHeight1, targetHeight2)
{
  obj = document.getElementById(toggleId);
  target = document.getElementById(targetId);

  if (!obj || !target) {
    return false;
  }

  if (obj.style.display == 'none') {
    obj.style.display = 'block';
    target.style.height = targetHeight1;
    sender.firstChild.data = nameVisible;
  }
  else {
    obj.style.display = 'none';
    target.style.height = targetHeight2;
    sender.firstChild.data = nameInvisible;
  }
}

function checkAndSubmitMeetFriends()
{
  var restaurant_id = '';
  var friends = '';
  var comment = '';
  var date = '';
  var time = '';

  var obj = document.getElementById("restaurant_id");
  if (obj)
  {
    restaurant_id = obj.value;
  }
  else {
    alert('Konnte Restaurant nicht auslesen!');
    return false;
  }

  var objs = document.meetFriendsForm.getElementsByTagName('input');
  for (var i=0; i<objs.length; i++)
  {
    if ((objs[i].name == 'friends[]') && objs[i].checked)
    {
      friends += '&' + encodeURIComponent(objs[i].name) + '=' + encodeURIComponent(objs[i].value);
    }
  }

  if (friends.length == 0)
  {
    alert('Keine Freunde ansgewaehlt.');
    return false;
  }

  var obj = document.getElementById("comment");
  if (obj)
  {
    comment = obj.value;
  }

  var obj = document.getElementById("date");
  if (obj)
  {
    date = obj.value;
  }

  var obj = document.getElementById("time");
  if (obj)
  {
    time = obj.value;
  }

  var obj = document.getElementById("overmapBody");
  if (!obj)
  {
    alert('Konnte Fenster nicht finden');
  }

  setAttribute('id', 'submitform', '', 'disabled', 'disabled', false);

  var url = '/user/meetFriends?restaurant_id='+encodeURIComponent(restaurant_id)+friends+'&comment='+encodeURIComponent(comment)+'&date='+encodeURIComponent(date)+'&time='+encodeURIComponent(time)+'&ajax=y&submit=y';
  GDownloadUrl(url, function(data){
    obj.innerHTML = data;
  });
  
  return false;
}
