function validate_logon() {
  // init error message
  var errors = "";
  var holder = document.getElementById('errormessages');
  
  // no errors, we're done
  holder.style.background = "";
  if ( errors.length == 0 )
  {
	  var params = "?usr=" + document.getElementById('usr').value +
    	           "&pwd=" + document.getElementById('pwd').value;
				   
	// finalize jopin process
	ahah( 'logon.php'+params, 'ajaxresponses' );
  	setTimeout( 'logonCompleted()', 500 );
  	return true;
  } 

  // if we have errors, display
  holder.innerHTML = "<div style='text-align:left; margin: 5px; color:#FFF;'>Please Check:<ul>" + errors + "</ul></div>";
  holder.style.background = "red";
  
  // return error status
  return false;
}

function logonCompleted()
{
  var validate = clearAjax();
  
  if ( validate == 'OK' )
  {
	location.href = "?challenge="+randomString( 35 );
  }
  else if ( validate != '' )
  {
	var holder = document.getElementById('errormessages');
    holder.innerHTML = "<div style='text-align:left; margin: 5px; color:#FFF;'>" + validate +"</div>";
    holder.style.background = "red";
  }
  else
  {
	setTimeout( 'logonCompleted()', 250 );
  }
}

function randomString( string_length ) {
	var chars = "0123456789.+ABCDEFGHIJKLMNOPQRSTUVWXTZ_-@abcdefghiklmnopqrstuvwxyz";
	var randomstring = '';
	for (var i=0; i<string_length; i++) {
		var rnum = Math.floor(Math.random() * chars.length);
		randomstring += chars.substring(rnum,rnum+1);
	}
	return randomstring;
}

