if(web==null)
var web = {
		xmlhttp:false,
		init:function(){
			if(!this.xmlhttp){
				if (!window.XMLHttpRequest && 'ActiveXObject' in window) {
				    window.XMLHttpRequest= function() {
						try {
							activeObject=new ActiveXObject("Msxml2.XMLHTTP");
						} catch (e) {
							try {
								activeObject= new ActiveXObject("Microsoft.XMLHTTP");
							} catch (E) {
								activeObject=false;
							}
						}
						return activeObject;
				    }
				}
				web.xmlhttp = new XMLHttpRequest();
			}
		},
		
		get:function(url, params, callback){
			web.execute("GET", url, params, callback);
		},
		
		post:function(url, params, callback){
			web.execute("POST", url, params, callback);
		},
		
		execute:function(method, url, params, callback){
			web.init();
			if(method=="GET"){
				url=url+ "?" +params;
			}
			web.xmlhttp.open(method, url, true);
			if(method=="POST"){
                            web.xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			}
                        web.xmlhttp.onreadystatechange = function() {
				if (web.xmlhttp.readyState == 4) {
					if(callback!=""){
						callback(web.xmlhttp.responseText);
					}
				}
			}

			web.xmlhttp.send(params);
			
		}
};


if(dhtml == null)
var dhtml={
		
	addOnLoadEvent:function(funcion){
		var onloadAnterior = window.onload;
		if (typeof window.onload != 'function') {
			window.onload = funcion;
		} else {
			window.onload = function() {
				if (onloadAnterior) {
					onloadAnterior();
				}
				funcion();
			}
		}
	},
	e:function(element){
		return document.getElementById(element);
	},
	
	addListener:function(event, elem, func) {
		if(window.addEventListener){ // Mozilla, Netscape, Firefox
			elem.addEventListener(event, func, false);
		} else { // IE
			elem.attachEvent('on' + event, func);
		}
	},
	
	removeListener:function(event, elem, func){
		if(window.removeEventListener){ // Mozilla, Netscape, Firefox
			elem.removeEventListener(event, func, false);
		} else { // IE
			elem.detachEvent('on' + event, func);
		}
	},
	

	findPosX:function (obj){
	    var curleft = 0;
	    if(obj.offsetParent)
	        while(1) 
	        {
	          curleft += obj.offsetLeft;
	          if(!obj.offsetParent)
	            break;
	          obj = obj.offsetParent;
	        }
	    else if(obj.x)
	        curleft += obj.x;
	    return curleft;
	},
	
	findPosY:function (obj){
	    var curtop = 0;
	    if(obj.offsetParent)
	        while(1)
	        {
	          curtop += obj.offsetTop;
	          if(!obj.offsetParent)
	            break;
	          obj = obj.offsetParent;
	        }
	    else if(obj.y)
	        curtop += obj.y;
	    return curtop;
	  },
	
	addClass:function (element, value) {
		if(element.className.indexOf(value)<0){
			if(!element.className) {
				element.className = value;
			} else {
				newClassName = element.className;
				newClassName+= " ";
				newClassName+= value;
				element.className = newClassName;
			}
		}
	},
	
	removeClass:function (element, value){
		element.className=element.className.replace(value,"");
	},
	
	getEventElement:function(evt){
		var el_out;
		var ie_var = "srcElement";
		var moz_var = "target";
		evt[moz_var] ? el_out=evt[moz_var] : el_out=evt[ie_var];
		return el_out;
	},
	
	getStyle:function(element, property){
		if(element){
			if (element.currentStyle)
				var y = element.currentStyle[property];
			else if (window.getComputedStyle)
				var y = document.defaultView.getComputedStyle(element,null).getPropertyValue(property);
			return y;
		}
	},
	
	isVisible:function(element){
		visible=true;
		if(dhtml.getStyle(element, "visibility")=="hidden")visible=false;
		if(element.type=="hidden")visible=false;
		return visible;
	},
	
	isDisabled:function(element){
		disabled=false;
		if(element.disabled)disabled=true;
		return disabled;
	},	
	
	showAndBlock:function(element){
		this.block(element);
		this.show(element);
	},

	hideAndUnblock:function(element){
		
		this.unblock(element);
		this.hide(element);
	},
	
	show:function(element) {
		if(element != null){
			element.style.visibility = "visible";
		}
	},

	block:function(element) {
		if(element != null){
			element.style.display = "block";
		}
	},

	hide:function(element) {
		if(element != null){
			element.style.visibility = "hidden";
		}
	},

	unblock:function(element) {
		if(element != null){
			element.style.display = "none";
		}
	}
	
};

