function Cookie() {
	
	function getParameter(name) {
		name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
		var regexS = "[\\?&]"+name+"=([^&#]*)";
		var regex = new RegExp( regexS );
		var results = regex.exec(window.location.href);
		if (results == null)
			return "";
		else
			return results[1];
	}
	
	this.getValorCookieClicrbsV2 = getValorCookieClicrbsV2;
	
	function getValorCookieClicrbsV2(stringCookie) {
		var uf, local, usuario;
		
		try {
			uf = stringCookie.split("(")[2].split(")")[0];
		} catch(e) {
			uf = "";
		}
		
		try {
			local = stringCookie.split("(")[1].split(")")[0];
		} catch(e) {
			local = "";
		}
		
		try {
			usuario = stringCookie.split(":")[2].split("=")[1];
		} catch(e) {
			usuario = "";
		}
		
		return {uf: uf, local: local, usuario: usuario};
	}
	
	this.getCookie = getCookie;
	
	function getCookie(cookieName) {
		var cookieString = document.cookie +"";
		var index1 = cookieString.indexOf(cookieName+ "=");
		
		if (index1 == -1 || cookieName == "")
			return "";
		
		var index2 = cookieString.indexOf(";", index1);
		
		if (index2 == -1)
			index2 = cookieString.length;
		
		return unescape(cookieString.substring(index1 + cookieName.length + 1, index2));
	}
	
	this.gravaCookie = gravaCookie;
	
	function gravaCookie(nome, valor, dias) {
		var expiracao = new Date();
		var ms = Date.parse(expiracao);
		expiracao.setTime(ms + dias*24*60*60*1000);
		expiracao = expiracao.toUTCString();
		
		var cookieString = nome +"="+ valor +";path=/;";
		
		if (dias > 0)
			cookieString += "EXPIRES="+ expiracao +";";
		
		document.cookie = cookieString;
	}
	
	this.setCookieAndRedirect = function(vUrl) {
		var vUf, vLocal, vUsuario, vNome, vValorRS, vValorSC;
		
		vNome = "clicRBSv2.prefs";
		vValorRS = "local=Porto Alegre(1):uf=RS(1):usuario=";
		vValorSC = "local=Florianópolis(18):uf=SC(2):usuario=";
		
		vUf = getParameter("uf");
		vLocal = getParameter("local");
		vUsuario = getValorCookieClicrbsV2(getCookie(vNome)).usuario;
		
		if (vUsuario != "") {
			vValorRS += vUsuario;
			vValorSC += vUsuario;
		}
		
		if (vUf == "" || vLocal == "") {
			vUf = getValorCookieClicrbsV2(getCookie("clicRBSv2.prefs")).uf;
			vLocal = getValorCookieClicrbsV2(getCookie("clicRBSv2.prefs")).local;
			
			if (vUf == "" || vLocal == "") {
				gravaCookie(vNome, vValorRS, 365);
				vUf = "1";
				vLocal = "1";
			}
		} else {
			if (vUf == "1")
				gravaCookie(vNome, vValorRS, 365);
			else if (vUf == "2")
				gravaCookie(vNome, vValorSC, 365);
		}
		
		vUrl = vUrl.replace(/((.)*)(uf=(\w*)(&|$))((.)*)/gi, "$1uf="+ vUf +"$5$6");
		vUrl = vUrl.replace(/((.)*)(local=(\w*)(&|$))((.)*)/gi, "$1local="+ vLocal +"$5$6");
		
		location.href = vUrl;
	};
	
	this.setCookie = function() {
		var vUf, vLocal, vUsuario, vNome, vValorRS, vValorSC;
		
		vNome = "clicRBSv2.prefs";
		vValorRS = "local=Porto Alegre(1):uf=RS(1):usuario=";
		vValorSC = "local=Florianópolis(18):uf=SC(2):usuario=";
		
		vUf = getParameter("uf");
		vLocal = getParameter("local");
		vUsuario = getValorCookieClicrbsV2(getCookie(vNome)).usuario;
		
		if (vUsuario != "") {
			vValorRS += vUsuario;
			vValorSC += vUsuario;
		}
		
		if (vUf == "1")
			gravaCookie(vNome, vValorRS, 365);
		else if (vUf == "2")
			gravaCookie(vNome, vValorSC, 365);
	};
	
}

var cookie = new Cookie();