function setRegistration(){
	//addEventHandler(document.getElementById('register'), 'click', return chkRegister, false);
	site_title = new validate("site_title","site_title_status"); 	
	site_title.EVENT("blur",
		site_title.chk = function() {
			if(!site_title.isLength(1)) {
				site_title.DOM("site_title_status","innerHTML","Please enter a Site Name.");
				error++;
			} else {site_title.DOM("","innerHTML",""); }
		}
	);
	site_url = new validate("site_url","site_url_status"); 	
	site_url.EVENT("blur",
		site_url.chk = function() {
			if(!site_url.isLength(8)) {
				site_url.DOM("site_url_status","innerHTML","Please enter a Site URL.");
				error++;
			} else {site_url.DOM("site_url_status","innerHTML",""); }
		}
	);
	site_description = new validate("site_description","site_description_status"); 	
	site_description.EVENT("blur",
		site_description.chk = function() {
			if(!site_description.isLength(1)) {
				site_description.DOM("site_description_status","innerHTML","Please enter a Site Description.");
				error++;
			} else {site_description.DOM("site_description_status","innerHTML",""); }
		}
	);
	email = new validate("email","email_status"); 	
	email.EVENT("blur",
		email.chk = function() {
			if(!email.isEmail(email.GET("value"))) {
				email.DOM("email_status","innerHTML","Please enter a valid Email.");
				error++;
			} else {email.DOM("email_status","innerHTML",""); }
		}
	);
	username = new validate("username","username_status"); 	
	username.EVENT("blur",
		username.chk = function() {
			if(!username.isLength(6)) {
				username.DOM("username_status","innerHTML","Must have at least 6 characters.");
				error++;
			} else {username.DOM("username_status","innerHTML",""); }
		}
	);	
	password1 = new validate("password1","password1_status");
	password1.EVENT("blur",
		password1.chk = function() {
			if(!password1.isLength(6)) {
				password1.DOM("password1_status","innerHTML","Must have at least 6 characters.");
				error++;
			} else {password1.DOM("password1_status","innerHTML",""); }
		}
	);
	password2 = new validate("password2","password2_status");
	password2.EVENT("blur",
		password2.chk = function() {
			if(password2.GET("value") != password1.GET("value")) {
				password2.DOM("password2_status","innerHTML","Password does not match.");
				error++;
			} else {password2.DOM("password2_status","innerHTML",""); }
		}
	);
	site_category = new validate("site_category","site_category_status");
	site_category.EVENT("blur",
		site_category.chk = function() {
			if(site_category.GET("value") == "") {
				site_category.DOM("site_category_status","innerHTML","Please select a category.");
				error++;
			} else {site_category.DOM("site_category_status","innerHTML",""); }
		}
	);
	terms = new validate("terms","terms_status");
	terms.EVENT("click",
		terms.chk = function() {
			if(!terms.GET("checked")) {
				terms.DOM("terms_status","innerHTML","Please Agree to the Terms and Condition.");
				error++;
			} else {terms.DOM("terms_status","innerHTML",""); }
		}
	);
}

function chkRegister(v){
	error = 0;
	site_title.chk();
	site_description.chk();
	site_url.chk();
	email.chk();
	username.chk();
	password1.chk();
	password2.chk();
	site_category.chk();
	terms.chk();
	if(error == 0) { allow = true; return true; } else return false;
}

function validate(id,status_id){
	var obj = document.getElementById(id);
	var status = document.getElementById(status_id);
	var i = {		
		shout: function(){
			alert(obj.value);
		},
		isLength: function(c){
			if(obj.value.length >= c) return true; else return false;
		},
		DOM: function(id,attrib,v){
			var x = document.getElementById(id);
			// if not null
			if(!x){ var x = status; }
			switch(attrib){
				case "value" : x.value = v; break;
				default : x.innerHTML = v; break
			}
		},
		GET: function(v){
			switch(v){
				case "value" : return obj.value; break;
				case "checked" : return obj.checked; break;
				case "innerHTML" : return obj.innerHTML; break;
				default : break;
			}
			
		},		
		EVENT: function(evt,f){
			addEventHandler(obj, evt, f, false)
		},
		isEmail: function(v){
			var splitted = v.match("^(.+)@(.+)$");
			if(splitted == null) return false;
			if(splitted[1] != null ){
				var regexp_user=/^\"?[\w-_\.]*\"?$/;
				if(splitted[1].match(regexp_user) == null) return false;
			}
			if(splitted[2] != null){
				var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
				if(splitted[2].match(regexp_domain) == null){
					var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
					if(splitted[2].match(regexp_ip) == null) return false;
				}// if
			  	return true;
			}
		return false;
		}
	}
	return i;
}

function addEventHandler(oNode, sEvt, fFunc, bCaptures){
	if (typeof (window.attachEvent) != 'undefined')
		try { oNode.attachEvent('on' + sEvt, fFunc); } catch(e) {}
	else
		try { oNode.addEventListener(sEvt, fFunc, bCaptures);  } catch(e) {}
}

function getXMLObject(){
   var xmlHttp = false;
   try {
     xmlHttp = new ActiveXObject("Msxml2.XMLHTTP")  // For Old Microsoft Browsers
   }
   catch (e) {
     try {
       xmlHttp = new ActiveXObject("Microsoft.XMLHTTP")  // For Microsoft IE 6.0+
     }
     catch (e2) {
       xmlHttp = false   // No Browser accepts the XMLHTTP Object then false
     }
   }
   if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
     xmlHttp = new XMLHttpRequest();        //For Mozilla, Opera Browsers
   }
   return xmlHttp;  // Mandatory Statement returning the ajax object created
}
