function tCookiePolicy() {
	this.link = ""
	this.UrlPolitica = ""
	this.mensaje = {
		TITULO: "",
		MENSAJE: "",
	}

	this.duracion = 365 * 2
	this.nombre = "tfePolicy".toUpperCase()
	this.separador = "//"
	this.valores = {
		PORDEFECTO: "pendiente",
		ANALITICASSI: "analiticas=si",
		PERSONALIZACIONSI: "personalizacion=si",
		VERSION: "version=0",
		ACEPTACIONTOTAL: "aceptacion=total",
		PUBLICITARIASSI: "publicitarias=si",
		TECNICASSI: "tecnicas=si",
	}
	this.valoresRechazo = {
		PORDEFECTO: "pendiente",
		ANALITICASNO: "analiticas=no",
		PERSONALIZACIONNO: "personalizacion=no",
		ACEPTACIONTOTAL: "aceptacion=rechazototal",
		PUBLICITARIASNO: "publicitarias=no",
		TECNICASSI: "tecnicas=si",
	}

	this.init = function () {}

	this.mostrarMensaje = function () {
		var s = this.mensaje.MENSAJE

		let modal = true

		if (objCookiePolicy.link == "3DCBADF77FEC4540") {
			modal = false
		}
		this.dialog = this.divMensajes = $(
			'<div id="mensajeCookies"></div>',
		).dialog({
			autoOpen: false,
			autoSize: true,
			closeOnEscape: false,
			modal: modal,
			resizable: false,
			//width: '800px',
			width: "auto",
			maxWidth: 800,
			maxHeight: 600,
			open: function (event, ui) {},
			buttons: [
				{
					// Aceptar todas
					text: objTraducciones.get(15542, id_idioma).toUpperCase(),
					click: () => objCookiePolicy.aceptarTodas(),
				},
				{
					// Rechazar todas
					text: objTraducciones.get(15543, id_idioma).toUpperCase(),
					click: () => objCookiePolicy.rechazarTodas(),
				},
				{
					// Configurar
					text: objTraducciones.get(15544, id_idioma).toUpperCase(),
					click: () => objCookiePolicy.configurar(),
				},
			],
		})

		this.dialog.dialog("option", "title", this.mensaje.TITULO)
		this.dialog.html(s)

		try {
			this.posicionarDialogoEnBotonRellenarDatos(this.dialog)
		} catch (error) {}

		this.dialog.dialog("open")
	}

	this.posicionarDialogoEnBotonRellenarDatos = function (d) {
		try {
			d.dialog("option", "position", {
				my: "center bottom",
				at: "center top",
				of: $("#botonRellenarDatos"),
			})
		} catch (error) {
			console.error(error)
		}
	}

	this.aceptarTodas = function () {
		var s = []
		for (valor in this.valores) {
			s.push(this.valores[valor])
		}

		s = s.join(this.separador)
		this.ponerTfePolicy(s)
		this.recargarPaginaActual()
	}

	this.rechazarTodas = function () {
		var s = []
		for (valor in this.valoresRechazo) {
			if (valor != "PORDEFECTO") {
				s.push(this.valoresRechazo[valor])
			}
		}

		s = s.join(this.separador)
		this.ponerTfePolicy(s)
		this.recargarPaginaActual()
	}

	this.configurar = function () {
		//objCookiePolicy.dialog.dialog("close");
		document.location.href = this.UrlPolitica
	}

	this.ponerTfePolicy = function (valorCookie) {
		let caducidad = new Date()
		caducidad.setDate(caducidad.getDate() + parseInt(this.duracion))

		const dominio = location.hostname

		let valor =
			valorCookie + ";expires=" + caducidad.toUTCString() + ";path=/"
		valor = valor + ";domain=" + dominio

		if (window.location.protocol == "https:") {
			valor += ";secure"
		}

		valor = `${valor}`

		document.cookie = this.nombre + "=" + valor
	}

	this.recargarPaginaActual = function () {
		document.location.reload()
	}
}

var objCookiePolicy = new tCookiePolicy()
