jQuery.fn.focus_search = function(settings) {
	settings = jQuery.extend({
		value_default : 'Ingresa tu búsqueda'
	},settings);
	// Ingresamos en valor que indica la accion
	if(jQuery(this).attr('value') == '')
		jQuery(this).attr('value', settings.value_default);
	// Guardamos  el valor en una variable
	var search_value = jQuery(this).val();
	// Reponer valor
	if ( jQuery.trim(search_value) != '' ) {
		jQuery(this).data( 'value_default', search_value )
	} else {
		jQuery(this).data( 'value_default', value_default )
	}
	jQuery(this).blur(function() {
		if ( jQuery(this).val() == '' ) {
			jQuery(this).val( jQuery(this).data('value_default') )
		}
	}).focus(function() {
		jQuery(this).select();
		if ( jQuery(this).val() == jQuery(this).data('value_default') ) {
			jQuery(this).val('');
		}
	});
}

jQuery.fn.av_heights = function(){
	tallest = 0;
	jQuery(this).each(function(){
		if ( jQuery(this).height() > tallest ) { tallest = $(this).height(); };
	})
	if (navigator.userAgent.match(/MSIE 6/)) jQuery(this).css({'height': tallest});
	else jQuery(this).css({'min-height': tallest});
}

// Tooltip
jQuery.fn.tooltip = function(settings) {
	settings = jQuery.extend({
		attr : 'title'
	},settings);
	var s = settings;
	jQuery(this).mousemove(function(e){
		var mouseX = e.pageX;
		var mouseY = e.pageY;
		var text = '<p title="'+jQuery(this).attr(s.attr)+'">'+jQuery(this).attr(s.attr)+'</p><span class="indi"></span>'
		jQuery(this).attr(s.attr,'');
		if(!document.getElementById("toolTip")){
			toolTip = document.createElement('div');
			jQuery(toolTip).hide().attr('id','toolTip').html(text);
			document.getElementsByTagName('body')[0].appendChild(toolTip);
		} else {
			var toolTipHeight = jQuery(toolTip).height();
		}
		if(parseInt(document.documentElement.clientWidth) < parseInt(toolTip.offsetWidth + mouseX)){
			if(navigator.userAgent.match(/MSIE/)) jQuery(toolTip).css({ 'top' : (mouseY-toolTipHeight-40)+'px'});
			else jQuery(toolTip).css({ 'top' : (mouseY-toolTipHeight-30)+'px'});
			jQuery(toolTip).css({ left : (mouseX-(toolTip.offsetWidth-20))+'px'}).addClass('alt-position');
		} else {
			jQuery(toolTip).css({ 'top' : (mouseY-toolTipHeight-33)+'px' , 'left' : (mouseX-29)+'px' }).removeClass('alt-position');
		}
		jQuery(toolTip).css({ 'position' : 'absolute', 'z-index' : 1000 }).show();
	});
	jQuery(this).mouseout(function(){
		jQuery(this).attr(s.attr,jQuery('#toolTip p').attr('title'));
		jQuery('#toolTip').remove();
	});
}

jQuery.fn.tab_nav = function(settings){
	var settings = jQuery.extend({
		parent_class: null,
		active_element : 'this',
		effect : 'slide',
		speed: null,
		active_class: 'active',
		close_tab : 'close',
		return_act : false
	}, settings);
	var s = settings;
	return this.each(function() {
		var classname_tab = jQuery(this).attr('class');
		var classname_tab = classname_tab.replace(s.active_class,'');
		jQuery(this).click(function() {
			var active_id = this.hash.replace('#','');
			var display = jQuery('#'+active_id).css('display');
			if(display == 'block'){
				// show active
				if(s.effect == 'slide') jQuery('#'+active_id).slideUp(s.speed);
				else if(s.effect == 'fade') jQuery('#'+active_id).fadeOut(s.speed);
				else if(s.effect == 'show') jQuery('#'+active_id).hide();

				if(s.active_element != 'this')
					jQuery(this).parents(s.active_element).removeClass(s.active_class);
				else
					jQuery(this).removeClass(s.active_class);
				return s.return_act;
			} else {
				// show active
				if(s.effect == 'slide') jQuery('#'+active_id).slideDown(s.speed);
				else if(s.effect == 'fade') jQuery('#'+active_id).fadeIn(s.speed);
				else if(s.effect == 'show') jQuery('#'+active_id).show();

				jQuery('.'+classname_tab, '.'+s.parent_class).each(function(){
					if(s.active_element != 'this')
						jQuery(this).parents(s.parent_active).removeClass(s.active_class);
					else
						jQuery(this).removeClass(s.active_class);
					var id = this.hash.replace('#','');
					// hide elements inactive
					if(id!=active_id){
						if(s.effect == 'slide') jQuery('#'+id).slideUp(s.speed);
						else if(s.effect == 'fade') jQuery('#'+id).fadeOut(s.speed);
						else if(s.effect == 'show') jQuery('#'+id).hide();
					}
				});
				if(s.active_element != 'this')
					jQuery(this).parents(s.active_element).addClass(s.active_class);
				else
					jQuery(this).addClass(s.active_class);
				return s.return_act;
			}
		});
		jQuery('.'+s.close_tab).click(function(){
			var close_id = this.hash.replace('#','');
			if(s.effect == 'slide'){
				jQuery('#'+close_id).slideUp(s.speed, function(){
					if(s.active_element != 'this') jQuery('.'+classname_tab, '.'+s.parent_class).parents(s.parent_active).removeClass(s.active_class);
					else jQuery('.'+classname_tab, '.'+s.parent_class).removeClass(s.active_class);
				});
			} else if(s.effect == 'fade') {
				jQuery('#'+close_id).fadeOut(s.speed, function(){
					if(s.active_element != 'this') jQuery('.'+classname_tab, '.'+s.parent_class).parents(s.parent_active).removeClass(s.active_class);
					else jQuery('.'+classname_tab, '.'+s.parent_class).removeClass(s.active_class);
				});
			} else if(s.effect == 'show') {
				jQuery('#'+close_id).hide(0, function(){
					if(s.active_element != 'this') jQuery('.'+classname_tab, '.'+s.parent_class).parents(s.parent_active).removeClass(s.active_class);
					else jQuery('.'+classname_tab, '.'+s.parent_class).removeClass(s.active_class);
				});
			}
			return s.return_act;
		});
	});
}

jQuery.fn.toggleText = function(a, b) {
	return this.each(function() {
		var text = jQuery(this).text() == a ? b : a;
		jQuery(thi.tabs).text(text).attr('title',text);
	});
};

jQuery(document).ready(function($){
	// hide
	$('.hide').hide();

	// focus input search
	$('#s').focus_search({ value_default: 'Buscador' });

	// tooltip
	if($('.table')) $('.table td[title]').tooltip();

	// colapsables
	$('.tab-content').tab_nav({ parent_class: 'content-nav', effect : 'fade', speed: 'slow' });

	// Print
	$('.print').click(function(){ print(); });

	$('.footer-links, .footer-acreditacion, .footer-nav').av_heights();

	// Target
	$('.out, .pdf').attr('target','_blank');

	// Back history
	$('.previous-link').attr('href','javascript:history.go(-1)');

	// Wp caption
	$('#content').find('.wp-caption').each(function(){
		var $el = $(this),
			imgWidth = $el.find('img').width();
		$el.find('span.wp-caption-text').width( imgWidth );
	});

	// Toggle
	$('.toggle', '.event-item').click(function(){
		var remove_active = $(this).parents('.event-item').siblings('li.active');
		var remove_active_href = $('a', remove_active[0]).attr('href').split('#');
		$(this).parents('.event-item').siblings('li.active').removeClass('active');
		$('#'+remove_active_href[1]).slideUp('fast');
		$(this).parents('.event-item').toggleClass('active');
		$(this.hash).slideToggle('fast');
		return false;
	});

	// Toggle
	$('.toggle', '.faq-item').click(function(){
		var remove_active = $(this).parents('.faq-item').siblings('li.active');
		var remove_active_href = $('a', remove_active[0]).attr('href').split('#');
		$(this).parents('.faq-item').siblings('li.active').removeClass('active');
		$('#'+remove_active_href[1]).slideUp('fast');
		$(this).parents('.faq-item').toggleClass('active');
		$(this.hash).slideToggle('fast');
		return false;
	});
	
	// Detect hash to show item
	if(location.hash.match(/#event/) || location.hash.match(/#faq/)){
		$(location.hash).parents('.event-item').toggleClass('active');
		$(location.hash).parents('.faq-item').toggleClass('active');
		$(location.hash).show();
	}

	// Slider gallery
	$('#slider').easySlider({
		orientation: 'horizontal'
	});

	// Menu Sidebar
	if($.id('#menu_sidebar')){
		$('ul li ul','#menu_sidebar').hide();
		$('ul li.active ul','#menu_sidebar').show();
		$('ul li.active ul li ul','#menu_sidebar').hide();
		$('ul li.active ul li.active ul','#menu_sidebar').show();
		$('li a.level0','#menu_sidebar').click(function(){
			if($(this).parents('li').attr('class')!='active' && $(this).parents('li').attr('class')!='active parent'){
				var id = this.hash.replace('#','');
				$('li ul','#menu_sidebar').hide('fast');
				$('#'+id).show('fast');
				$('#menu_sidebar > ul > li.active').removeClass('active');
				$(this).parents('li').addClass('active');
			}
			return false;
		});
	}

	// colapsables
	$('.view-details').live('click', function(){
		var id = this.hash.replace('#','');
		$(this).toggleClass("colapse");
		$(this).parent().toggleClass("active");
		$(this).toggleText('Ver Más','Ocultar detalle');
		$("div","#"+id).toggle("normal");
		$("#"+id[1]).slideToggle("normal").toggleClass('active');
		return false;
	});

	// Selects
	$('.location-select').change( function(){
 		if ($(this).val()=="") return;
 		window.open($(this).val(),"_self","");
	});

	if(!navigator.userAgent.match(/MSIE 6/)){
		$('.over').mouseover(function(){ $(this).css('opacity','.85'); }).mouseout(function(){ $(this).css('opacity','1'); });
	}
	if(navigator.userAgent.match(/MSIE/)) {
		$('#searchsubmit').attr('value', '');
	}

	$('.lightbox').fancybox({
		'overlayColor' : '#000',
		'speedIn' : 600,
		'speedOut' : 200
	});

});

jQuery.extend({
	id : function(id) {
		var id = id.split("#");
		return document.getElementById(id[1])?true:false;
	}
});
