var USUARIOS = {};

USUARIOS.user = "";
USUARIOS.admin = false;
USUARIOS.fotos = [];
USUARIOS.fotos_album = [];

USUARIOS.sesion = function() {
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() != "")) USUARIOS.user = $("user",REGISTRO.xml).text();
}

USUARIOS.menu = function(activo) {
	var soy_yo = ((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) ? true : false;
	var galeria = true;
	// Reviso si tiene galería
	$.ajax({
		type: "HEAD",
		url: GENERAL.path + '/fotos-' + USUARIOS.user + '/index.html',
		async: false,
		error: function() {galeria = false},
		success: function(data) {galeria = true}
	});
	var html =	'<div class="modPortal">\n';
	html +=		'<div class="mPC mod_content">\n';
	html +=		'		<ul class="sub3menunav">\n';
	if(USUARIOS.galeria) html +=		'			<li id="usactividad" class="fondo_personalizado_activo activo"><a href="' + GENERAL.path + '/fotos-' + USUARIOS.user + '/perfil.html">Actividad</a></li>\n';
	html +=		'			<li id="usperfil" class="fondo_personalizado_activo"><a href="http://' + queid_master + '/perfil.php?user=' + USUARIOS.user + '">Perfil</a></li>\n';
	if(soy_yo) {
		html +=		'			<li id="useditar" class="fondo_personalizado_activo"><a href="http://' + queid_master + '/perfil_editar.php">Editar perfil</a></li>\n';
		html +=		'			<li id="usinvitar" class="fondo_personalizado_activo"><a href="http://' + queid_master + '/invitar_contactos.php?men=ok">Invita a tus contactos</a></li>\n';
	}
	if(galeria) {
		html +=		'			<li id="usfotos" class="fondo_personalizado_activo"><a href="' + GENERAL.path + '/fotos-' + USUARIOS.user + '/listado.html">' + (soy_yo ? 'Mis fotos' : 'Fotos') + '</a></li>\n';
		html +=		'			<li id="usalbumes" class="fondo_personalizado_activo"><a href="' + GENERAL.path + '/fotos-' + USUARIOS.user + '/albumes.html">' + (soy_yo ? 'Mis álbumes' : 'Álbumes') + '</a></li>\n';
	}
	/* if(soy_yo) {
		html +=		'			<li id="ussoyseguidorde" class="fondo_personalizado_activo"><a href="http://' + queid_master + '/busqueda_usuarios.php?s=4">Soy seguidor de</a></li>\n';
		html +=		'			<li id="usmisseguidores" class="fondo_personalizado_activo"><a href="http://' + queid_master + '/busqueda_usuarios.php?seguidores=4">Mis seguidores</a></li>\n';
	} */
	html +=		'		</ul><div class="separa"></div>\n';
	html +=		'		<form name="frmContactos" method="get" action="' + GENERAL.path + '/buscador.html">\n';
	html +=		'			<input type="hidden" name="que" value="usuarios"/>\n';
	html +=		'			<div class="mform_campo2"><input type="text" class="mform_input" name="q" value="" label="Buscar contactos"/></div>\n';
	html +=		'			<div class="separa"></div>\n';
	html +=		'			<div class="dDBboton" style="width: 100px;"><div class="boton fondo_personalizado redondeado" onClick="window.document.frmContactos.submit()">BUSCAR</div></div>\n';
	html +=		'		</form><div class="separa_registro"></div>\n';
	html +=		'	</div><div class="clear"></div>\n';
	html +=		'</div>\n';
	if($("#usuario-menu").length == 1) {
		window.document.getElementById("usuario-menu").innerHTML = html;
		if((activo != null) && ($(activo).length == 1)) $(activo).addClass("activo");
		MAQUETACION.elementos("#usuario-menu");
	}
}

USUARIOS.submenu = function() {
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		var html =	'<div class="separa"></div>\n';
		html +=		'<ul class="nav_usuarios_perfil">\n';
		html +=		'	<li id="ussubirfotos"><a href="JavaScript:;" onClick="USUARIOS.subirFotos()" title="Subir fotos" class="activo">Subir fotos</a><span class="desactivo">Subir fotos</span></li>\n';
		html +=		'	<li id="uscrearalbum"><a href="JavaScript:;" onClick="USUARIOS.album()" title="Crear álbum" class="activo">Crear álbum</a><span class="desactivo">Crear álbum</span></li>\n';
		html +=		'</ul>\n';
		if($("#usuario-submenu").length == 1) window.document.getElementById("usuario-submenu").innerHTML = html;
	}
}

USUARIOS.seguidor = function() {
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() != USUARIOS.user)) {
		if($("#submenu .submenunav #smnseguidor").length == 0) $("#submenu .submenunav").append('<li id="smnseguidor"><a href="' +  + '">Hazte seguidor</a></li>');
	}
}

USUARIOS.inicializar = function() {
	$("#usuario-fotos").droppable("destroy");
	$("#usuario-album-cabecera").droppable("destroy");
	$("#usuario-album-fotos").droppable("destroy");
	$("#usuario-album-fotos .thumbs .fag_thumb").draggable("destroy");
	$("#usuario-fotos .thumbs .fag_thumb").draggable("destroy");
	USUARIOS.fotos = [];
	USUARIOS.fotos_album = [];
}

USUARIOS.perfil = function(accion) {
	USUARIOS.menu("#usactividad");
	accion = (typeof(accion) != "undefined") ? accion : "";
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		var usuario_cabecera = $(".perfil_usuario .titulo_header");
		if(($(usuario_cabecera).length == 1) && ($(usuario_cabecera).text() == "")) $(usuario_cabecera).text(USUARIOS.user);
		var usuario_avatar = $(".perfil_usuario .mod_ultimos_usuarios");
		if(($(usuario_avatar).length == 1) && ($(usuario_avatar).html() == "")) $(usuario_avatar).load(GENERAL.path + "/includes/usuarios/" + USUARIOS.user + ".avatar56.html");
		USUARIOS.submenu();
		if(accion == "subir_fotos") USUARIOS.subirFotos();
		else if(accion == "crear_album") USUARIOS.album();
		else if(accion.match(/^editar_album,[0-9]+$/)) {
			datos = accion.split(",");
			USUARIOS.album(datos[1]);
		}
		else USUARIOS.pulso();
	}
	else USUARIOS.pulso();
}

USUARIOS.login = function(accion) {
	accion = (typeof(accion) != "undefined") ? accion : "";
	if(REGISTRO.xml == null) {
		var html =	'<div class="mod_subefoto">\n';
		html +=		'	<div class="mod_form">\n';
		html +=		'		<form name="frmLogin" method="POST" action="http://' + queid_master + '/login.php"  autocomplete="off">\n';
		html +=		'			<input type="hidden" name="url_retorno" value="' + window.document.location.href.replace(/[#?].*$/,"") + (((accion != "") ? "?" + accion : "")) + '" />\n';
		html +=		'			<input type="hidden" name="servicio" value="' + queid_serv + '" />\n';
		html +=		'			<input type="hidden" name="enviar" value="Iniciar sesi&oacute;n" />\n';
		if(accion != "login")
			html +=	'			<h4 class="mform_tit2">Necesitas estar logueado para acceder a esta sección</h4>\n';
		html +=		'			<div class="mform_conten_campo">\n';
		html +=		'				<input type="text" name="queid_email" maxlength="200" class="mform_input" label="Email" /><div class="separa"></div>\n';
		html +=		'				<input type="password" name="queid_pass" maxlength="200" class="mform_input" label="Contraseña" /><div class="separa"></div>\n';
		html +=		'				<input type="checkbox" name="queid_rec" value="1" class="checkbox"/> Recordarme<div class="separa"></div>\n';
		html +=		'			</div><div class="clear"></div>\n';
		html +=		'			<div class="separa_registro"></div>\n';
		html +=		'			<div class="dDBboton" style="width: 152px;"><div class="boton fondo_personalizado redondeado" onClick="window.document.frmLogin.submit()">INICIAR SESIÓN</div></div>\n';
		html +=		'			<div class="separa_registro"></div>\n';
		html +=		'			<div class="clear"></div>\n';
		html +=		'		</form>\n';
		html +=		'	</div>\n';
		html +=		'	<div class="clear"></div>\n';
		html +=		'</div>';
		html +=		'<div class="clear"></div>\n';
		if($("#usuario-contenido").length == 1) {
			window.document.getElementById("usuario-contenido").innerHTML = html;
			MAQUETACION.elementos("#usuario-contenido");
		}
		var html =	'<div class="modPortal">\n';
		html +=		'	<div class="mPC mod_content">\n';
		html +=		'		<ul class="sub3menunav">\n';
		html +=		'			<li id="uslogin" class="fondo_personalizado_activo activo"><a href="JavaScript:;" onClick="USUARIOS.login(\'' + accion + '\')">Login</a></li>\n';
		html +=		'			<li id="uslogin"><a href="http://' + queid_master + '/registro.php">Regístrate</a></li>\n';
		html +=		'		</ul>\n';
		html +=		'	</div>\n';
		html +=		'</div>\n';
		if($("#usuario-menu").length == 1) window.document.getElementById("usuario-menu").innerHTML = html;
	}
	else {
		USUARIOS.pulso();
	}
}

USUARIOS.pulso = function(pagina) {
	if(USUARIOS.user != "") {
		$.post(GENERAL.path + "/api/ajax.php",{adm_target: "fotografia", adm_accion: "pulso", usuario2: USUARIOS.user},
			function(data) {
				var xml = data;
				if($("msg",xml).attr("id") == "200") {
					var fecha_hoy = new Date();
					var html =			'<div class="mod_listados_perfil">\n';
					var indice = 0;
					$("log",xml).each(
						function() {
							var time_actividad = parseInt($("timestamp",this).text())*1000;
							var hace_actividad = Math.floor((fecha_hoy.getTime() - time_actividad)/1000);
							html +=		'	<div class="listados_perfil_fototexto fotoizq">\n';
							html +=		'		<div class="lpft_foto"><img src="' + $("avatar",this).text() + '" alt="' + $("nick_usuario",this).text() + '" border="0" width="30" height="30"/></div>\n';
							html +=		'		<div class="lpft_textos">\n';
							html +=		'			<h3 class="lpft_titulo"><span class="lpft_usuario color_personalizado strong">' + $("nick_usuario",this).text() + '</span> ' + $("accion",this).text() + '<span class="lpft_nota"> - ' + GENERAL.timeHace(hace_actividad) + '</span></h3>\n';
							var texto = ($("foto",this).text() != "") ? $("titulo",this).text() + '<br/><img src="' + $("foto",this).text() + '" />' : $("titulo",this).text();
							html +=		'			<div class="lpft_txt"><a href="' + $("url",this).text() + '"><strong>' + texto + '</strong></a></div>\n';
							html +=		'		</div>\n';
							html +=		'		<div class="clear"></div>\n';
							html +=		'	</div>\n';
							indice++;
							if(indice >= 5) return false;
						}
					);
					html +=				'</div>';
					if($("#usuario-contenido").length == 1) window.document.getElementById("usuario-contenido").innerHTML = html;
				}
			}
		);
	}
	else USUARIOS.login();
}

USUARIOS.subirFotos = function() {
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		var html =	'<div class="mod_subefoto">\n';
		html +=		'	<div class="mod_form">\n';
		html +=		'		<form name="frmSubirFotos" method="POST" action="' + GENERAL.path + '/api/ajax.php" enctype="multipart/form-data">\n';
		html +=		'			<input type="hidden" name="adm_target" value="fotografia" />\n';
		html +=		'			<input type="hidden" name="adm_accion" value="subir_fotos_enviar" />\n';
		html +=		'			<input type="hidden" name="MAX_FILE_SIZE" value="60000000" />\n';
		html +=		'			<h3 class="mform_tit">Sube tus fotos</h3>\n';
		html +=		'			<h4 class="mform_tit2">Busca en tu equipo la fotograf&iacute;a que quieres</h4>\n';
		html +=		'			<div class="mform_conten_campo">\n';
		html +=		'				<p><span class="txt_apoyo">La imagen no puede pesar más de 8Mb. También puedes subir un fichero .zip de menos de 60 Mb</span></p>\n';
		html +=		'				<p><span class="txt_apoyo">El tamaño mínimo de cada imagen no puede ser inferior a 400x400 pixels ni superior a 5000x5000 pixels</span></p>\n';
		html +=		'				<input type="file" class="mform_caja" name="fotos[0]" /><div class="separa"></div>\n';
		html +=		'				<input type="file" class="mform_caja" name="fotos[1]" /><div class="separa"></div>\n';
		html +=		'				<input type="file" class="mform_caja" name="fotos[2]" /><div class="separa"></div>\n';
		html +=		'				<input type="file" class="mform_caja" name="fotos[3]" /><div class="separa"></div>\n';
		html +=		'				<input type="file" class="mform_caja" name="fotos[4]" /><div class="separa"></div>\n';
		html +=		'				<input type="file" class="mform_caja" name="fotos[5]" />\n';
		html +=		'			</div><div class="separa"></div>\n';
		html +=		'			<p><input name="derechos" type="checkbox" class="check"> <span class="txt_apoyo"><a href="' + GENERAL.path + '/condiciones.html" target="_blank" rel="nofollow">Acepto las condiciones particulares de este portal</a></span></p><div class="separa"></div>\n';
		html +=		'			<p><input name="condiciones" type="checkbox" class="check"> <span class="txt_apoyo"><a href="http://www.' + GENERAL.dominio + ((GENERAL.edicion != "") ? '/' + GENERAL.edicion : "") + '/interactivo/comun/condiciones.html" rel="nofollow" target="_blank">Acepto las condiciones de uso y política de protección de datos disponibles en el aviso legal o documento equivalente</a></span></p><div class="clear"></div>\n';
		html +=		'			<div class="separa_registro"></div>\n';
		html +=		'			<div class="dDBboton" style="width: 142px;"><div class="boton fondo_personalizado redondeado" onClick="USUARIOS.subirFotosEnviar()">SUBIR FOTOS</div></div>\n';
		html +=		'			<div class="separa_registro"></div>\n';
		html +=		'		</form>\n';
		html +=		'		<div class="clear"></div>\n';
		html +=		'	</div><div class="clear"></div>\n';
		html +=		'</div><div class="clear"></div>\n';
		if($("#usuario-contenido").length == 1) {
			window.document.getElementById("usuario-contenido").innerHTML = html;
			$("#usuario-submenu li").removeClass("activo");
			$("#usuario-submenu li#ussubirfotos").addClass("activo");
			MAQUETACION.elementos("#usuario-contenido");
		}
	}
	else USUARIOS.login("subir_fotos");
}

USUARIOS.subirFotosCargar = function() {
	var html =	'<div class="mod_form">\n';
	html +=		'		<h3 class="mform_tit">Sube tus fotos</h3><div class="separa"></div>\n';
	html +=		'		<p class="mform_txt">Por favor deja esta ventana abierta mientras el proceso de carga se completa.</p>\n';
	html +=		'		<div class="subefoto_carga"><img src="http://fotos.vocento.com/img/cargando.gif" alt="Cargando..." width="50" height="50" /></div>\n';
	html +=		'		<p class="mform_txt">Mientras tanto, puedes abrir otra ventana de tu navegador y continuar usando el portal. Cuando la carga se haya completado, podrás añadirle títulos y descripciones a tus fotos en esta ventana.</p>\n';
	html +=		'		<div class="clear"></div>\n';
	html +=		'</div>';
	html +=		'<div class="clear"></div>\n';
	if($("#usuario-contenido").length == 1) {
		window.document.getElementById("usuario-contenido").innerHTML = html;
		MAQUETACION.elementos("#usuario-contenido");
	}
}

USUARIOS.subirFotosEnviar = function() {
	frm = window.document.frmSubirFotos;
	var hayFoto = false;
	$("#usuario-contenido *:file").each(function() {if($(this).val() != "") hayFoto = true;});

	if(!hayFoto) {
		alert("No has insertado ninguna foto");
		return false;
	}
	if(!frm.derechos.checked) {
		alert("Debes aceptar las condiciones particulares de este portal");
		return false;
	}
	if(!frm.condiciones.checked) {
		alert("Debes aceptar las condiciones legales");
		return false;
	}
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		GENERAL.ajaxPost(frm
			,function(data) {
				var respuesta = GENERAL.ajaxDecode(data);
				var fotos = $.isArray(respuesta) ? respuesta : [respuesta];
				var html =	'<div class="mod_form">\n';
				html +=			'	<form name="frmSubirFotos" method="POST" action="' + GENERAL.path + '/api/ajax.php">\n';
				html +=		'		<input type="hidden" name="adm_target" value="fotografia" />\n';
				html +=			'		<input type="hidden" name="adm_accion" value="subir_fotos_insertar" />\n';
				html +=			'		<h3 class="mform_tit">Sube tus fotos</h3>\n';
				var htmlTmp = '';
				var fotos_ok = 0;
				var fotos_error = 0;
				$(fotos).each(
					function() {
						if(this.exito == "OK") {
							htmlTmp +=	'		<div class="bloque_foto" indice="' + fotos_ok + '">\n';
							htmlTmp +=	'			<h4 class="mform_tit3">Foto ' + (fotos_ok + 1) + '</h4><div class="separa"></div>\n';
							htmlTmp +=	'			<input type="hidden" name="fotos[' + fotos_ok + '][nombre]" value="' + this.nombre + '" />\n';
							htmlTmp +=	'			<input type="hidden" name="fotos[' + fotos_ok + '][original]" value="' + this.original + '" />\n';
							htmlTmp +=	'			<div class="mform_conten_campo">\n';
							htmlTmp +=	'				<div class="mform_margencampo">\n';
							htmlTmp +=	'					<img src="http://fotos.vocento.com/img/cargando165.gif" width="165" class="thumb" id="foto_' + fotos_ok + '_cargando"/>\n';
							htmlTmp +=	'					<img src="' + this.thumb + '" width="165" class="thumb" url="' + this.thumb + '" intentos="0" onError="USUARIOS.koFoto(' + fotos_ok + ')" onLoad="USUARIOS.okFoto(' + fotos_ok + ')" id="foto_' + fotos_ok + '_img" style="display: none;"/>\n';
							htmlTmp +=	'					<div class="subefoto_modifica">\n';
							htmlTmp +=	'						<p class="subefoto_opc_modifica"><a href="JavaScript:USUARIOS.subirFotosRotar(' + fotos_ok + ')" class="subefoto_txt_modifica" style="background-position:right 0px">Rotar foto</a></p>\n';
							htmlTmp +=	'						<p class="subefoto_opc_modifica"><a href="JavaScript:USUARIOS.subirFotosBorrar(' + fotos_ok + ')" class="subefoto_txt_modifica" style="background-position:right -59px">Borrar foto</a></p>\n';
							htmlTmp +=	'					</div>\n';
							htmlTmp +=	'				</div>\n';
							htmlTmp +=	'				<div class="mform_campo">\n';
							htmlTmp +=	'					<label><span class="label">Categor&iacute;a:</span></label><div class="clear"></div>\n';
							htmlTmp +=	'					<select name="fotos[' + fotos_ok + '][categoria]" class="mform_input">\n';
							htmlTmp +=	'						<option selected="selected">seleccione categoría</option>\n';
							htmlTmp +=	'					</select><div class="separa"></div>\n';
							htmlTmp +=	'					<input type="text" name="fotos[' + fotos_ok + '][titulo]" class="mform_input" label="Título" /><div class="separa"></div>\n';
							htmlTmp +=	'					<div class="mform_cuadro"><div class="mform_cuadro_in"><span class="ubicacion">Ubicación: </span><a href="JavaScript:;" onClick="USUARIOS.ubicarFoto(' + fotos_ok + ')" class="ubicacion">ubicar foto</a></div></div>\n';
							htmlTmp +=	'					<input type="hidden" name="fotos[' + fotos_ok + '][geolocalizacion]" /><div class="separa"></div>\n';
							htmlTmp +=	'					<textarea name="fotos[' + fotos_ok + '][texto]" class="mform_input" label="Descripción"></textarea><div class="separa"></div>\n';
							htmlTmp +=	'					<input type="text" name="fotos[' + fotos_ok + '][etiquetas]" class="mform_input" label="Palabras clave separadas por comas" /><div class="separa"></div>\n';
							htmlTmp +=	'				</div>\n';
							htmlTmp +=	'			</div><div class="clear"></div>\n';
							htmlTmp +=	'		</div><div class="clear"></div>\n';
							htmlTmp +=	'		<script language="JavaScript">USUARIOS.cargarFoto(' + fotos_ok + ')</script>\n';
							fotos_ok++;
						}
						else if(this.exito == "KO") {
							if(fotos_error == 0) {
								html +=	'		<div class="separa"></div>\n';
								html +=	'		<p class="mform_txt">Hay errores an algunas fotografías.</p>\n';
							}
							msg_error = (this.msg != "") ? this.msg : "no se ha podido enviar";
							html +=		'		<p class="subefoto_opc_modifica"><span class="subefoto_txt_error">La fotografía ' + this.nombre + ' no ha subido correctamente porque ' + this.msg + '</span></p>\n';
							fotos_error++;
						}
					}
				);
				html += htmlTmp;
				html +=	'		<div class="separa"></div>\n';
				if(fotos_ok > 0)
					html +=	'		<div class="dDBboton" style="width: 112px;"><div class="boton fondo_personalizado redondeado" onClick="USUARIOS.subirFotosInsertar()">GUARDAR</div></div>\n';
				else
					html +=	'		<div class="dDBboton" style="width: 102px;"><div class="boton fondo_personalizado redondeado" onClick="USUARIOS.subirFotos()">VOLVER</div></div>\n';
				html +=	'		<div class="clear"></div>\n';
				html +=	'	</form>\n';
				html +=	'</div>';
				html +=	'<div class="clear"></div>\n';
				if($("#usuario-contenido").length == 1) {
					window.document.getElementById("usuario-contenido").innerHTML = html;
					MAQUETACION.elementos("#usuario-contenido");
					USUARIOS.subirFotosPrimera();
					USUARIOS.Categorias("#usuario-contenido select[name$='[categoria]']");
				}
			}
		);
		USUARIOS.subirFotosCargar();
	}
	else USUARIOS.login("subir_fotos");
}

USUARIOS.okFoto = function(indice) {
	if(($("#usuario-contenido #foto_" + indice + "_img").length == 1) && ($("#usuario-contenido img#foto_" + indice + "_cargando").length == 1)) {
		var foto = $("#usuario-contenido #foto_" + indice + "_img");
		var cargando = $("#usuario-contenido img#foto_" + indice + "_cargando");
		$(cargando).hide();
		$(foto).show();
	}
}

USUARIOS.koFoto = function(indice) {
	if(($("#usuario-contenido #foto_" + indice + "_img").length == 1) && ($("#usuario-contenido img#foto_" + indice + "_cargando").length == 1)) {
		var foto = $("#usuario-contenido #foto_" + indice + "_img");
		var cargando = $("#usuario-contenido img#foto_" + indice + "_cargando");
		var intentos = ((typeof($(foto).attr("intentos")) == "undifined") || isNaN($(foto).attr("intentos"))) ? 0 : parseInt($(foto).attr("intentos"));
		if(intentos < 5) {
			GENERAL.pause(1000);
			$(foto).attr("intentos",intentos+1);
			$(foto).attr("src",$(foto).attr("url") + "?" + Math.random());
		}
	}
}

USUARIOS.subirFotosPrimera = function() {
	if(($("#usuario-contenido").length == 1) && ($("#usuario-contenido input[name='aplicar_todas']").length == 0)) {
		var html =	'<div class="derecha">\n';
		html +=		'	<span class="mform_txt">Aplicar esta informaci&oacute;n en todas las fotos </span>\n';
		html +=		'	<input name="aplicar_todas" type="checkbox" class="check" value="1">\n';
		html +=		'</div>\n';
		$("div.bloque_foto:first","#usuario-contenido").append(html);
	}
}

USUARIOS.subirFotosBorrar = function(indice) {
	var foto = $("div.bloque_foto[indice=" + indice + "]","#usuario-contenido");
	if(window.confirm("¿Estás seguro de borrar la foto?")) {
		$(foto).remove();
		if($("div.bloque_foto","#usuario-contenido").length == 0) USUARIOS.subirFotos(); else USUARIOS.subirFotosPrimera();
	}
}

USUARIOS.subirFotosRotar = function(indice) {
	var foto = $("div.bloque_foto[indice=" + indice + "]","#usuario-contenido");
	var original = $("input[name='fotos[" + indice + "][original]']",foto);
	var imagen = $("#foto_" + indice + "_img",foto);
	var imagen_src = $(imagen).attr("src");
	if(($(original).length == 1) && ($(imagen).length == 1)) {
		$.post(GENERAL.path + "/api/ajax.php"
			,{adm_target: "fotografia", adm_accion: "subir_fotos_rotar", original: $(original).val()}
			,function(data) {
				var respuesta = GENERAL.ajaxDecode(data);
				if(respuesta.exito == "OK") $(imagen).attr("src",respuesta.thumb + "?" + Math.random());
				else {
					alert(respuesta.msg);
					$(imagen).attr("src",imagen_src + "?" + Math.random());
				}
			}
		);
		$(imagen).attr("src","http://fotos.vocento.com/img/cargando165.gif");
	}
}

USUARIOS.subirFotosInsertar = function() {
	var frm = window.document.frmSubirFotos;
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		var fotosPrimera = $("div.bloque_foto:first",frm);
		var fotosResto = $("div.bloque_foto:gt(0)",frm);
		if($(fotosPrimera).length == 1) {
			if(USUARIOS.subirFotosCheckFoto(fotosPrimera)) {
				var aplicar_todas = ($(frm.aplicar_todas).length== 1) ? frm.aplicar_todas.checked : false;
				if((fotosResto.length == 0) || aplicar_todas || USUARIOS.subirFotosCheckFoto(fotosResto)) {
					GENERAL.ajaxPost(frm
						,function(data) {
							var respuesta = GENERAL.ajaxDecode(data);
							var fotos = $.isArray(respuesta) ? respuesta : [respuesta];
							var moderacion = false;
							var fotos_ok = 0;
							$(fotos).each(
								function() {
									if(this.exito == "OK") {
										if(this.activo == "0") moderacion = true;
										fotos_ok++;
									}
								}
							);
							if(fotos_ok == 0) {
								alert("No se ha podido guardar ninguna foto. Comprueba que sus nombres no contengan caracteres extraños como & / \ etc");
								window.location = GENERAL.path + "/perfil.html?subir_fotos";
							}
							else {
								if(moderacion) alert("Tus fotos se han subido correctamente. Algunas imágenes serán validadas por el equipo de moderación y podrás verlas en breves instantes.");
								window.location = GENERAL.path + "/fotos-" + USUARIOS.user + "/";
							}
						}
					);
					USUARIOS.subirFotosCargar();
				}
			}
		}
	}
	else USUARIOS.login();
}

USUARIOS.album = function(id_album) {
	id_album = ((id_album != null) && !isNaN(id_album)) ? id_album : 0;
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		var html =	'<div class="mod_crearalbum">\n';
		html +=		'	<div class="mod_form2">\n';
		html +=		'		<form name="frmAlbum" method="POST" action="' + GENERAL.path + '/api/ajax.php">\n';
		html +=		'			<input type="hidden" name="adm_target" value="fotografia" />\n';
		html +=		'			<input type="hidden" name="adm_accion" value="album_enviar" />\n';
		html +=		'			<input type="hidden" name="id_contenido" value="' + id_album + '" />\n';
		html +=		'			<input type="hidden" name="id_tipo" value="10" />\n';
		html +=		'			<input type="hidden" name="fotos" value="" />\n';
		html +=		'			<input type="hidden" name="foto_cabecera" value="" />\n';
		html +=		'			<div class="crearalbum_margencampo">\n';
		html +=		'				<div class="crearalbum_txt">\n';
		html +=		'					<h3 class="crearalbum_tit ">Crear album</h3>\n';
		html +=		'					<h4 class="crearalbum_tit2">Elegir fotos</h4>\n';
		html +=		'					<ol class="crearalbum_txt">\n';
		html +=		'						<li> Añade fotos arrastrándolas a tu álbum a la derecha. Elimínalas devolviéndolas a su lugar de origen.</li>\n';
		html +=		'						<li>Titula tu álbum. Dale una portada y una descripción.</li>\n';
		html +=		'						<li>Graba tu álbum</li>\n';
		html +=		'					</ol>\n';
		html +=		'				</div>\n';
		html +=		'			</div>\n';
		html +=		'			<div class="crearalbum_margencampo">\n';
		html +=		'				<h3 class="crearalbum_tit ">Tu album</h3><div class="separa"></div>\n';
		html +=		'				<input type="text" name="titulo" id="id_titulo" class="mform_input" label="Título del álbum" /><div class="separa"></div>\n';
		html +=		'				<textarea name="texto" class="mform_input" onFocus="GENERAL.activarCampo(this)" label="Descripción del álbum"></textarea>\n';
		html +=		'			</div><div class="clear"></div><div class="separa_registro"></div>\n';
		html +=		'			<div class="foto_album_galeria">\n';
		html +=		'				<div class="fag_thubms" id="usuario-fotos"></div>\n';
		html +=		'				<div class="fag_foto_arrastra">\n';
		html +=		'					<div class="arrastra_album" id="usuario-album-cabecera" id_foto="0"><span>ARRASTRA LA TAPA DEL ALBUM AQUÍ</span></div><div class="separa"></div>\n';
		html +=		'					<div class="arrastra_foto" id="usuario-album-fotos">ARRASTRA TUS FOTOS AQUÍ</div><div class="separa"></div>\n';
		html +=		'					<div class="dDBboton" style="width: 174px;"><div class="boton fondo_personalizado redondeado" onClick="USUARIOS.albumEnviar()">GUARDAR ALBUM</div></div>\n';
		html +=		'					<div class="clear"></div>\n';
		html +=		'				</div><div class="clear"></div>\n';
		html +=		'			</div><div class="clear"></div>\n';
		html +=		'		</form>\n';
		html +=		'	</div>\n';
		html +=		'	<div class="clear"></div>\n';
		html +=		'</div>\n';
		html +=		'<div class="clear"></div>\n';
		if($("#usuario-contenido").length == 1) {
			window.document.getElementById("usuario-contenido").innerHTML = html;
			$("#usuario-submenu li").removeClass("activo");
			$("#usuario-submenu li#uscrearalbum").addClass("activo");
			MAQUETACION.elementos("#usuario-contenido");
			// Datos del álbum
			var frmAlbum = window.document.frmAlbum;
			if(id_album > 0) {
				album_xml = FOTOGRAFIA.xml(id_album,10);
				frmAlbum.titulo.value = $("titulo",album_xml).text();
				if(frmAlbum.titulo.value != "") $(frmAlbum.titulo).prev(".mform_label").remove();
				frmAlbum.texto.value = $("texto",album_xml).text();
				if(frmAlbum.texto.value != "") $(frmAlbum.texto).prev(".mform_label").remove();
			}
			// Fotos del álbum
			$("#usuario-fotos").html('<div class="cargando"></div>');
			USUARIOS.fotos =  FOTOGRAFIA.fotos(0,9);
			if(id_album > 0) {
				$("#usuario-album-fotos").html('<div class="cargando"></div>');
				USUARIOS.fotos_album = FOTOGRAFIA.fotos(id_album,10);
			}
			USUARIOS.fotosAlbum();
			USUARIOS.fotosAlbumCabecera();
			$("#usuario-fotos").droppable(
				{
					accept: "#usuario-album-fotos .fag_thumb", hoverClass: "drag",
					drop: function (event, ui) {
						USUARIOS.fotosAlbum("baja",$(ui.draggable).attr("id_foto"));
						USUARIOS.fotosAlbumCabecera();
					}
				}
			);
			$("#usuario-album-fotos").droppable(
				{
					accept: "#usuario-fotos .fag_thumb", hoverClass: "drag",
					drop: function (event, ui) {
						USUARIOS.fotosAlbum("alta", $(ui.draggable).attr("id_foto"));
					}
				}
			);
			$("#usuario-album-cabecera").droppable(
				{
					accept: ".fag_thumb", hoverClass: "drag",
					drop: function (event, ui) {
						var id_foto = $(ui.draggable).attr("id_foto");
						USUARIOS.fotosAlbum("alta",id_foto);
						USUARIOS.fotosAlbumCabecera(id_foto);
					}
				}
			);
		}
	}
	else USUARIOS.login((id_album > 0) ? "editar_album," + id_album : "crear_album");
}

USUARIOS.sacarFotos = function(pagina) {
	destino = window.document.getElementById("usuario-fotos");
	if($(destino).length == 1) {
		var num_fotos = USUARIOS.fotos.length;
		var fotos_pagina = 12;
		var pagina_inicio = 1;
		var pagina_fin = Math.ceil(num_fotos/fotos_pagina);
		pagina = ((pagina != null) && !isNaN(pagina)) ? pagina : 1;
		if(pagina > pagina_fin) pagina = pagina_fin;
		if(pagina < pagina_inicio) pagina = pagina_inicio;
		var html =	'<div class="thumbs" pagina="' + pagina + '">\n';
		for(i=(pagina - 1)*fotos_pagina;i<=((pagina*fotos_pagina) - 1) && i<num_fotos;i++) {
			html +=	'	<div class="fag_thumb" id_foto="' + USUARIOS.fotos[i].id_foto + '"><img src="' + USUARIOS.fotos[i].thumb70 + '" /></div>\n';
		}
		html +=		'</div>\n';
		html +=		'<div class="separa"></div>\n';
		html +=		'<div class="fag_foto">\n';
		html +=		'	<ul class="foto_paginacion">\n';
		var pagina_indice = GENERAL.paginacion(pagina,pagina_inicio,pagina_fin,3);
		for(i=pagina_indice.pagina_indice_inicio;i<=pagina_indice.pagina_indice_fin;i++) {
			html +=	'		<li class="fpag"><a href="JavaScript:USUARIOS.sacarFotos(' + i + ')" class="fpag1 bc_personalizado_activo bc_personalizado_hover' + ((i == pagina) ? " activo" : "") + '">' + i + '</a></li>\n';
		}
		html +=	'		<li><a href="JavaScript:USUARIOS.sacarFotos(' + (pagina - 1) + ')" class="fpag_ant"></a></li>\n';
		html +=	'		<li><a href="JavaScript:USUARIOS.sacarFotos(' + (pagina + 1) + ')" class="fpag_sig"></a></li>\n';
		html +=		'	</ul>\n';
		html +=		'</div><div class="clear"></div>\n';
		destino.innerHTML = html;
		$("#usuario-fotos .thumbs .fag_thumb").draggable({containment: ".foto_album_galeria", revert: true, revertDuration: 100});
	}
}

USUARIOS.sacarFotosAlbum = function(pagina) {
	destino = window.document.getElementById("usuario-album-fotos");
	if($(destino).length == 1) {
		var num_fotos = USUARIOS.fotos_album.length;
		var html =	'ARRASTRA TUS FOTOS AQUÍ\n';
		if(num_fotos > 0) {
			var fotos_pagina = 4;
			var pagina_inicio = 1;
			var pagina_fin = Math.ceil(num_fotos/fotos_pagina);
			pagina = ((pagina != null) && !isNaN(pagina)) ? pagina : 1;
			if(pagina > pagina_fin) pagina = pagina_fin;
			if(pagina < pagina_inicio) pagina = pagina_inicio;
			var html =	'<div class="thumbs" pagina="' + pagina + '">\n';
			for(i=(pagina - 1)*fotos_pagina;(i<=((pagina*fotos_pagina) - 1) && i<num_fotos);i++) {
				html +=	'	<div class="fag_thumb" id_foto="' + USUARIOS.fotos_album[i].id_foto + '"><img src="' + USUARIOS.fotos_album[i].thumb70 + '" /></div>\n';
			}
			html +=		'</div>\n';
			html +=		'<div class="separa"></div>\n';
			html +=		'<div class="fag_foto">\n';
			html +=		'	<ul class="foto_paginacion">\n';
			var pagina_indice = GENERAL.paginacion(pagina,pagina_inicio,pagina_fin,3);
			for(i=pagina_indice.pagina_indice_inicio;i<=pagina_indice.pagina_indice_fin;i++) {
				html +=	'		<li class="fpag"><a href="JavaScript:USUARIOS.sacarFotosAlbum(' + i + ')" class="fpag1 bc_personalizado_activo bc_personalizado_hover' + ((i == pagina) ? " activo" : "") + '">' + i + '</a></li>\n';
			}
			html +=	'		<li><a href="JavaScript:USUARIOS.sacarFotosAlbum(' + (pagina - 1) + ')" class="fpag_ant"></a></li>\n';
			html +=	'		<li><a href="JavaScript:USUARIOS.sacarFotosAlbum(' + (pagina + 1) + ')" class="fpag_sig"></a></li>\n';
			html +=		'	</ul>\n';
			html +=		'</div><div class="clear"></div>\n';
		}
		destino.innerHTML = html;
		$("#usuario-album-fotos .thumbs .fag_thumb").draggable({containment: ".foto_album_galeria", revert: true, revertDuration: 100});
	}
}

USUARIOS.fotosAlbum = function(accion,id_foto) {
	var fotos_tmp = new Array();
	var foto_album_tmp = new Array();
	var fotos_ids = "--";
	var fotos_album_ids = "--";
	$(USUARIOS.fotos_album).each(
		function() {
			if(this.id_foto == id_foto) {
				if(accion == "baja") {
					fotos_tmp[fotos_tmp.length] = this;
					fotos_ids += this.id_foto + "--";
					return;
				}
			}
			if(fotos_album_ids.indexOf("--" + this.id_foto + "--") == -1) {
				foto_album_tmp[foto_album_tmp.length] = this;
				fotos_album_ids += this.id_foto + "--";
			}
		}
	);
	$(USUARIOS.fotos).each(
		function() {
			if((this.id_foto == id_foto) && (accion == "alta")) {
				foto_album_tmp.unshift(this);
				fotos_album_ids += this.id_foto + "--";
				return;
			}
			if((fotos_ids.indexOf("--" + this.id_foto + "--") == -1) && (fotos_album_ids.indexOf("--" + this.id_foto + "--") == -1)) {
				fotos_tmp[fotos_tmp.length] = this;
				fotos_ids += this.id_foto + "--";
			}
		}
	);
	fotos_tmp.sort(function(a,b) {return ((typeof(b.orden) == "undefined") || ((typeof(a.orden) != "undefined") && (parseInt(a.orden) >= parseInt(b.orden)))) ? 1 : -1});
	USUARIOS.fotos = fotos_tmp;
	USUARIOS.fotos_album = foto_album_tmp;
	USUARIOS.sacarFotosAlbum(1);
	USUARIOS.sacarFotos($("#usuario-fotos .thumbs").attr("pagina"));
}

USUARIOS.fotosAlbumCabecera = function(id_foto) {
	id_foto = (id_foto != null) ? id_foto : "0";
	$("#usuario-album-cabecera").html("<span>ARRASTRA LA TAPA DEL ALBUM AQUÍ</span>");
	$("#usuario-album-cabecera").attr("id_foto","0");
	$(USUARIOS.fotos_album).each(
		function() {
			if(((id_foto != "0") && (this.id_foto == id_foto)) || ((id_foto == "0") && (this.destacada == "1"))){
				$("#usuario-album-cabecera").html('<img src="' + this.thumb100 + '">');
				$("#usuario-album-cabecera").attr("id_foto", this.id_foto);
				return false;
			}
		}
	);
}

USUARIOS.albumEnviar = function() {
	frm = window.document.frmAlbum;
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		if(frm.titulo.value == "") {
			alert('No has insertado el titulo del album');
			return;
		}
		if(USUARIOS.fotos_album.length == 0) {
			alert('No has seleccionado las fotos del album');
			return;
		}
		frm.fotos.value = "";
		$(USUARIOS.fotos_album).each(
			function() {
				frm.fotos.value += (frm.fotos.value == "") ? this.id_foto : "," + this.id_foto;
			}
		);
		frm.foto_cabecera.value = $("#usuario-album-cabecera").attr("id_foto");
		GENERAL.ajaxPost(frm
			,function(data) {
				var respuesta = GENERAL.ajaxDecode(data);
				if((typeof(respuesta.exito) != "undefined") && (respuesta.exito == "OK")) {
					if((typeof(respuesta.url) != "undefined") && (respuesta.url != "")) {
						window.setTimeout("USUARIOS.redirAlbum('"+respuesta.url+"')", 2000);
					} else {
						USUARIOS.perfil();
					}

				}
				else alert("Ha habido algún error al guardar el álbum");
			}
		);
	}
	else USUARIOS.login((frm.id_contenido.value > 0) ? "editar_album," + frm.id_contenido.value : "crear_album");
}

USUARIOS.redirAlbum = function(url) {
	window.location = url;
}

USUARIOS.albumBorrar = function(id_contenido,redireccion) {
	redireccion = ((typeof(redireccion) != "undefined") && (!redireccion)) ? false: true;
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		if(window.confirm("¿Estás seguro de borrar el álbum?")) {
			$.post(
				GENERAL.path + '/api/ajax.php',
				{adm_target: "fotografia", adm_accion: "album_borrar", id_contenido: id_contenido, id_tipo: 10}
				,function(data) {
					var respuesta = GENERAL.ajaxDecode(data);
					if((typeof(respuesta.exito) != "undefined") && (respuesta.exito == "OK")) {
						if(redireccion) {
							if((typeof(respuesta.url_galeria) != "undefined") && (respuesta.url_galeria != "")) window.location = respuesta.url_galeria; else window.location = GENERAL.path + "/";
						}
						else window.location.reload();
					}
					else alert("No se ha podido borrar el álbum");
				}
			);
		}
	}
	else USUARIOS.login();
}

USUARIOS.fotoInformacion = function() {
	var informacion = $("#foto-datos");
	if($(informacion).css("display") == "none") {
		$(".galeria_usuarios .foto_modifica").slideUp();
		$(informacion).slideDown();
		$("#foto-informacion").html("Ocultar información");
	}
	else {
		$(informacion).slideUp();
		$("#foto-informacion").html("Ver información");
	}
}

USUARIOS.fotoEditar = function(id_contenido,accion) {
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		$.post(
			GENERAL.path + '/api/ajax.php',
			{adm_target: "fotografia", adm_accion: "foto_editar", id_contenido: id_contenido, id_tipo: 6}
			,function(data) {
				var respuesta = GENERAL.ajaxDecode(data);
				if((typeof(respuesta.exito) != "undefined") && (respuesta.exito == "OK")) {
					$(".galeria_usuarios #foto-iconos").append('<p class="subefoto_opc_modifica"><a href="JavaScript:;" onClick="GENERAL.ver(\'.galeria_usuarios #foto-formulario\',\'.galeria_usuarios .foto_modifica\',{efecto:\'slide\'})" class="subefoto_txt_modifica editar">Editar foto</a></p>');
					$(".galeria_usuarios #foto-iconos").append('<p class="subefoto_opc_modifica"><a href="JavaScript:;" onClick="USUARIOS.fotoBorrar(' + id_contenido + ')" class="subefoto_txt_modifica borrar">Borrar foto</a></p>');
					var html =	'<form name="frmFotoEditar" method="POST" action="' + GENERAL.path + '/api/ajax.php">\n';
					html +=		'	<input type="hidden" name="adm_target" value="fotografia" />\n';
					html +=		'	<input type="hidden" name="adm_accion" value="foto_modificar" />\n';
					html +=		'	<input type="hidden" name="id_contenido" value="' + id_contenido + '" />\n';
					html +=		'	<input type="hidden" name="id_tipo" value="6" />\n';
					html +=		'	<input type="hidden" name="categoria" value="' + respuesta.id_seccion + '" />\n';
					html +=		'	<input type="hidden" name="file_foto" value="' + respuesta.file_foto + '" />\n';
					html +=		'	<div class="mod_form">\n';
					html +=		'		<div class="mform_conten_campo">\n';
					html +=		'			<div class="mform_margencampo"><h4 class="editafoto_titulo">Editar foto</h4></div>\n';
					html +=		'			<div class="mform_campo">\n';
					/* html +=		'				<label><span class="label">Categoría:</span></label>\n';
					html +=		'				<div class="clear"></div>\n';
					html +=		'				<select name="categoria" class="mform_input">\n';
					html +=		'				</select><div class="separa"></div>\n'; */
					html +=		'				<input type="text" name="titulo" class="mform_input"  label="Título" value="' + respuesta.titulo + '"><div class="separa"></div>\n';
					html +=		'				<div class="mform_cuadro"><div class="mform_cuadro_in"><span class="ubicacion">Ubicación: </span><a href="JavaScript:;" onClick="USUARIOS.ubicarFoto(\'#foto-formulario .mod_form\')" class="ubicacion">ubicar foto</a></div></div>\n';
					html +=		'				<input type="hidden" name="geolocalizacion" value="' + respuesta.geolocalizacion + '" /><div class="separa"></div>\n';
					html +=		'				<textarea name="texto" class="mform_input" label="Descripción">' + respuesta.texto + '</textarea><div class="separa"></div>\n';
					html +=		'				<input type="text" name="etiquetas" class="mform_input"  label="Palabras clave separadas por comas" value="' + respuesta.etiquetas + '"><div class="separa"></div>\n';
					html +=		'			</div>\n';
					html +=		'		</div><div class="clear"></div>\n';
					html +=		'	</div><div class="separa"></div>\n';
					html +=		'	<div class="dDBboton" style="width: 112px;"><div class="boton fondo_personalizado redondeado" onClick="USUARIOS.fotoModificar()">GUARDAR</div></div>\n';
					html +=		'	<div class="separa_registro"></div>\n';
					html +=		'</form>\n';
					if($("#foto-formulario").length == 1) {
						window.document.getElementById("foto-formulario").innerHTML = html;
						if(respuesta.geolocalizacion != "") USUARIOS.direccionFoto($("#foto-formulario a.ubicacion"),respuesta.geolocalizacion);
						if(accion == "editar") {
							GENERAL.ver(".galeria_usuarios #foto-formulario",".galeria_usuarios .foto_modifica");
							window.location = "#editar";
						}
					}
				}
			}
		);
	}
}

USUARIOS.fotoModificar = function() {
	var frm = window.document.frmFotoEditar;
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		if(USUARIOS.subirFotosCheckFoto("#foto-formulario")) {
			GENERAL.ajaxPost(frm
				,function(data) {
					var respuesta = GENERAL.ajaxDecode(data);
					if((typeof(respuesta.exito) != "undefined") && (respuesta.exito == "OK")) {
						alert('La foto ha sido modificada.');
						window.location.reload();
					}
					else alert("No se ha podido modificar la foto");
				}
			);
		}
	}
	else USUARIOS.login();
}

USUARIOS.fotoBorrar = function(id_contenido,redireccion) {
	redireccion = ((typeof(redireccion) != "undefined") && (!redireccion)) ? false: true;
	if((REGISTRO.xml != null) && ($("user",REGISTRO.xml).text() == USUARIOS.user)) {
		if(window.confirm("¿Estás seguro de borrar la foto?")) {
			$.post(
				GENERAL.path + '/api/ajax.php',
				{adm_target: "fotografia", adm_accion: "foto_borrar", id_contenido: id_contenido, id_tipo: 6}
				,function(data) {
					var respuesta = GENERAL.ajaxDecode(data);
					if((typeof(respuesta.exito) != "undefined") && (respuesta.exito == "OK")) {
						alert('La foto ha sido borrada.');
						if(redireccion) {
							if((typeof(respuesta.url_galeria) != "undefined") && (respuesta.url_galeria != "")) window.location = respuesta.url_galeria; else window.location = GENERAL.path + "/";
						}
						else window.location.reload();
					}
					else alert("No se ha podido borrar la foto");
				}
			);
		}
	}
	else USUARIOS.login();
}

USUARIOS.subirFotosCheckFoto = function(fotos) {
	var exito = true;
	$(fotos).each(
		function() {
			var titulo = $("input[name*='titulo']",this);
			var categoria = $("select[name*='categoria']",this);
			var descripcion = $("textarea[name*='texto']",this);
			var etiquetas = $("input[name*='etiquetas']",this);
			if(($(titulo).length == 1) && ($(titulo).val() == "")) {
				alert('No has insertado el título de la foto');
				$(titulo).get(0).focus();
				exito = false;
				return false;
			}
			// Control de caracteres extranios en titulo, descripcion y etiquetas
			var expReg = /[^A-Za-z0-9ñÑáéíóúÁÉÍÓÚüÜ_\s'\\\¿\?\¡\>\.\:\,\!\<\(\)\@\#\$\€\%\&\\\/\*\=\+\-\{\}\[\]\ç\º\ª]/i;
			if(expReg.test($(titulo).val())) {
				alert('El título ' + $(titulo).val() + ' contiene caracteres extraños. Por favor elimínalos para subir la foto correctamente');
				$(titulo).get(0).focus();
				exito = false;
				return false;
			}
			if(expReg.test($(descripcion).val())) {
				alert('La descripción ' + $(descripcion).val() + ' contiene caracteres extraños. Por favor elimínalos para subir la foto correctamente');
				$(descripcion).get(0).focus();
				exito = false;
				return false;
			}
			if(expReg.test($(etiquetas).val())) {
				alert('Las palabras clave ' + $(etiquetas).val() + ' contienen caracteres extraños. Por favor elimínalos para subir la foto correctamente');
				$(etiquetas).get(0).focus();
				exito = false;
				return false;
			}

			if(($(categoria).length == 1) && ($(categoria).get(0).selectedIndex == 0)) {
				alert('No has seleccionado la categoría de la foto');
				$(categoria).get(0).focus();
				exito = false;
				return false;
			}
		}
	);
	return exito;
}

USUARIOS.Categorias = function(select,id_seccion) {
	if($(select).length > 0) {
		$.post(GENERAL.path + "/api/ajax.php"
			,{adm_target: "general", adm_accion: "secciones"}
			,function(data) {
				var respuesta = GENERAL.ajaxDecode(data);
				var secciones = $.isArray(respuesta) ? respuesta : [respuesta];
				$(select).each(
					function() {
						var select = this;
						$(secciones).each(
							function() {
								if(!isNaN(this.id_seccion) && (this.usuario == "1")) {
									if(this.id_padre == "0") {
										var selected = ((id_seccion != "") && (id_seccion == this.id_seccion)) ? "defauldSelected" : null;
										var opcion = new Option(this.nombre,this.id_seccion,selected);
										select.options[select.length] = opcion;
										var id_categoria = this.id_seccion;
										var categoria = this.nombre;
										$(secciones).each(
											function() {
												if(this.id_padre == id_categoria) {
													var selected = ((id_seccion != "") && (id_seccion == this.id_seccion)) ? "defauldSelected" : null;
													var opcion = new Option(categoria + " -> " + this.nombre,this.id_seccion,selected);
													select.options[select.length] = opcion;
												}
											}
										);
									}
								}
							}
						);
					}
				);
			}
		);
	}
}

USUARIOS.ubicarFoto = function(indice) {
	var foto = isNaN(indice) ? $(indice) : $("div.bloque_foto[indice=" + indice + "]","#usuario-contenido");
	var geolocalizacion = isNaN(indice) ? $("input[name='geolocalizacion']",foto) : $("input[name='fotos[" + indice + "][geolocalizacion]']",foto);
	$(".mapa_ubicacion").remove();
	if($(foto).length == 1) {
		// Contruimos la maquetación
		$(foto).css("position","relative");
		map_obj = $('<div class="mapa_ubicacion"><div class="mapa_ubicacion_in"><div id="mapa_ubicacion_googlemap"></div><div id="mapa_ubicacion_acciones"></div></div></div>');
		ancho = $(foto).width();
		alto = $(foto).height();
		var html =	'<div class="label">Arrastra el marcador a la ubicación de la foto y pincha en \'Ubicar\'</div>\n';
		html +=		'<div class="form">\n';
		html +=		'	<div id="mapa_ubicacion_cerrar" class="boton fondo_personalizado redondeado" style="width: 40px;">Cerrar</div>\n';
		html +=		'	<div id="mapa_ubicacion_guardar" class="boton fondo_personalizado redondeado" style="width: 40px;">Ubicar</div>\n';
		html +=		'	<div id="mapa_ubicacion_centrarmarcador" class="boton fondo_personalizado redondeado" style="width: 110px;">Centrar marcador</div>\n';
		html +=		'	<div id="mapa_ubicacion_buscar" class="boton fondo_personalizado redondeado" style="width: 45px;">Buscar</div>\n';
		html +=		'	<input name="direccion" type="text" size="10" value="" id="mapa_ubicacion_direccion"/>\n';
		html +=		'</div>';
		$("#mapa_ubicacion_googlemap",map_obj).width(ancho);
		$("#mapa_ubicacion_googlemap",map_obj).height(alto);
		$("#mapa_ubicacion_acciones",map_obj).width(ancho - 22);
		$("#mapa_ubicacion_acciones",map_obj).html(html);

		// Iniciamos el mapa de google
		posicion = MAPAS.posicion_inicial;
		if($(geolocalizacion).val() != "") {
			coord_obj = MAPAS.coordenadas($(geolocalizacion).val());
			posicion.latitud = coord_obj.latitud;
			posicion.longitud = coord_obj.longitud;
		}
		$('embed, object, select',foto).css({ 'visibility' : 'hidden' });
		$(foto).append($(map_obj));
		MAQUETACION.elementos($(map_obj));
		var mapa = new MAPAS.mapa($("#mapa_ubicacion_googlemap",map_obj),posicion);
		var marcador = mapa.marcador({arrastrable: true});

		// Acciones
		$("#mapa_ubicacion_buscar",map_obj).click(
			function () {
				mapa.buscar($("#mapa_ubicacion_direccion",map_obj).val(),function() {marcador.posicionar()});
			}
		);
		$("#mapa_ubicacion_centrarmarcador",map_obj).click(function () {marcador.posicionar()});
		$("#mapa_ubicacion_guardar",map_obj).click(
			function () {
				marcador.posicion(
					function(response) {
						if(response) {
							$(geolocalizacion).val(response.latitud + "," + response.longitud);
							$("a.ubicacion",foto).html((response.direccion != "") ? response.direccion : "Ubicada");
							mapa = null;
							marcador = null;
							$("#mapa_ubicacion_cerrar").trigger("click");
							$(".mapa_ubicacion").remove();
							MAPAS.unload();
						}
					}
				);
			}
		);
		$("#mapa_ubicacion_cerrar",map_obj).click(
			function () {
				$(map_obj).remove();
				$('embed, object, select',foto).css({ 'visibility' : 'visible' });
			}
		);
	}
}

USUARIOS.direccionFoto = function(contenedor,coordenadas) {
	if(($(contenedor).length == 1) && (posicion = MAPAS.coordenadas(coordenadas))) {
		MAPAS.direccion(posicion,
			function(response) {
				if(response != "") $(contenedor).html(response);
			}
		);
	}
}
