
var isIE = (navigator.appName == 'Microsoft Internet Explorer') &&
           (navigator.platform.substring(0, 3) == 'Win') &&
           (navigator.userAgent.indexOf('Opera') === -1) &&
           (navigator.userAgent.indexOf('Gecko') === -1) &&
           (!window.opera);

var domHeadBroken = isIE;
var boxModelBroken = isIE;
var cssTable = (isIE ? 'block' : 'table');


/* * * * Bokningssidan * * * */
var formLocked = false;

function boka(n) {
  return !window.open('boka.php?id='+n, 'a'+Math.ceil(2000000000*Math.random()),
                      'width=410,height=400,toolbar=no,menubar=no,scrollbars=yes,resizable=yes');
}

function lockForm() {
  if (formLocked) return false;
  else {
    formLocked = true;
    return true;
  }
}

function goWeek(yw) {
  if (!document.getElementById) return;
  
  document.getElementById('t').value = yw;
  document.getElementById('scheduleSelection').submit();
}


/* * * *  Tooltips (för kalenderkontrollen) * * * */
function findPos(obj) {
	// Från quirksmode.org
	var curtop = 0;
	var curleft = 0;
	if (obj.offsetParent) {
		do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while ((obj = obj.offsetParent) !== null);
	}
	return [curleft,curtop];
}


var activeTooltip = null;

function showTooltip(e, obj, s) {
  if (!document.createElement || !document.getElementsByTagName)
    return;

  if (!e) e = window.event;
  
  var pos = findPos(obj);
  var offsX = (boxModelBroken ? 3 : 0);
  var offsY = (boxModelBroken ? 4 : 1) + obj.offsetHeight;
  
  var add = false;
  if (!activeTooltip) {
    activeTooltip = document.createElement('div');
    activeTooltip.className = 'tooltip';
    add = true;
  }
  
  activeTooltip.style.left = (pos[0]+offsX)+"px";
  activeTooltip.style.top = (pos[1]+offsY)+"px";
  activeTooltip.innerHTML = s;
  activeTooltip.style.display = "block";
  
  var body;
  body = document.getElementsByTagName('body')[0];
  if (add) {
    body.insertBefore(activeTooltip, body.firstChild);
  }
  
  if ((body.clientHeight) && (pos[1]+offsY + activeTooltip.offsetHeight >= body.clientHeight)) {
    activeTooltip.style.top = (pos[1] - activeTooltip.offsetHeight)+"px";
  }
  
}

function hideTooltip(e, obj) {
  if (!document.createElement)
    return;
  
  if (!e) e = window.event;
  var target = e.relatedTarget || e.fromElement;
  while (target != null) {
    if (target == obj) return;
    target = target.parentNode;
  }
  
  activeTooltip.style.display = "none";
}

function htmlEscape(s) {
  return s.replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;').replace('"', '&quot;');
}

function showEI(e, obj, title, len, capacity, booked, instructor) {
  if (!e) e = window.event;
  
  var html = '<p class="ttHead"><b>'+htmlEscape(title)+'</b></p><p>'+
             '<b>Längd:</b> '+len+'&nbsp;minuter<br />'+
             '<b>Lediga platser:</b> '+Math.max(capacity - booked, 0)+'&nbsp;/&nbsp;'+capacity+'<br />'+
             ( capacity - booked <= 0 ? '<b>P&aring; v&auml;ntelistan:</b> '+(booked - capacity)+'<br />' : '')+
             ( instructor !== false ?
               '<b>Instrukt&ouml;r:</b> '+htmlEscape(instructor)+'<br />' : '' )+
             '</p>';
  
  showTooltip(e, obj, html);
}

/* * * * Administrationssidorna * * * */
function handleDefault(obj, e) {
  if ((e.keyCode === 13) || (e.keyCode === 10))  {
    obj.form.submit();
    return false;
  } else {
    return true;
  }
}


