  var xml;
  var base = "http://www.magnumopus.org.uk/";

  function openForm(theForm) {
    var url = base + "getForm.php?Form=" + theForm;
    makeRequest(url, 'openFormCallback1', true);
  }
  function openFormCallback1(formFileXML) {
    xml = formFileXML;
    setTimeout( "openFormCallback();", 10);
  }
  function openFormCallback() {
    var formFileXML = xml;
    var theForm = document.getElementById("fh");
    var formDiv = '';

    if ( formFileXML.getElementsByTagName('formDiv').item(0).firstChild ) {
      formDiv = formFileXML.getElementsByTagName('formDiv').item(0).firstChild.nodeValue;
    }

    theForm.innerHTML = formDiv;
    document.getElementById("mk").className = '';
    theForm.className = '';
  }

  function closeForm() {
    document.getElementById("fh").className = 'collapsed';
    document.getElementById("mk").className = 'collapsed';
  }


  function isEmailAddr(email) {
    var result = false;
    var theStr = new String(email);
    var index = theStr.indexOf("@");
    if (index > 0) {
      var pindex = theStr.indexOf(".",index);
      if ((pindex > index+1) && (theStr.length > pindex+1))
        result = true;
    }
    return result;
  }

  function loginForm() {
    var theForm = document.getElementById("lf");
    var email = theForm.Email.value;
    var password = theForm.Password.value;

    document.getElementById("errorText").innerHTML = '&nbsp;';

    if (email=='' || password=='') {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter your email and password.';
      return;
    }

    if (!isEmailAddr(email)) {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter a valid email address.';
      return;
    }


    var url = base + "login3.php?Email=" + email + "&Password=" + password;
    makeRequest(url, 'loginFormCallback', true);
  }
  function loginFormCallback(formFileXML) {
    var errorText = document.getElementById("errorText");
    if ( formFileXML.getElementsByTagName('success').item(0).firstChild ) {
      if (formFileXML.getElementsByTagName('success').item(0).firstChild.nodeValue == 0) {
        errorText.innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;' + formFileXML.getElementsByTagName('error').item(0).firstChild.nodeValue;
      }
      else {
        location.href=base+"account.php";
      }
    }
  }

  function sendMessageForm() {
    var theForm = document.getElementById("sm");
    var email = theForm.Email.value;
    var name = theForm.Name.value;
    var message = theForm.Message.value;

    if (email=='' || name=='') {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter your name and email address.';
      return;
    }

    if (!isEmailAddr(email)) {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter a valid email address.';
      return;
    }

    if (message=='') {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter your message.';
      return;
    }

    var url = base + "sendMessage.php?Email=" + email + "&Name=" + name + "&Message=" + encodeURIComponent(message);
    makeRequest(url, 'sendMessageFormCallback', true);
  }
  function sendMessageFormCallback(formFileXML) {
    var errorText = document.getElementById("errorText");
    if ( formFileXML.getElementsByTagName('success').item(0).firstChild ) {
      if (formFileXML.getElementsByTagName('success').item(0).firstChild.nodeValue == 0) {
        errorText.innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;' + formFileXML.getElementsByTagName('error').item(0).firstChild.nodeValue;
      }
      else {
        document.getElementById("errorText").innerHTML = '&nbsp;';
        var theForm = document.getElementById("sm");
        theForm.innerHTML = '<img src="images/tick.gif" />&nbsp;&nbsp;Your message has been sent.';
      }
    }
  }

  function sendMagnumMessageForm() {
    var theForm = document.getElementById("sm");
    var email = theForm.Email.value;
    var name = theForm.Name.value;
    var message = theForm.Message.value;

    if (email=='' || name=='') {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter your name and email address.';
      return;
    }

    if (!isEmailAddr(email)) {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter a valid email address.';
      return;
    }

    if (message=='') {
      document.getElementById("errorText").innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;Please enter your message.';
      return;
    }

    var url = base + "sendMagnumMessage.php?Email=" + email + "&Name=" + name + "&Message=" + encodeURIComponent(message);
    makeRequest(url, 'sendMagnumMessageFormCallback', true);
  }
  function sendMagnumMessageFormCallback(formFileXML) {
    var errorText = document.getElementById("errorText");
    if ( formFileXML.getElementsByTagName('success').item(0).firstChild ) {
      if (formFileXML.getElementsByTagName('success').item(0).firstChild.nodeValue == 0) {
        errorText.innerHTML = '<img src="images/exclamation.gif" />&nbsp;&nbsp;' + formFileXML.getElementsByTagName('error').item(0).firstChild.nodeValue;
      }
      else {
        document.getElementById("errorText").innerHTML = '&nbsp;';
        var theForm = document.getElementById("sm");
        theForm.innerHTML = '<img src="images/tick.gif" />&nbsp;&nbsp;Your message has been sent.';
      }
    }
  }


  function buttonOver(button) {
    button.className = 'button underlined';
  }

  function buttonOut(button) {
    button.className = 'button';
  }

  function setmkheight() {
    if ( window.innerHeight && window.scrollMaxY ) { // Firefox
      pageWidth = window.innerWidth + window.scrollMaxX;
      pageHeight = window.innerHeight + window.scrollMaxY;
    }
    else if( document.body.scrollHeight > document.body.offsetHeight ) { // all but Explorer Mac
      pageWidth = document.body.scrollWidth;
      pageHeight = document.body.scrollHeight;
    }
    else { // works in Explorer 6 Strict, Mozilla (not FF) and Safari
      pageWidth = document.body.offsetWidth + document.body.offsetLeft;
      pageHeight = document.body.offsetHeight + document.body.offsetTop;
    }

    var mk = document.getElementById("mk");
    mk.style.height = pageHeight + "px";
  }