/*
	---------------------------------------------------------------------------
	Empresa			: Proconsi S.L.
	Fecha creación	: 01-03-2010
	Fecha ult.modif.: 01-03-2010 - Virginia
	Módulo			: Funciones para la gestión del multiidioma
	----------------------------------------------------------------------------
    Historial de modificaciones :
	----------------------------------------------------------------------------
*/
var m_idDiv = '';
var m_nIdIdiomaSeleccionado = -1;
var m_nPagina = 1;
var m_nIdIdioma = 0;
///
/// Cambia la cookie del idioma en la web
///
function cambiarIdioma( nombreCookie , idIdioma )
{
	// Parseamos url para quedarnos con lo que sobra de 'http://www.posadas.XXX/'
/*
	var strHref = window.location.href;
	var url = '';
	partesUrl = strHref.split( '/' );
	//
	var i = 0;
	for( i=3; i<partesUrl.length; i++ ) 
		url+= partesUrl[i];
	//
	createCookie( nombreCookie , idIdioma , 1 ); // cookie que dura 1 hora
	location.href = url;
*/
	createCookie( nombreCookie , idIdioma , 1 ); // cookie que dura 1 hora
	location.href = window.location.href;
}
///
/// Presenta la página de configuración
///
function PresentaPaginaConfiguracionMULTIIDIOMA( idDiv )
{
	m_idDiv = idDiv;
	var cParameters = 'modulo=multiidioma' + '&presentaConfig=1';
	AjaxRequest( '../Modulos/configurador/configurador.php' , cParameters , GetModuleMultiidioma_Configuracion );
}
///
/// CallBack de Ajax de almacenamiento de la configuración
///
function GetConfiguracionMultiidioma( xmlhttp )
{
	// Debemos revisar el parámetro de idiomas y ajustar el nº de tuplas en la BBDD
	var cParameters = '';
	AjaxRequest( '../Modulos/multiidioma/ajustaIdiomas.php' , cParameters , CallBackGetConfiguracionMultiidioma );
}
///
/// Presenta la página de idiomas
///
function PresentaIdiomas( idDiv )
{
	m_idDiv = idDiv;
	AjaxRequest( '../Modulos/multiidioma/multiidioma.php' , '' , GetModuleIdiomas );
}
///
/// Deselecciona el enlace seleccionado si lo hubiera
///
function DeseleccionarIdioma()
{
	if( m_nIdIdiomaSeleccionado >= 0 )
	{
		var oIdioma = document.getElementById( "Idioma" + m_nIdIdiomaSeleccionado ); 
		if( oIdioma )
			oIdioma.className = 'tr' + ( m_nIdIdiomaSeleccionado % 2 == 0 ? '1' : '2' );
	}
}
///
/// Pinta el idioma clickado
///
function ShowIdioma( idIdioma )
{
	m_idDiv = 'formularioAlta';
	DeseleccionarIdioma();
	oIdioma = document.getElementById( "Idioma" + idIdioma ); 
	if( oIdioma )
		oIdioma.className = 'trSelect';
	m_nIdIdiomaSeleccionado = idIdioma;
	//
	var cParameters = 'idIdioma=' + idIdioma;
	AjaxRequest( '../Modulos/multiidioma/detallemultiidioma.php' , cParameters , GetDetalleIidioma );
}
///
/// Actualiza los valores del idioma
///
function GrabarIdioma()
{
	//
	// Obtener los datos del idioma
	var nIdIdioma = document.getElementById( 'Identificador' ).value;
	var cDescripcion = document.getElementById( 'Descripcion' ).value;
	var cClaseCSS = document.getElementById( 'ClaseCSS' ).value;
	var nIdIdiomaGoogle = document.getElementById( 'IdIdiomaGoogle' ).value;
	var nActivo = document.getElementById( 'Activo' ).checked;
	//
	if( nActivo == true )	
		nActivo = 1;
	else						
		nActivo = 0;
	//
	if( cDescripcion == '' )
	{
		alert( 'El idioma debe tener una descripción asignada' );
		document.getElementById( 'Descripcion' ).focus();
		return;
	}
	var cParameters = 'IdIdioma=' + nIdIdioma;
	cParameters += '&Descripcion=' + urlEncode( cDescripcion );
	cParameters += '&ClaseCSS=' + urlEncode( cClaseCSS );
	cParameters += '&IdIdiomaGoogle=' + nIdIdiomaGoogle;
	cParameters += '&Activo=' + nActivo;
	AjaxRequest( '../Modulos/multiidioma/actualizarIdioma.php' , cParameters , CallBackActualizarIdioma );
}
///
/// CallBack de Ajax de GetConfiguracionGaleria()
///
function CallBackGetConfiguracionMultiidioma( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
	{
		document.getElementById( 'updateConfigOK' ).style.display = "block";
		document.getElementById( 'cuerpocentral' ).innerHTML = eval( "PresentaPaginaConfiguracionMULTIIDIOMA('cuerpocentral')" );
	}
	else
		document.getElementById( 'updateConfigOK' ).style.display = "none";
}
///
/// CallBack de Ajax de petición de configuración
///
function GetModuleMultiidioma_Configuracion( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
	{
		document.getElementById( 'cuerpocentral' ).innerHTML = xmlhttp.responseText;
		document.getElementById( "icono" ).className = 'iconoMultiidiomaConfig';
	}
}
///
/// CallBack de Ajax de petición de la galería
///
function GetModuleIdiomas( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
	{
		document.getElementById( m_idDiv ).innerHTML = xmlhttp.responseText;  
		document.getElementById( "icono" ).className = 'iconoIdiomas';
		document.getElementById( "titular" ).innerHTML = 'Detalle de idiomas';
	}
}
///
/// CallBack de Ajax de ShowIdioma()
///
function GetDetalleIidioma( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
		document.getElementById( m_idDiv ).innerHTML = xmlhttp.responseText;  
}
///
/// CallBack de Ajax de GrabarIdioma()
///
function CallBackActualizarIdioma( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
	{
		if( xmlhttp.responseText.substr( 0 , 2 ) == 'OK' )
		{
			// Recargar la lista de enlaces en el panel de la lista
			m_nIdIdiomaSeleccionado = -1;
			PresentaIdiomas( 'cuerpocentral' );
		}
		else
			alert( 'Error actualizando idiomas. ' + xmlhttp.responseText );
	}
}
///
/// Presentación de las traducciones de la web
///
function PresentaTraducciones( nPagina , idDiv , idIdioma )
{
	m_idDiv = idDiv;
	m_nPagina = nPagina;
	m_nIdIdioma = idIdioma;
	var cParameters = 'idIdioma=' + idIdioma + '&pagina=' + nPagina;
	AjaxRequest( '../Modulos/multiidioma/traducciones.php' , cParameters , CallBackTraducciones );	
}
///
/// CallBack de Ajax de petición de la traducción
///
function CallBackTraducciones( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
	{
		document.getElementById( 'cuerpocentral' ).innerHTML = xmlhttp.responseText;  
		document.getElementById( "icono" ).className = 'iconoIdiomas';
	}
}
///
/// Recarga la página de traducciones según el idioma seleccionado
///
function cambiaIdiomaTraduccion()
{
	var nIdIdioma = document.getElementById( 'idiomaTraduccion' ).value;
	PresentaTraducciones( m_nPagina , m_idDiv , nIdIdioma );
}
///
/// Presenta el detalle de una traducción
///
function ShowTraduccion( nIdTraduccion )
{
	var cParameters = 'idTraduccion=' + nIdTraduccion;
	AjaxRequest( '../Modulos/multiidioma/detalletraduccion.php' , cParameters , CallBackDetalleTraducciones );	
}
///
/// CallBack de Ajax del detalle de las traducciones
///
function CallBackDetalleTraducciones( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
	{
		document.getElementById( 'formularioAlta' ).innerHTML = xmlhttp.responseText;  
		document.getElementById( "icono" ).className = 'iconoIdiomas';
	}
}
///
/// Graba en la BBDD la traducción modificada
///
function GrabarTraduccion()
{
	var nIdTraduccion = document.getElementById( 'idTraduccion').value;
	var cTraduccion = document.getElementById( 'Traduccion').value;
	//
	var cParameters = 'idTraduccion=' + nIdTraduccion + '&traduccion=' + cTraduccion;
	AjaxRequest( '../Modulos/multiidioma/actualizartraduccion.php' , cParameters , CallBackGrabarTraduccion );	
}
///
/// CallBack de Ajax del grabado de las traducción
///
function CallBackGrabarTraduccion( xmlhttp )
{
	if( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
		PresentaTraducciones( m_nPagina , m_idDiv , m_nIdIdioma );	
}
