
function showDetailsByID(elementID) {
  hideDetails();
  if($(elementID)) {
    $(elementID).onclick();
  } else {
    loadDetails(elementID.slice(5));
    if(typeof ms_map_width != 'undefined') {
      var posx = (ms_map_width / 2) - 150;
      var posy = ms_map_height + 80;
      showDetailsAt('', posx, posy);
    }
  }
}

function showDetails(msId, orientation, fromLeft, fromTop) {
  if (loadDetails(msId)) { 
    showDetailsAt(orientation, fromLeft, fromTop);
    return false;
  } else {
    return true;
  }
}

function showDetailsAt(orientation, fromLeft, fromTop) {
  hideDetails();
  
  // Position berechnen
  var posx = 0;
  //if(typeof ms_map_width != 'undefined') posx += ms_map_width;
  if(orientation == 'left') posx = -288;
  if(orientation == 'right') posx = +28;
  
  fromLeft += posx;
  fromTop  += -20;
  
  // Positionieren
  var node = $("details");
  if ($("details")) {
    node.setStyle('top', (fromTop)+"px");
    node.setStyle('left', (fromLeft)+"px");
  }
  
  // Anzeigen
  if (orientation == 'left') {
    if (node) node.setStyle('visibility', 'visible');
    node = $("detailsright");
    if (node) node.setStyle('visibility', 'visible');
    node = $("detailsleft");
    if (node) node.setStyle('visibility', 'hidden');
  } else if (orientation == 'right') {
    if (node) node.setStyle('visibility', 'visible');
    node = $("detailsright");
    if (node) node.setStyle('visibility', 'hidden');
    node = $("detailsleft");
    if (node) node.setStyle('visibility', 'visible');
  } else {
    if (node) node.setStyle('visibility', 'visible');
    node = $("detailsright");
    if (node) node.setStyle('visibility', 'hidden');
    node = $("detailsleft");
    if (node) node.setStyle('visibility', 'hidden');
  }
}

function hideDetails() {
  var node = $("details");
  if (node) node.setStyle('visibility', 'hidden');
  
  node = $("detailsright");
  if (node) node.setStyle('visibility', 'hidden');
  
  node = $("detailsleft");
  if (node) node.setStyle('visibility', 'hidden');
}

function loadDetails(msId) {

  try {
    var urlStr = ms_app_path + "details?obj=" + msId;
    var result = false;
    
    if(typeof ms_locale != 'undefined')   urlStr = urlStr + "&locale=" + ms_locale;	

    if ($("detailsfunctions")) {
        var a = new Request({ url: urlStr, method: 'post', data: 'content=function' });
        a.addEvent('success', function(response, xml) {
            $('detailsfunctions').set('html', response);
        });
        a.send();
        result = true;
    }

    if ($("detailshead")) {
        var a = new Request({ url: urlStr, method: 'post', data: 'content=head' });
        a.addEvent('success', function(response, xml) {
            $('detailshead').set('html', response);
        });
        a.send();
        result = true;
    }
    if ($("detailscontent")) {
    	var a = new Request({ url: urlStr, method: 'post', data: 'content=info' });
        a.addEvent('success', function(response, xml) {
            $('detailscontent').set('html', response);
            detailsUpdated();
        });
        a.send();
        result = true;
        
    }
    return result;
  } catch (e) {
    return false;
  }
  
}






