/**
* @Copyright Copyright (C) 2011 - JoniJnm.es
* @license GNU/GPL http://www.gnu.org/copyleft/gpl.html
**/

kide.mensaje = function(name, id, url, ti, sesion, rango, img) {
	this.html('KIDE_mensaje_username', name);
	this.$('KIDE_mensaje_username').className = "KIDE_"+kide.rangos[rango];
	this.html('KIDE_tiempo_msg', ti);
	this.$('KIDE_mensaje_img').src = img ? img : this.img_blank;
	if (this.site == "com") {
		if (sesion != this.sesion && this.in_array(sesion, this.sids)) {
			this.show("KIDE_mensaje_privado_span", true);
			this.$('KIDE_mensaje_privado').href = 'javascript:kide.privados.nuevo("'+sesion+'", "'+name+'", '+rango+', "'+img+'", true)';
		}
		else 
			this.show("KIDE_mensaje_privado_span", false);
	}
	if (url) {
		this.$('KIDE_mensaje_perfil').href = url;
		this.show("KIDE_mensaje_perfil_span", true);
		this.$('KIDE_mensaje_img_enlace').href = url;
		this.$('KIDE_mensaje_img_enlace').target = '_blank';
		this.css('KIDE_mensaje_img', 'cursos', 'pointer');
	}
	else {
		this.show("KIDE_mensaje_perfil_span", false);
		this.$('KIDE_mensaje_img_enlace').href = 'javascript:void(0)';
		this.$('KIDE_mensaje_img_enlace').target = '';
		this.css('KIDE_mensaje_img', 'cursor', 'default');
	}
	if (this.rango == 1 || sesion == this.sesion) {
		this.show('KIDE_mensaje_borrar_span', true);
		this.$('KIDE_mensaje_borrar').href = 'javascript:kide.borrar('+id+')';
	}
	else
		this.show('KIDE_mensaje_borrar_span', false);
	this.$('KIDE_mensaje_ocultar').href = 'javascript:kide.show("KIDE_id_'+id+'")';
	if (this.rango == 1) {
		this.show('KIDE_mensaje_banear_span', false);
		if (sesion != '0' && rango != 1) {
			this.show('KIDE_mensaje_banear_span1', true);
			this.$('KIDE_mensaje_banear').onclick = function() { kide.banear(sesion, 'mensaje'); }
		}
		else
			this.show('KIDE_mensaje_banear_span1', false);
	}
	this.show("KIDE_mensaje", true);
};
kide.mostrar_usuario = function(name, rango, sesion, url, img) {
	this.html('KIDE_usuario_name', name);
	this.$('KIDE_usuario_name').className = "KIDE_"+this.rangos[rango];
	this.$('KIDE_usuario_img').src = img ? img : this.img_blank;
	if (this.site == "com") {
		if (sesion != this.sesion) {
			this.show("KIDE_usuario_privado_span", true);
			this.$('KIDE_usuario_privado').href = 'javascript:kide.privados.nuevo("'+sesion+'", "'+name+'", '+rango+', "'+img+'", true)';
		}
		else 
			this.show("KIDE_usuario_privado_span", false);
	}
	if (url) {
		this.$('KIDE_usuario_perfil').href = url;
		this.show("KIDE_usuario_perfil_mostrar", true);
		this.$('KIDE_usuario_img_enlace').href = url;
		this.$('KIDE_usuario_img_enlace').target = '_blank';
		this.css('KIDE_usuario_img', 'cursor', 'pointer');
	}
	else {
		this.show("KIDE_usuario_perfil_mostrar", false);
		this.$('KIDE_usuario_img_enlace').href = 'javascript:void(0)';
		this.$('KIDE_usuario_img_enlace').target = '';
		this.css('KIDE_mensaje_img', 'cursor', 'default');
	}
	if (this.rango == 1) {
		this.show('KIDE_usuario_banear_span', false);
		if (sesion != '0' && rango != 1) {
			this.show('KIDE_usuario_banear_span1', true);
			this.$('KIDE_usuario_banear').onclick = function() { kide.banear(sesion, 'usuario'); } 
		}
		else
			this.show('KIDE_usuario_banear_span1', false);
	}
	this.show("KIDE_usuario", true);
};
kide.insertNewContent = function(name,text,url,ti,color,rango,id,sesion,yo,hora,img) {
	if (text.replace(/ /g, "") != "") {
		var c = color.length>0 ? 'style="color:#'+color+'" class="KIDE_msg"' : 'class="KIDE_dc_'+this.rangos[rango]+' KIDE_msg"';
		var div = this.$('KIDE_msgs');
		var nodo = document.createElement('div');
		var insertO = this.$("KIDE_output");
		var s_hora;
		nodo.setAttribute('id', 'KIDE_id_'+id);
		nodo.setAttribute('class', 'KIDE_msg_top');
		if (this.show_hour == 'both' || this.site == this.show_hour)
			s_hora = '<span class="KIDE_msg_hour">'+hora+'</span> ';
		else
			s_hora = '';
		var tmp = '';
		if (img && kide.show_avatar) {
			var style = kide.avatar_maxheight ? 'style="max-height:'+kide.avatar_maxheight+'" ' : '';
			tmp = '<img '+style+'src="'+img+'" class="KIDE_icono" alt="" /> ';
		}
		nodo.innerHTML = s_hora+tmp+'<span style="cursor: pointer" title="'+ti+'" class="KIDE_'+this.rangos[rango]+'" onclick="kide.mensaje(\''+name+'\', '+id+', \''+url+'\', \''+ti+'\', \''+sesion+'\', '+rango+', \''+img+'\')">'+name+'</span>: <span '+c+'>'+this.filter_smilies(text)+'</span>';

		if (this.order == 'bottom') {
			this.insertAfter(nodo, insertO.lastChild);
			div.scrollTop = div.scrollHeight;
		}
		else
			insertO.insertBefore(nodo, insertO.firstChild);
		if (!yo && this.sound == 1) 
			this.play_msg_sound();
	}
};
kide.insert_sesion = function(row) {
	var div = document.createElement('div');
	div.setAttribute('style', 'cursor:pointer');
	div.setAttribute('class', row.getAttribute('class'));
	div.onclick = function() { kide.mostrar_usuario(row.getAttribute('name'), row.getAttribute('rango'), row.getAttribute('sesion'), row.getAttribute('profile'), row.getAttribute('img')) };
	div.innerHTML = row.getAttribute('name');
	this.$('KIDE_usuarios').insertBefore(div, this.$('KIDE_usuarios').firstChild);
};
kide.change_name_keyup = function(e, t) {
	if (this.isEnter(e)) {
		this.change_name(t);
		this.foco('KIDE_txt');
		return false;
	}
	return true;
};
kide.cuadro_lanzar = function(html, w, h) {
	var dw = this.getDocumentWidth();
	var dh = this.getDocumentHeight();
	var top = (dh-h)/2-50;
	var left = (dw-w)/2-20;
	if (top < 0) top = 1;
	if (left < 0) left = 1;
	this.css('kide_cuadro_cerrar', 'top', top+'px');
	this.css('kide_cuadro_cerrar', 'left', (left+w+30)+'px');
	this.css('kide_cuadro_1', 'top', top+'px');
	this.css('kide_cuadro_1', 'left', left+'px');
	this.css('kide_cuadro_1', 'width', (w+20)+'px');
	this.css('kide_cuadro_1', 'height', (h+20)+'px');
	this.css('kide_cuadro_2', 'maxHeight', (dh-20)+'px');
	this.css('kide_cuadro_2', 'overflow', 'auto');
	this.html('kide_cuadro_2', html);
	this.css('kide_cuadro_overlay', 'width', dw+'px');
	this.css('kide_cuadro_overlay', 'height', dh+'px');
	this.show('kide_cuadro', true);
	this.show('kide_cuadro_overlay', true);
};
kide.show_colors = function() {
	if (!kide.html('KIDE_opciones_colores')) {
		var colors = ['000000','000033','000066','000099','0000CC','0000FF','003300','003333','003366','003399','0033CC','0033FF','006600','006633','006666','006699','0066CC','0066FF','009900','009933','009966','009999','0099CC','0099FF','00CC00','00CC33','00CC66','00CC99','00CCCC','00CCFF','00FF00','00FF33','00FF66','00FF99','00FFCC','00FFFF','330000','330033','330066','330099','3300CC','3300FF','333300','333333','333366','333399','3333CC','3333FF','336600','336633','336666','336699','3366CC','3366FF','339900','339933','339966','339999','3399CC','3399FF','33CC00','33CC33','33CC66','33CC99','33CCCC','33CCFF','33FF00','33FF33','33FF66','33FF99','33FFCC','33FFFF','660000','660033','660066','660099','6600CC','6600FF','663300','663333','663366','663399','6633CC','6633FF','666600','666633','666666','666699','6666CC','6666FF','669900','669933','669966','669999','6699CC','6699FF','66CC00','66CC33','66CC66','66CC99','66CCCC','66CCFF','66FF00','66FF33','66FF66','66FF99','66FFCC','66FFFF','990000','990033','990066','990099','9900CC','9900FF','993300','993333','993366','993399','9933CC','9933FF','996600','996633','996666','996699','9966CC','9966FF','999900','999933','999966','999999','9999CC','9999FF','99CC00','99CC33','99CC66','99CC99','99CCCC','99CCFF','99FF00','99FF33','99FF66','99FF99','99FFCC','99FFFF','CC0000','CC0033','CC0066','CC0099','CC00CC','CC00FF','CC3300','CC3333','CC3366','CC3399','CC33CC','CC33FF','CC6600','CC6633','CC6666','CC6699','CC66CC','CC66FF','CC9900','CC9933','CC9966','CC9999','CC99CC','CC99FF','CCCC00','CCCC33','CCCC66','CCCC99','CCCCCC','CCCCFF','CCFF00','CCFF33','CCFF66','CCFF99','CCFFCC','CCFFFF','FF0000','FF0033','FF0066','FF0099','FF00CC','FF00FF','FF3300','FF3333','FF3366','FF3399','FF33CC','FF33FF','FF6600','FF6633','FF6666','FF6699','FF66CC','FF66FF','FF9900','FF9933','FF9966','FF9999','FF99CC','FF99FF','FFCC00','FFCC33','FFCC66','FFCC99','FFCCCC','FFCCFF','FFFF00','FFFF33','FFFF66','FFFF99','FFFFCC','FFFFFF'];
		var out = '';
		var c;
		for (var i=0; i<colors.length;i++) {
			c = colors[i];
			out += '<a href="javascript:kide.set_color(\''+c+'\')"><img class="KIDE_r" src="'+this.img_blank+'" style="background-color:#'+c+'" /></a>';
		}
		this.html('KIDE_opciones_colores', out)
	}
};
kide.cuadro_cerrar = function() {
	this.html('kide_cuadro_2', '');
	this.show('kide_cuadro', false);
	this.show('kide_cuadro_overlay', false);
};
kide.bbcode_insert = function(name, params) {
	var txt = this.$('KIDE_txt');
	var str = txt.value;
	if (!this.defined(params)) 
		params = '';
	else if (params.substr(0,1) != '=')
		params = ' '+params;
	var s = txt.selectionStart;
	var e = txt.selectionEnd;
	if (s < e)
		txt.value = str.substring(0, s) + '['+name+params+']'+str.substring(s, e)+'[/'+name+']' + str.substring(e, str.length);
	else
		txt.value += '['+name+params+'][/'+name+']';
};

// privados
kide.privados.aviso = function(alias) {
	kide.css('KIDE_privados_avatar_'+alias, 'border', '2px solid red');
};
kide.privados.insertar = function(sesion, name, text, color, rango, yo) {
	if (text.replace(/ /g, "") != "") {
		var p = this.get(sesion);
		var alias = p.alias;
		var insertO = kide.$("privado_full_"+alias);
		var oDiv = document.createElement('div');
		oDiv.setAttribute('class', 'KIDE_msg_top');
		var c = color.length>0 ? 'color="#'+color+'" class="KIDE_msg"' : 'class="KIDE_dc_'+kide.rangos[rango]+' KIDE_msg"';
		oDiv.innerHTML = '<span class="KIDE_'+kide.rangos[rango]+'">'+name+'</span>: <span '+c+'>'+kide.filter_smilies(text)+'</span>';
		if (kide.order == 'bottom') {
			kide.insertAfter(oDiv, insertO.lastChild);
			insertO.scrollTop = insertO.scrollHeight;
		}
		else
			insertO.insertBefore(oDiv, insertO.firstChild);
		if (!yo) {
			if (this.opened != alias)
				this.aviso(alias);
			if (kide.sound == 1) 
				kide.play_msg_sound();
			this.abrir(p, true);
		}
	}
};
kide.privados.disable = function(v) {
	kide.$("privados_txt").disabled = v;
};
kide.privados.clear = function() {
	kide.val('privados_txt', '');
};
kide.privados.abrir = function(p, m) {
	if (typeof(p) != 'object') p = this.geta(p);
	if (!kide.defined(m)) m = p.closed;
	kide.show('privados_mini_'+p.alias, m);
	p.closed = !m;
	if (!m)
		this.maximizar(p, false);
};
kide.privados.maximizar = function(p, m) {
	if (typeof(p) != 'object') p = this.geta(p);
	var alias = p.alias;
	if (!kide.defined(m)) m = !p.maxed;
	if (m && !p.maxed) {
		this.abrir(p, true);
		if (this.opened > 0)
			kide.show('privado_full_'+p.opened, false);
		this.opened = alias;
		p.maxed = true;
		
		this.disable(p.stoped);
		kide.show("privado_full_"+alias, true);
		kide.show("privados_full_div", true);
		kide.css('KIDE_privados_avatar_'+alias, 'border', '1px solid black');
		kide.$("privados_full_minimizar").href = "javascript:kide.privados.maximizar("+alias+", false)";
		kide.$("privados_full_cerrar").href = "javascript:kide.privados.abrir("+alias+", false)";
		kide.html("privados_full_title", p.nombre);
		kide.$('privados_txt').focus();
		if (kide.order == 'bottom')
			kide.$("privado_full_"+alias).scrollTop = kide.$("privado_full_"+alias).scrollHeight;
		kide.events.lanzar('onPrivadosMaximizar', [p.alias, true]);
	}
	else if (!m && p.maxed) {
		kide.show('privados_full_div', false);
		kide.show('privado_full_'+alias, false);
		this.opened = 0;
		p.maxed = false;
		kide.events.lanzar('onPrivadosMaximizar', [p.alias, false]);
	}
};
kide.privados.crear = function(p) {
	var alias = p.alias;
	var insertO = kide.$("privado_full_x");
	var struct = document.createElement('div');
	struct.setAttribute('id', 'privado_full_'+alias);
	struct.setAttribute('class', 'privado_full');
	struct.innerHTML = "<span></span>";
	insertO.insertBefore(struct, insertO.firstChild);
	
	insertO = kide.$("privados_mini");
	struct = document.createElement('div');
	struct.setAttribute('id', 'privados_mini_'+alias);
	struct.setAttribute('class', 'privados_mini');
	struct.innerHTML = '<span id="privados_mini_name_'+alias+'" style="cursor:pointer" class="KIDE_'+kide.rangos[p.rango]+'" onclick="kide.privados.maximizar('+alias+',true)">'+p.name+'</span><br /><img alt="" onclick="kide.privados.maximizar('+alias+',true)" style="cursor:pointer" id="KIDE_privados_avatar_'+alias+'" class="KIDE_avatar" src="'+p.img+'" style="border:1px solid black" />';
	insertO.insertBefore(struct, insertO.firstChild);
	
	kide.show("privados_mini_div", true);
};
kide.privados.onUpdateSessions = function(data) {
	var row = data[0];
	p = kide.privados.get(row.getAttribute("sesion"));
	if (p) {
		p.name = row.getAttribute('name');
		if (kide.opened == p.alias)
			kide.html("privados_full_title", p.name);
	}
};
kide.events.add('onAjaxSession', kide.privados.onUpdateSessions);
kide.privados.onSetColor = function(data) {
	var c = data[0];
	kide.css('privados_txt', 'color', "#"+c);
};
kide.events.add('onSetColor', kide.privados.onSetColor);
kide.privados.onReload = function(data) {
	var xml = data[0];
	if (!kide.privados_encontrado && kide.text(xml.getElementsByTagName('privados')[0])>0) {
		if (kide.site == "mod") {
			kide.privados_encontrado = true;
			kide.html("KIDE_privados_mod", kide.msg.privados_nuevos);
			kide.show("KIDE_privados_mod", true);
		}
		else {
			if (kide.encendido == 1) {
				kide.privados_encontrado = true;
				kide.iniciar();
			}
			else if (kide.encendido == 2 && kide.privados_parado) {
				kide.privados_encontrado = true;
				kide.privados_parado = false;
				kide.privados.recargar();
			}
		}
	}
};
kide.events.add('onAjaxReload', kide.privados.onReload);
