function todayGalery(){

// INI: Public Scope
    var _public = {
        canvas      : $('#clipping_content'),
        height      : 445,
        width       : 552,
        type        : null,
		esquema		: null,
		prev		: null,
		data		: {},

        interactive    : {
            titleAnchor   : {
                image    : $('div.vermas a'),
                video    : $('div.vermas_video a')
            },
            prevAnchor    : $('.anterior a'),
            nextAnchor    : $('.siguiente a')
        },

        images        : {
            titlePlus    : '/media/img/common/ico_plus.gif',
            titleMinus   : '/media/img/common/ico_minus.gif'
        },

        sIFRConfig    : {
            swfResourcePath   : '/media/swf/sifr/',
            swfTypographie    : {
                demi        : 'avantagardeDemi',
                tic         : 'ticAvantgarde',
                thin        : 'thin'
            }
        },

        xmlMap        : {
            image : {
                fecha : $('div.fecha, h3.fecha'),
                media : $('div.imgPropuesta img'),
                title : $('h4.tit_propuesta span.titulopropuesta'),
                desc  : $('div.desc_propuesta p'),
                autor : $('h3.autor_propuesta'),
                inspirador  : $('.inspirador a:first'),
                valoracion  : $('.estrellas'),
                comentarios : $('.total_comentarios span'),
                licencia    : $('.propuestaCR a img'),
                linkLicencia: $('.propuestaCR a'),
                autorContent: $('.propuestaCR p'),
				hoyLink		: $('.hoy a'),
				commentLink : $('.total_comentarios a')
            },
            video : {
                fecha : $('div.fecha'),
                media : $('div.swfPropuesta'),
				title : $('div.tit_propuesta_video span.titulopropuesta'),
                desc  : $('div.desc_propuesta_video p'),
                autor : $('h3.autor_propuesta'),
                inspirador  : $('.inspirador a:first'),
                valoracion  : $('.estrellas'),
                comentarios : $('.total_comentarios span'),
                licencia    : $('.propuestaCR img'),
                linkLicencia: $('.propuestaCR a'),
                autorContent: $('.propuestaCR p'),
				hoyLink		: $('.hoy a'),
				commentLink : $('.total_comentarios a')
            }
        },

		eventOn	: false,

        initHome    : function() {
			var i = document.createElement('img');
			i.src='/media/img/common/blank.gif';
			document.body.appendChild(i);

			var d = document.createElement('div');
			d.id = 'navigatorLoader'
			$(d).css({
				zIndex	: '100',
				position:'absolute',
				top: '300px',
				left: (($(window).width()/2) - 210) + 'px',
				display:'none'

			});
			d.innerHTML = '<img src="/media/img/common/loading.gif" >';

			document.body.appendChild(d)

			$(window).resize(function(){
				$(d).css({
					position:'absolute',
					top: '300px',
					left: (($(window).width()/2) - 210) + 'px'

				})
			})


			setTypeAndScheme();
			initSiFR();
			setStylesToProposal();
            setSIFRPropuesta();
			initProposalNavigator('image');
			initProposalNavigator('video');
            setHomeHighlights();
        },

        initArchivo    : function() {
            initSiFR();
            setDatesList();
        },
		initAdaptSiFR : setAdaptSiFR



    };
// END: Public Scope
	function setData(data)
	{
		_public.data = data;
	}

	function getData()
	{
		return _public.data;
	}

	function setPrev(prev)
	{
		_public.prev = prev;
	}

	function getPrev()
	{
		return _public.prev;
	}

    function initSiFR() {
        $.sifr( { path: _public.sIFRConfig.swfResourcePath, save: true });
    }

    function setHomeHighlights() {
        try
        {
			$('.fecha_last').each( function() {
				$(this).sifr({path: _public.sIFRConfig.swfResourcePath, font: _public.sIFRConfig.swfTypographie.demi, color: esquemas[ $(this).parent()[0].className.split('-')[1] ].tFgColor});
			});
        }
        catch (e) {}
    }

	function setTypeAndScheme()
	{
		_public.esquema = getEsquema();
		_public.type    = getTypeProposal();
	}

	function getEsquema()
	{
		return _public.canvas[0].className;
	}

	function getTypeProposal()
	{
		return _public.canvas.attr('title');
	}

	function setStylesToProposal()
	{
		//try {
			// Apply background colors in title
		if (esquemas[_public.esquema]) {
			if (_public.type == 'image')
				$('div.' + _public.esquema + ' .tit_propuesta').css('background', esquemas[_public.esquema].dBgColor)
			else
				$('div.' + _public.esquema + ' .tit_propuesta_video').css('background', esquemas[_public.esquema].dBgColor)

			// Hide descripction
			_public.xmlMap[_public.type].desc.parent().hide();

			// Apply background to auto
			$('div.' + _public.esquema + ' .autor_propuesta').css('background', esquemas[_public.esquema].aBgColor);
		}
		//}catch(e){

		//}
	}

    function setSIFRPropuesta()
    {
        try {
			// Apply sIFR to date
			_public.xmlMap[_public.type].fecha
                .sifr({path: _public.sIFRConfig.swfResourcePath, font: _public.sIFRConfig.swfTypographie.demi/*, color: esquemas[_public.esquema].tFgColor*/});

            // Apply sIFR to autor
			_public.xmlMap[_public.type].autor
                .sifr({path: _public.sIFRConfig.swfResourcePath, font: _public.sIFRConfig.swfTypographie.tic, color:'#ffffff'})
        } catch(e) { }
    }
	function setAdaptSiFR()
    {
        try {
			// Apply sIFR to date
			$('h3.fecha').sifr({path: _public.sIFRConfig.swfResourcePath, font: _public.sIFRConfig.swfTypographie.demi/*, color: esquemas[_public.esquema].tFgColor*/});
			
			 // Apply sIFR to autor
		$('h4.autor_propuesta').sifr({path: _public.sIFRConfig.swfResourcePath, font: _public.sIFRConfig.swfTypographie.tic, color:'#ffffff'})
        } catch(e) { }
    }

	function initProposalNavigator(type)
	{
		_public.interactive.titleAnchor[type].click(function()
		{
			_public.xmlMap[type].desc.parent().toggle()

			if ( _public.xmlMap[type].desc.parent()[0].style.display == 'none' )
			{
				_public.interactive.titleAnchor[type].find('img').attr('src',_public.images.titlePlus);
				if ( _public.type == 'video' )
				{
					$(this).parents('div.tit_propuesta_video').css({
						top:'',
						bottom:'58px'
					});
				}
			}
			else
			{
				_public.interactive.titleAnchor[type].find('img').attr('src',_public.images.titleMinus);
				if ( _public.type == 'video' )
				{
					$(this).parents('div.tit_propuesta_video').css('top','117px');
				}
			}
			return false;
		});
	}

    function setDatesList() {
        try
        {
            $('.fecha_last a').each( function() {
                $(this)
                    .css('font-size','25px')
                    .sifr({path: _public.sIFRConfig.swfResourcePath, font: _public.sIFRConfig.swfTypographie.demi, color: esquemas[this.className.split('-')[1]].tFgColor});
            });
        }
        catch (e) {}
    }

// INI: Private Scope
    function _load(prev,_anchor)
    {
		var fecha = $(_anchor).parents('.propuesta_dia').find('.fecha').text().split(".");
        var daysAdded = prev ? "-1" : "1";

        $.ajax(
		{
            url     : _GLOBAL.context+'today.xml',
            datatype: 'xml',
            data    : 'day='+fecha[0]+'&month='+fecha[1]+'&year=20'+fecha[2]+'&daysAdded='+daysAdded,
            success : function(xml)
            {
                var type = $('data',xml).attr('type');

                if ( type != 'image' && type != 'video' && type != 'audio' ) return;

                // INI: Recuperamos datos del xml
				var data    = {};
                data.type    = type;
                data.id        = $('id',xml).text();
                data.autor    = $('autor',xml).text();
                data.fecha    = $('fecha',xml).text();
                data.title    = $('title',xml).text();
                data.desc    = $('desc',xml).text();
                data.media    = $('media',xml).text();
                data.hoyImage= $('hoyImage',xml).text();
				data.esquemaId  = $('esquemaId',xml).text()
                data.inspirador    = $('inspirador',xml).text();
                data.existNext    = $('next',xml).text();
                data.existPrev    = $('prev',xml).text();
                data.valoracion    = parseInt($('valoracion',xml).text());
                data.comentarios= parseInt($('comentarios',xml).text());
                data.autorContent= $('autorContent',xml).text();
                data.autorContentLink = $('autorContentLink',xml).text();
                data.licencia = $('licencia',xml).text();
                data.linkLicencia = $('licenciaLink',xml).text();
				setData(data);

				_public.type=data.type;
				// Reposicionamos titulo si no esta en su posicion inicial
				if ( _public.interactive.titleAnchor[data.type].find('img').attr('src') == '/media/img/common/ico_minus.gif' )
					_public.interactive.titleAnchor[data.type].click();

				// Aplicamos animacion de cambio de propuesta
                _public.canvas.animate(
				{
                    left    : prev ? '-='+(_public.width + 50) : '+=' + (_public.width + 50),
                    opacity : 0
                },1000,function(){
					$('#navigatorLoader').show();
					if ( getData().type == 'image')
					{
						_public.xmlMap['image'].media[0].src = '/media/img/common/blank.gif';
						var _i = document.createElement('img');
						_i.src = _GLOBAL.context+'image/' + getData().media;

						(function() {
							if (!_i.complete)
							{
								setTimeout(arguments.callee,1);
							}
							else {
								load();
							}

						})();
					}
					else  load();

				});

            }
        });
    }

    function load(){
        try
        {

			$('#navigatorLoader').hide();

			_public.canvas.find('.hoy img').attr('src',_GLOBAL.context+'image/'+getData().hoyImage);
			// Cambiamos el titulo de la propuesta
			_public.canvas.attr('title',getData().type);
			// Indicamos el nuevo esquema asociado a la propuesta

			_public.canvas.attr('class','esquema_'+getData().esquemaId);
			// Indicamos el id de la nueva propuesta
			_public.canvas.parents('.propuesta_dia').attr('id','propuesta_' + getData().id)

			// Aplicamos nuevos valores a la propuesta
			_public.xmlMap[getData().type].fecha.text(getData().fecha);				// Fecha
			_public.xmlMap[getData().type].title.text(getData().title.toUpperCase());	// Titulo
			_public.xmlMap[getData().type].desc.parent().hide();
			_public.xmlMap[getData().type].desc.text(getData().desc);					// Descripcion
			_public.xmlMap[getData().type].autor.text('Por ' + getData().autor);		// Autor
			_public.xmlMap[getData().type].comentarios.text(getData().comentarios);	// Numero de comentario
			if ( getData().licencia != "" )										// Licencia
			{
				$('.propuestaCR a').show();
				_public.xmlMap[getData().type].licencia.attr('src','/media/img/licenses/' + getData().licencia + '.gif');
				_public.xmlMap[getData().type].licencia.attr('alt',getData().licencia);
				_public.xmlMap[getData().type].linkLicencia
					.attr('href',getData().linkLicencia)
					.unbind('click');

				if ( getData().linkLicencia.indexOf('http') == -1 )
				{
					_public.xmlMap[getData().type].linkLicencia
						.bind('click',function() {
							return false;
						});
				}

			}
			else $('.propuestaCR a').hide();

			if ( getData().inspirador == "" )									// Contenido inspirador
			{
				$('.inspirador').hide()
			}
			else
			{
				$('.inspirador a').attr(
				{
					href	: getData().inspirador,
					target	: '_blank'
				})
				$('.inspirador').show()
			}

			// Reseteamos rating
			$('ul.estrellas_propuesta').removeClass('votado');
			$('ul.estrellas_propuesta li a')
				.removeClass('select')
				.removeClass('Pselect')
				.removeClass('Oselect')
			$('ul.estrellas_propuesta li a').slice(0, getData().valoracion).addClass('select')
			$('img.tit_valoracion').attr('src','/media/img/textos/txt_valoracion.gif');

			// Aplicamos rating
			if ( !isNaN(getData().valoracion) )
			{
				_public.canvas.find('ul.estrellas_propuesta li a').removeClass('Pselect');
				for(i=0;i<getData().valoracion;i++)
				{
					$( $('ul.estrellas_propuesta li a').get(i) ).addClass('Pselect');
				}
			}

			// Generamos el nuevo link de la propuesta cargada y lo aplicamos
			var fecha = getData().fecha.split('.');
			_public.xmlMap[getData().type].commentLink.attr('href',_GLOBAL.context+'20'+fecha[2]+'/'+fecha[1]+'/'+fecha[0]+'')
			_public.xmlMap[getData().type].hoyLink.attr('href',_GLOBAL.context+'20'+fecha[2]+'/'+fecha[1]+'/'+fecha[0])
			$('div.imgPropuesta a').attr('href',_GLOBAL.context+'20'+fecha[2]+'/'+fecha[1]+'/'+fecha[0])


			// Configuracion especifica de propuestas de video
			if ( getData().type == 'video')
			{
				// Escodenmos capa de imagen y mostramos capa de video
				$('#fondoImagen').hide();
				$('#fondoVideo').show();

				// Mostramos o no el autor del video

				if (getData().autorContent != "")
				{
					_public.xmlMap[getData().type].autorContent.html('video by <a target="_blank" href="'+getData().autorContentLink+'">' + getData().autorContent + '</a>');
					_public.xmlMap[getData().type].autorContent.show();
				}
				else
				{
					_public.xmlMap[getData().type].autorContent.html('');
				}

				// Creamos layer para el swf del video
				_public.xmlMap[getData().type].media.html('<div id="id_swfPropuesta"></div>');

				// Cargamos el nuevo video
				var flashvars = {};
				var params = {wmode: "transparent"};
				var attributes = {wmode: "transparent"};
				swfobject.embedSWF(getData().media+'&rel=0', "id_swfPropuesta", "370", "301", "9.0.0","false", flashvars, params, attributes);

				_public.xmlMap[getData().type].desc.parent()[0].className='desc_propuesta_video';
				_public.xmlMap[getData().type].desc.parent().addClass('descripcion-esquema_'+getData().esquemaId);
			}
			// Configuracion especifica de propuestas de imagen
			else
			{
				// Ponemos imagen temporal transparente
				//_public.xmlMap[getData().type].media.attr('src', '/media/img/common/blank.gif/');
				// Escodenmos capa de video y mostramos capa de imagen
				$('#fondoImagen').show();
				$('#fondoVideo').hide();

				// Mostramos o no el autor de la imagen
				if (getData().autorContent != "")
				{
					_public.xmlMap[getData().type].autorContent.html('photo by <a target="_blank" href="'+getData().autorContentLink+'">' + getData().autorContent + '</a>');
					_public.xmlMap[getData().type].autorContent.show();
				}
				else
				{
					_public.xmlMap[getData().type].autorContent.html('');
				}

				// Aplicamos atributos a la imagen de la propuesta
				_public.xmlMap[getData().type].media.attr({
					src		: _GLOBAL.context+'image/' + getData().media,
					title	: getData().title.toUpperCase(),
					alt		: getData().title.toUpperCase()
				});
			}

			// INI: Reseteamos elementos de interaccion
				// Boton de ver o no la descripcion
			_public.interactive.titleAnchor[getData().type].find('img').attr('src',_public.images.titlePlus)
				// Mostramos o no descripcion
			if ( getData().desc == "" ) {
				_public.interactive.titleAnchor[getData().type].parent().hide()
			}
			else {
				_public.interactive.titleAnchor[getData().type].parent().show()
			}
			//	END: Reseteamos elementos de interaccion

			// Aplicamos sIFR a la propuesta
			setSIFRPropuesta(getData().type);

			// Recuperamos posicion inicial(x) del contendor de la propuesta
			var left = parseInt(_public.canvas.css('left'));

			// Aplicamos animacion para mostrar la nueva propuesta configurada
			_public.canvas
				.css({
					left    : getPrev() ? (left + ((_public.width*2) + 100)) : (left - ((_public.width*2) + 100))
				})
				.animate({
					left    : getPrev() ? '-='+(_public.width + 50) : '+='+(_public.width + 50),
					opacity : 1
				},1000,function() {
					_public.canvas.animate({opacity:1},function(){
						if (getData().existNext == "true")
							$('div.siguiente a').show()
						else
							$('div.siguiente a').hide()

						if (getData().existPrev == "true")
							$('div.anterior a').show()
						else
							$('div.anterior a').hide()

						_public.eventOn = false;
					});
				});


        }
        catch (e)
        {
            //throw e;
        };
    }

// END: Private Scope

// INI: Constructor
    (function(){
        _public.interactive.prevAnchor.click(function()
        {
			if (!_public.eventOn)
			{
				setPrev(true);
				_load(getPrev(),this);
				_public.eventOn = true;
			}
			return false;
        });
        _public.interactive.nextAnchor.click(function()
        {
			if (!_public.eventOn)
			{
				setPrev(false);
				_load(getPrev(),this);
				_public.eventOn = true;
			}
			return false;
        });
    })();
// END: Constructor

    return _public;
}