function CloseLogin(){
	
	login_div.className = 'ascuns';
	general_div.className = 'ascuns';
	register_div.className = 'ascuns';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	forgot_name_div.className = 'ascuns';
	tc_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

}


function OpenLogin(){
	
	login_div.className = '';
	general_div.className = '';
	register_div.className = 'ascuns';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	forgot_name_div.className = 'ascuns';
	tc_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
	
	window.onscroll = setsize_index;
}

function OpenDisplay(){
	disp_name_div.className = '';
	general_div.className = '';
	login_div.className = 'ascuns';
	register_div.className = 'ascuns';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	forgot_name_div.className = 'ascuns';
	tc_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
	
	window.onscroll = setsize_index;
}


function OpenRegister(){
	
	login_div.className = 'ascuns';
	general_div.className = '';
	register_div.className = '';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	forgot_name_div.className = 'ascuns';
	tc_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
	
	document.forms['formRegister'].email.value = '';
	document.forms['formRegister'].name.value = '';
	document.forms['formRegister'].pass.value = '';
	document.forms['formRegister'].pass2.value = '';
	document.forms['formRegister'].referenced_by.value = '';
	document.forms['formRegister'].captcha.value = '';
	document.forms['formRegister'].agree.checked = false;

window.onscroll = setsize_index;
}


function OpenForgotPassword(){
	
	login_div.className = 'ascuns';
	general_div.className = '';
	register_div.className = 'ascuns';
	forgot_pass_div.className = '';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	forgot_name_div.className = 'ascuns';
	tc_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
	
	window.onscroll = setsize_index;
}


function OpenForgotName(){
	
	login_div.className = 'ascuns';
	general_div.className = '';
	forgot_name_div.className = '';
	register_div.className = 'ascuns';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	tc_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
	
	window.onscroll = setsize_index;
}

function OpenTC(){
	
	login_div.className = 'ascuns';
	general_div.className = '';
	tc_div.className = '';
	forgot_name_div.className = 'ascuns';
	register_div.className = 'ascuns';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
	
	window.onscroll = setsize_index;
}



function CloseRegisterConfirm(){
	
	login_div.className = '';
	general_div.className = '';
	register_div.className = 'ascuns';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	forgot_name_div.className = 'ascuns';
	tc_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
}

function getScrollXY(what) {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  if(what == 'x') return scrOfX;
  else return scrOfY;
  //return [ scrOfX, scrOfY ];
}

function setsize_index() {
	 
	document.getElementById('login_div').style.top = getScrollXY('y')+140;
	document.getElementById('login_div').style.left = getScrollXY('x');
	
	document.getElementById('register_div').style.top = getScrollXY('y');
	document.getElementById('register_div').style.left = getScrollXY('x');
	
	document.getElementById('forgot_pass_div').style.top = getScrollXY('y')+60;
	document.getElementById('forgot_pass_div').style.left = getScrollXY('x');
	
	document.getElementById('forgot_name_div').style.top = getScrollXY('y')+60;
	document.getElementById('forgot_name_div').style.left = getScrollXY('x');

	document.getElementById('register_confirm_div').style.top = getScrollXY('y');
	document.getElementById('register_confirm_div').style.left = getScrollXY('x');
	
	document.getElementById('message_div').style.top = getScrollXY('y');
	document.getElementById('message_div').style.left = getScrollXY('x');
	
	document.getElementById('tc_div').style.top = getScrollXY('y')+60;
	document.getElementById('tc_div').style.left = getScrollXY('x');
	
	document.getElementById('disp_name_div').style.top = getScrollXY('y')+60;
	document.getElementById('disp_name_div').style.left = getScrollXY('x');
}


function CloseMessage(){
	
	login_div.className = 'ascuns';
	general_div.className = '';
	register_div.className = '';
	forgot_pass_div.className = 'ascuns';
	register_confirm_div.className = 'ascuns';
	message_div.className = 'ascuns';
	forgot_name_div.className = 'ascuns';
	tc_div.className = 'ascuns';
	disp_name_div.className = 'ascuns';

	screen_dim = fieldOb('screen');
	general_div.style.height = screen_dim.clientHeight;
	general_div.style.width = screen_dim.clientWidth;
}


function OpenGeneralAlertDiv(){
	
	general_alert_div.className = '';
	alert_div.className = '';
	
	screen_dim = fieldOb('screen');
	general_alert_div.style.height = screen_dim.clientHeight;
	general_alert_div.style.width = screen_dim.clientWidth;
	
	window.onscroll = setsize_alert();
}

function setsize_alert() {
	alert_div.style.top = getScrollXY('y');
	alert_div.style.left = getScrollXY('x');
}


function CloseAlert(){
	
	general_alert_div.className = 'ascuns';
	alert_div.className = 'ascuns';
	
}


function writeIn(field_name, val){
	if(ns6) field = eval("document.getElementById('"+field_name+"')");
	else if(ns4) field = eval("document."+field_name);
	else field = eval("document.all."+field_name);
	field.innerHTML = val;
}

function Submit(form_name) {
	SubmitForm(form_name, '_lib/class/login.php');	
}

function SubmitRegister(form_name) {
	SubmitForm(form_name, '_lib/class/register.php');	
}

function SubmitForgotPass(form_name) {
	SubmitForm(form_name, '_lib/class/forgot_pass.php');	
}

function SubmitForgotName(form_name) {
	SubmitForm(form_name, '_lib/class/forgot_name.php');	
}

function SubmitDispName(form_name) {
	SubmitForm(form_name, '_lib/class/display_name.php');	
}

function SubmitQuestionReply(val, user) {
	SubmitVal(val, user, '_lib/class/replay_read.php');	
}

function SubmitAnswerReply(val, user) {
	SubmitVal(val, user, '_lib/class/answer_read.php');	
}

function UpdateUI(response) {
	if(response == 'Login') formSubmit('formLogin','?' + GET);
	else if(response == 'Error: Invalid Login...') writeIn('login_error', response);
	else if(response == 'Error: Insert Email...') writeIn('login_error', response);
	else if(response == 'Error: Insert Password...') writeIn('login_error', response);
	else if(response == 'Error: Insert Email and Password...') writeIn('login_error', response);
	else if(response == 'Register Error: Email is not valid.') writeIn('register_error', response);
	else if(response == 'Register Error: Please type the email.') writeIn('register_error', response);
	else if(response == 'Register Error: Please type the name.') writeIn('register_error', response);
	else if(response == 'Register Error: Please type the password.') writeIn('register_error', response);
	else if(response == 'Register Error: Please retype the password.') writeIn('register_error', response);
	else if(response == 'Register Error: Please select the Referenced By field') writeIn('register_error', response);
	else if(response == 'Register Error: You must agree with the Terms & Conditions before registering...') writeIn('register_error', response);
	else if(response == 'Register Error: Retyped password doesn\'t match') writeIn('register_error', response);
	else if(response == 'Register Error: Display Name or email already registered! Please try again.') writeIn('register_error', response);
	else if(response == 'Done'){
		alert('Account succesfully created.');
		OpenLogin();
	}
	else if(response == 'Sent'){
		alert('Password sent.');
		OpenLogin();
	}
	else if(response == 'SentName'){
		alert('Display Name sent.');
		OpenForgotPassword();
	}
	else if(response == 'Error: Email is not valid.') writeIn('forgot_pass_error', response);
	else if(response == 'Error: This email doesn\'t exist.') writeIn('forgot_pass_error', response);
	else if(response == 'Error: Please type your email.') writeIn('forgot_pass_error', response);
	else if(response == 'answer read') a=1;
	else if(response == 'reply read') a=1;
	//else writeIn('register_error', response);
}

function formSubmit(frm, act){
	document.forms[frm].action = act;
	document.forms[frm].submit();
}




// ajax
// send the request to the server with the given GET parameters
function AjaxPost(server, param) {
	xmlHttp = GetXmlHttpObject()
	if (xmlHttp == null) {
	  alert ("Your browser does not support AJAX!");
	  return;
	}

	xmlHttp.onreadystatechange = AjaxGet;
	if (param != null)
			xmlHttp.open("GET", server + '?' + param, true);
	else 	xmlHttp.open("GET", server, true);
	xmlHttp.send(null);
}

// passes the response to the UpdateUI function. user must implement UpdateUI.
function AjaxGet() {
	if(xmlHttp.readyState == 4) 
		UpdateUI(xmlHttp.responseText);
}

function GetXmlHttpObject() {
	var xmlHttp=null;

  	try {   // Firefox, Opera 8.0+, Safari    
		xmlHttp = new XMLHttpRequest();    
	}
	catch (e) {    // Internet Explorer    
		try { 
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");      
		} catch (e) {
			xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");        
		}    
	}

	return xmlHttp;
}

// generates the GET parameters given a form name and send it to the server
function SubmitForm(form_name, server) {
	
	
	// form the GET parameters
	param = '';
	elements = document.forms[form_name];
	for(i=0;i<elements.length;i++)  if (elements[i].value != null) {
		if (elements[i].type == 'checkbox' && elements[i].checked == false) continue; 
		param += elements[i].name + '=' + elements[i].value + '&';
	}		
	if (param.charAt(param.length-1) == '&') param = param.substr(0,param.length-1);

	// send the request
	AjaxPost(server, param);
}

function SubmitVal(val, user, server) {
	
	val = 'id='+val+'&user='+user;
	// send the request
	AjaxPost(server, val);
}


function submitenter(myfield,e){
	var keycode;
	if (window.event) keycode = window.event.keyCode;
	else if (e) keycode = e.which;
	else return true;
	
	if (keycode == 13){
	   Submit('formLogin');
	   return false;
	}else
	   return true;
}

function submitenter2(myfield,e){
	var keycode;
	if (window.event) keycode = window.event.keyCode;
	else if (e) keycode = e.which;
	else return true;
	
	if (keycode == 13){
	   Submit('search');
	   return false;
	}else
	   return true;
}
