var myWindow;

function launchSite() {
    var width = 1024;
    var height = 730;
    var left = parseInt((screen.availWidth/2) - (width/2));
    var top = parseInt((screen.availHeight/2) - (height/2));
    var windowFeatures = "width=" + width + ",height=" + height + ",status,resizable,left=" + left + ",top=" + top + "screenX=" + left + ",screenY=" + top;
    myWindow = window.open('main.php', "subWind", windowFeatures);
}

function hideById(id) { document.getElementById(id).style.display = 'none'; }
function showById(id) { document.getElementById(id).style.display = 'block'; }
function enable(id) { document.getElementById(id).removeAttribute('readonly'); }
function disable(id) { document.getElementById(id).setAttribute('readonly',true); }
function toggle(id) { if (document.getElementById(id).style.display == 'none' || (document.getElementById(id).className == 'hidden' && document.getElementById(id).style.display == '')) { show(id); } else { hide(id); } }
function getvalue(id) { return document.getElementById(id).value; }
function setvalue(id,val) { return document.getElementById(id).value = val; }
function hideDiv(div) { div.style.display = 'none'; }
function showDiv(div) { div.style.display = 'block'; }

function addEvent(elm, evType, fn, useCapture){
    if (elm.addEventListener)
    {
      elm.addEventListener(evType, fn, useCapture);
      return true;
    } else if (elm.attachEvent) {
      var r = elm.attachEvent('on' + evType, fn);
      return r;
    } else {
      elm['on' + evType] = fn;
    }
}

function removeDiv(elm) {
	elm.parentNode.removeChild(elm);
}

function transformToAjax(form, result, noreset, hideafter, showreturn) {
	var waiting = document.createElement('div');
	waiting.style.textAlign = 'center';
	waiting.innerHTML = '<img src="images/loading2.gif" alt="" /><br />Loading, please wait...';
	form.parentNode.insertBefore(waiting, form);
	hideDiv(form);
	if (result === false) {
		// Create a form result div - remove previous one if already created
		if (document.getElementById('formresult')) {
			document.getElementById('formresult').parentNode.removeChild(document.getElementById('formresult'));
		}
		var resultant = document.createElement('div');
		resultant.setAttribute('id','formresult');
		resultant.className = 'infomsg';
		form.parentNode.insertBefore(resultant, form);
	} else var resultant = document.getElementById(result);
	var status = AjaxRequest.submit(
	    form
	    ,{
	      'timeout':25000,
	      'onTimeout':function(req){ alert('Your request timed out. Please try again.'); showDiv(form); form.parentNode.removeChild(waiting); },
	      'onSuccess':function(req){ resultant.innerHTML = req.responseText; if (noreset !== true) form.reset(); if (hideafter === false) showDiv(form); form.parentNode.removeChild(waiting);
	      	if (showreturn === true) {
	      		var returnlink = document.createElement('div');
	      		returnlink.innerHTML = '<br /><a href="javascript:void(0)" onclick="showById(\''+form.getAttribute('id')+'\');removeDiv(this.parentNode.parentNode)">Click here to return</a>';
	      		returnlink.classname = 'infomsg';
	      		resultant.appendChild(returnlink);
	      	}
	      },
	      'onError':function(req){ alert('Your request was not completed. Server response: '+req.statusText); showDiv(form); form.parentNode.removeChild(waiting); }
	    }
	  );
	return false;
}

function transformToAjax2(params) {
	return transformToAjax(params['form'],params['result'],params['noreset'],params['hideafter'],params['showreturn']);
}
