/*
// -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ---- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
   Utiles
   Namespace es.aquataller
   version:  d06-m08-a07
//  -- -- -- -- -- -- -- -- --
//  Mauricio F. Tolezano (www.acuataller.com)
// -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ---- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
// 
//
*/


es.aquataller.utiles.Utiles = function() 
{

}

es.aquataller.utiles.Utiles.prototype = {

	createElement : function(element) 
	{
		if (typeof document.createElementNS != 'undefined') {
			return document.createElementNS('http://www.w3.org/1999/xhtml', element);
		}
		if (typeof document.createElement != 'undefined') {
			return document.createElement(element);
		}
		return false;
	},
	
	createTextNode : function(element) 
	{
		if (typeof document.createTextNodeNS != 'undefined') {
			return document.createTextNodeNS('http://www.w3.org/1999/xhtml', element);
		}
		if (typeof document.createTextNode != 'undefined') {
			return document.createTextNode(element);
		}
		return false;
	},
	
	asignarEstilo : function(target, classValue) 
	{
		if (!this.isClass(target,classValue)) {
			if (target.className == ""){
			  target.className = classValue;
			}else{
			  target.className += " " + classValue;
			}
		}	
		return true;
	},
	
	eliminarEstilo : function(target, classValue) 
	{
		var removedClass = target.className;
		var pattern = new RegExp("(^| )" + classValue + "( |$)");
		
		removedClass = removedClass.replace(pattern, "$1");
		removedClass = removedClass.replace(/ $/, "");
		
		target.className = removedClass;
		
		return true;
	},
	
	
	isClass : function(target, classValue) 
	{
		var pattern = new RegExp("(^| )" + classValue + "( |$)");
		return pattern.test(target.className);
	},
	
	isRel : function(target, relValue) 
	{
		var pattern = new RegExp("(^| )" + relValue + "( |$)");
		return pattern.test(target.rel);
	},
	
	// Asigna una clase al elemento HTML.
	// Util para actiar estilos necesarios junto con la ejecucion Javascript.
	setClaseBandera : function(classValue)
	{
		var html = document.getElementsByTagName('html')[0];
		if(html){
			this.asignarEstilo(html,classValue);
			return true;
		}
		return false;
	},
	
	guardarCookie : function(id,valor,dias) 
	{
		expira = '';
		if (dias) {
			var fecha = new Date();
			fecha.setTime(fecha.getTime()+(dias*24*60*60*1000));
			var expira = '; expires='+fecha.toGMTString();
		}
		document.cookie = id+'='+valor+expira+'; path=/';
	},
	
	cookie : function(id) 
	{
		var nameEQ = id + "=";
		var ca = document.cookie.split(';');
		
		for(var i=0;i < ca.length;i++) 
		{
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length);
			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
		}
		return null;
	}

}


Array.prototype.inArray = function (value) {
	var i;
	for (i=0; i < this.length; i++) {
		if (this[i] === value) {
			return true;
		}
	}
	return false;
};

