
	function _lws_get_page_size() {
		
		var xScroll, yScroll;
		
		if (window.innerHeight && window.scrollMaxY) {	
			xScroll = window.innerWidth + window.scrollMaxX;
			yScroll = window.innerHeight + window.scrollMaxY;
		} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}
		
		var windowWidth, windowHeight;
		
		if (self.innerHeight) {	// all except Explorer
			if(document.documentElement.clientWidth){
				windowWidth = document.documentElement.clientWidth; 
			} else {
				windowWidth = self.innerWidth;
			}
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) { // other Explorers
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}
		
		// for small pages with total height less then height of the viewport
		if(yScroll < windowHeight){
			pageHeight = windowHeight;
		} else { 
			pageHeight = yScroll;
		}
		
		// for small pages with total width less then width of the viewport
		if(xScroll < windowWidth){	
			pageWidth = xScroll;		
		} else {
			pageWidth = windowWidth;
		}
		
		arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
		
		return arrayPageSize;
	}
		
	function _lws_get_page_scroll() {
		
		var xScroll, yScroll;
		
		if (self.pageYOffset) {
			yScroll = self.pageYOffset;
			xScroll = self.pageXOffset;
		} else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
			yScroll = document.documentElement.scrollTop;
			xScroll = document.documentElement.scrollLeft;
		} else if (document.body) {// all other Explorers
			yScroll = document.body.scrollTop;
			xScroll = document.body.scrollLeft;	
		}
		arrayPageScroll = new Array(xScroll,yScroll);
		return arrayPageScroll;
	}
	
	function _lws_get_center_tag(sIdTag) {
		
		var aSizePage= _lws_get_page_size() ; // 0- Width Page | 1- Heigth Page | 2- Width Windows | 3- Height Windows
		var aPageScroll= _lws_get_page_scroll() ; // 0- xScroll | 1- yScroll
		
		$('#'+sIdTag).css('display','block') ;
		
		var nWindthTag= $('#'+sIdTag).width() ;
		var nHeightTag= $('#'+sIdTag).height() ;
		
		$('#'+sIdTag).css('display','none') ;
		
		var nLeftTag= (aSizePage[0]/2)-(nWindthTag/2) ;
		
		var nOffsetTop= aSizePage[3] - nHeightTag ;
		if ( nOffsetTop > 0 ) {
			var nTopTag= aPageScroll[1] + (nOffsetTop/2) ;
		}
		else {
			var nTopTag= aPageScroll[1] + 10 ;
		}
		
		var aCenterTag = new Array(nLeftTag,nTopTag);
		return aCenterTag ;
	}
		
	function _lws_load_transparency(sIdTag) {
		
		var sIdTag= sIdTag || '_lws_div_transparency' ;
		
		var sContent= "<div id='"+ sIdTag +"'></div>" ;
		
		var aSize= _lws_get_page_size() ; // 0- Width Page | 1- Heigth Page | 2- Width Windows | 3- Height Windows
		var nWidthPage= aSize[0] ;
		var nHeightPage= aSize[1] ;
		
		var cssObj = {
			'margin' : '0',
			'background-color' : '#000',
			
			'position' : 'absolute',
			'left' : '0',
			'top' : '0',
			'z-index' : '900',
			
			'-moz-opacity' : '0.6',
			'opacity' : '0.6',
			'filter' : 'alpha(opacity=60)',
			
			'width' : nWidthPage,
			'height' : nHeightPage
		}
		
		$('body').append(sContent) ;
		$('#'+sIdTag).css(cssObj) ;
	}

	function _lws_load_edition(sContent,sIdTag) {
		
		var sIdTag= sIdTag || '_lws_div_edition' ;
		var sTagEdition= "<div id='"+ sIdTag + "'>" + sContent + "</div>" ;
		
		var aSizePage= _lws_get_page_size() ; // 0- Width Page | 1- Heigth Page | 2- Width Windows | 3- Height Windows
		var aPageScroll= _lws_get_page_scroll() ; // 0- xScroll | 1- yScroll
		
		var cssObj = {
			'boder' : '1px solid #F00',
			'position' : 'absolute',
			'z-index' : '910'
		}
		
		$('body').append(sTagEdition) ;
		$('#'+sIdTag).css(cssObj) ;
		
		var aCenterTag= _lws_get_center_tag(sIdTag) ; // 0 - Left | 1- Top
		$('#'+sIdTag).css('left',aCenterTag[0]) ;
		$('#'+sIdTag).css('top',aCenterTag[1]) ;
		
		//$('#'+sIdTag).toggle("puff");
		//$('#'+sIdTag).toggle("explode");
		//$('#'+sIdTag).toggle("blind");
		$('#'+sIdTag).slideToggle(700);
		
		//if (navigator.appName == "Netscape"){ cmxform() ; }
		//$("form").draggable({ handle: 'div.draggable' });
	}

	//----------------  Funciones Publicas --------------------
	
	function _lws_remove_transparency(sIdTag) {
		var sIdTag= sIdTag || '_lws_div_transparency' ;
		$('#'+sIdTag).remove() ;
	}
	
	function _lws_remove_edition(sIdTag) {
		var sIdTag= sIdTag || '_lws_div_edition' ;
		$('#'+sIdTag).remove() ;
	}
	
	function _lws_load_form(sForm) {
		_lws_load_transparency() ;
		_lws_load_edition(sForm) ;
	}
	
	function _lws_remove_form() {
		_lws_remove_transparency() ;
		_lws_remove_edition() ;
	}
	
	function _lws_show_msg_wait_load(nTypeMsg) {
		
		var nTypeMsg= nTypeMsg || 1 ;
		var sIdTag ;
		var sTextMsg ;
		
		switch(nTypeMsg) {
		case 1: // Formulario
			sIdTag= '_lws_div_msg_wait_load_form' ;
			sTextMsg= 'Cargando formulario...' ;
			break ;
		case 2: // Listado o Contenido
			sIdTag= '_lws_div_msg_wait_load_form' ;
			sTextMsg= 'Cargando contenido...' ;
			break ;
		}
		
		
		var aSizePage= _lws_get_page_size() ; // 0- Width Page | 1- Heigth Page | 2- Width Windows | 3- Height Windows
		var aPageScroll= _lws_get_page_scroll() ; // 0- xScroll | 1- yScroll
		
		var sMsgWait= '' ;
		
		sMsgWait += "<div id='" + sIdTag+ "' class='lws_msg_wait_load_form'>" ;
		sMsgWait += "	<div class='fl'><img src='images/lws_ajax-loader.gif' /></div>" ;
		sMsgWait += "	<div class='fl'>" + sTextMsg + "</div>" ;
		sMsgWait += "	<div class='cf'></div>" ;
		sMsgWait += "</div>" ;
		
		$('body').append(sMsgWait) ;
		
		var aCenterTag= _lws_get_center_tag(sIdTag) ; // 0 - Left | 1- Top
		$('#'+sIdTag).css('left',aCenterTag[0]) ;
		$('#'+sIdTag).css('top',aCenterTag[1]) ;
		
		$('#'+sIdTag).slideToggle(700);
	}
	
	function _lws_remove_msg_wait_load(nTypeMsg) {
		
		var nTypeMsg= nTypeMsg || 1 ;
		var sIdTag ;
		
		switch(nTypeMsg) {
		case 1: // Formulario
			sIdTag= '_lws_div_msg_wait_load_form' ;
			break ;
		case 2: // Listado o Contenido
			sIdTag= '_lws_div_msg_wait_load_form' ;
			break ;
		}
		$('#'+sIdTag).remove() ;
	}
	
	function _lws_show_msg_wait_load_form() {
		_lws_show_msg_wait_load(1) ;
	}
	
	function _lws_show_msg_wait_load_list() {
		_lws_show_msg_wait_load(2) ;
	}
	
	function _lws_remove_msg_wait_load_form() {
		_lws_remove_msg_wait_load(1) ;
	}
	
	function _lws_remove_msg_wait_load_list() {
		_lws_remove_msg_wait_load(2) ;
	}
	
	function _lws_show_msg_save_form(sIdTag) {
		var sIdTag= sIdTag || '_lws_msg_wait_load_form' ;
		$('#'+sIdTag).toggle() ;
	}
	
	function _lws_hide_msg_save_form(sIdTag) {
		var sIdTag= sIdTag || '_lws_msg_wait_load_form' ;
		$('#'+sIdTag).toggle() ;
	}
