/* Global Variables */
var BASEURL, ADMINURL, COREURL, SITEURL, MEDIAURL, THEMEURL, THE_URL;
var nav_timeouts = {};


/* Cufon Replacements */
Cufon.replace('#nav > li > a', {fontFamily:'Futura', hover:true});
Cufon.replace('table.calendar th', {fontFamily:'Futura', hover:true});
Cufon.replace('.cufon_heading', {fontFamily:'Futura', hover:true});
Cufon.replace('body.sent-2012-home #menu_bg li', {fontFamily:'ChaletComprime-CologneSixty', hover:true});
Cufon.replace('body.sent-2012-home #home_tag_line', {fontFamily:'ChaletComprime-MilanSixty', hover:true});
Cufon.replace('body.sent-2012-home #home_tag_line strong', {fontFamily:'ChaletComprime-CologneEighty', hover:true});
Cufon.replace('body.sent-2012-home #home_tag_sub strong', {fontFamily:'ChaletComprime-CologneEighty', hover:true});


Cufon.replace('body.sent-2012-sub #menu_bg li', {fontFamily:'ChaletComprime-CologneSixty', hover:true});
Cufon.replace('body.sent-2012-sub #menu_below_title h1', {fontFamily:'ChaletComprime-CologneEighty', hover:true});
Cufon.replace('body.sent-2012-sub #sub_page_content_left #content_sp h1', {fontFamily:'ChaletComprime-CologneEighty', hover:true});
Cufon.replace('body.sent-2012-sub #sub_page_content_left #content_sp h2', {fontFamily:'ChaletComprime-MilanSixty', hover:true});


Cufon.replace('body.sent-2012-sub #sub_page_content_left_wide #content_sp h1', {fontFamily:'ChaletComprime-CologneEighty', hover:true});
Cufon.replace('body.sent-2012-sub #sub_page_content_left_wide #content_sp h2', {fontFamily:'ChaletComprime-MilanSixty', hover:true});

Cufon.replace('body.sent-2012-sub #sub_page_content_right #content_sp a', {fontFamily:'ChaletComprime-MilanSixty', hover:true});


Cufon.replace('body.sent-2012-sub-wide #menu_bg li', {fontFamily:'ChaletComprime-CologneSixty', hover:true});
Cufon.replace('body.sent-2012-sub-wide #menu_below #menu_below_title h1', {fontFamily:'ChaletComprime-CologneEighty', hover:true});
Cufon.replace('body.sent-2012-sub-wide #sub_page_content_left #content_sp h1', {fontFamily:'ChaletComprime-CologneEighty', hover:true});
Cufon.replace('body.sent-2012-sub-wide #sub_page_content_left #content_sp h2', {fontFamily:'ChaletComprime-MilanSixty', hover:true});
Cufon.replace('body.sent-2012-sub-wide #sub_page_content_right #content_sp a', {fontFamily:'ChaletComprime-MilanSixty', hover:true});

Cufon.replace('body.sent-2012-sub #sub_page_content_right #content_sp h1', {fontFamily:'ChaletComprime-CologneEighty', hover:true});
Cufon.replace('body.sent-2012-sub #sub_page_content_right #content_sp h2', {fontFamily:'ChaletComprime-MilanSixty', hover:true});


/* Common Functions */
function init_site(){
	// Add the browser type as a class to the <body> tag
	setBrowserClass();
	// Configure the navigation dropdowns
	init_nav_dropdowns();
	// Map the "current" class to the appropriate items in sidebar menus
	init_sidebar_menus();
	// Initialize Form Builder forms
	init_form_builder();
}

function init_nav_dropdowns(){
	// Show dropdowns on hover of the top level item
	$('#nav>li').hover(
		function(){
			for( var id in nav_timeouts ){
				clearTimeout( nav_timeouts[id] );
				$('#nav ul').hide();
			}
			var nav_id = $(this).attr('id');
			//clearTimeout( nav_timeouts[ nav_id ] );
			$(this).find('ul').show();
		},
		function(){
			var nav_id = $(this).attr('id');
			clearTimeout( nav_timeouts[ nav_id ] );
			var to = setTimeout("$('#nav #"+nav_id+"').find('ul').hide();", 250);
			nav_timeouts[ nav_id ] = to;
		}
	);
	
	// Style the "last" top level item differently
	$('#nav>li:last a').addClass('last');
	
	$('#nav li').each(function(i,elem){
		$(elem).attr('id', 'menu-item-'+i);
	});
	
	// Break longer dropdowns into multi-column layouts
	$('#nav>li').each(function(i,elem){
		var elem_id = $(elem).attr('id');
		var child_items = $(elem).find('li').length;
		if( child_items > 7 ){
			$(elem).find('ul').wrap('<div class="multi_column"></div>');
			var columns = Math.floor( child_items/7 );
			for( var c=0; c<columns; c++ ){
				$('#'+elem_id+' div.multi_column').append('<ul class="column_'+(c+1)+'"></ul>');
			}
			$('#'+elem_id+' ul li').each(function(n,li){
				if( n >= 7 ){
					var item_id = $(li).attr('id');
					var column = Math.floor(n/7);
					$('#'+item_id).remove();
					$(li).appendTo( $('#'+elem_id+' ul.column_'+column) );
				}
			});
			$('#'+elem_id+' div.multi_column').append('<div class="clear"><!-- --></div>');
		}
	});
}

function toggle_ministry_index(){
	if( !$('#ministry_index').is(':visible') ){
		$('#ministry_index_button').addClass('close');
		$('#ministry_index').slideDown(400);
	}else{
		$('#ministry_index_button').removeClass('close');
		$('#ministry_index').slideUp(400);
	}
}

function init_sidebar_menus(){
	$('#subnav li').each(function(i,elem){
		var href = $(elem).children('a').attr('href');
		if( href == THE_URL ){
			$(elem).addClass('current');
			$(elem).parentsUntil('#subnav','li').addClass('current');
		}
	});
}

function init_form_builder(){
	$(".form_builder .formfield.name .name_group").each(function() {
		var count = $(this).children(".subfield").size();
		
		$(this).parents(".formfield").addClass("has"+count);
	});
	
	$(".form_builder .formfield.address .address_group .subfield.medium").each(function() {
		var label = $(this).children("label").text().toLowerCase();
		
		$(this).addClass(label.replace("/","-"));
	});
	
	$(".form_builder input").live("focus", function() {
		if (!$(this).parents(".formfield").hasClass("focused")) {
			$(this).parents(".formfield").addClass("focused");
		}
	});
	$(".form_builder input").live("blur", function() {
		$(this).parents(".formfield").removeClass("focused");
	});
	
	$(".form_builder textarea").live("focus", function() {
		if (!$(this).parents(".formfield").hasClass("focused")) {
			$(this).parents(".formfield").addClass("focused");
		}
	});
	$(".form_builder textarea").live("blur", function() {
		$(this).parents(".formfield").removeClass("focused");
	});
	
	$(".form_builder select").live("focus", function() {
		if (!$(this).parents(".formfield").hasClass("focused")) {
			$(this).parents(".formfield").addClass("focused");
		}
	});
	$(".form_builder select").live("blur", function() {
		$(this).parents(".formfield").removeClass("focused");
	});
}

function minical_change_month( month ){
	$.ajax({
		type: 'POST',
		url: SITEURL+'/modules/Event/views/mini-calendar.php',
		data: 'month='+month,
		success: function( response, status, jqXHR ){
			$('#mini_calendar').html( response );
		}
	});
}
