var count = 1;
var position = 0;
var num_slides = 3;
var btn_clicked = '';

/*
function hide_community(){
	alert("hiding!");
	$('#community-slide').hide();
}
*/

$(document).ready(function(){

	//num_slides = $('#slide-community > img').size();
	$('#masthead-slides').cycle({
		before: function(){
			$('#community-caption, #businesses-caption, #expand-caption').hide();
			$('#community-caption-link, #businesses-caption-link, #expand-caption-link').hide();
			$('#m-nav ul li a').removeClass('hilight');
			//$('#m-nav ul li a').fadeTo(400, 1.0);
			position++;
			if(position > num_slides) position = 1;
			$('.caption-'+position).hide();
			$('.button span').css('display', 'none');
			//$('span.caption-link-'+position).css('display', 'none');
			$('span.caption-link-'+position+' a').hide();
		},
		after: function(){
			if(position == 0) position = num_slides;
			$('li.slide-btn-'+position+' a').addClass('hilight');
			$('.caption-'+position).show();
			$('span.caption-link-'+position).css('display', 'block');
			$('span.caption-link-'+position+' a').show();
			//$('.slide-'+position).prev().hide();
			//$('li.slide-btn-'+position+' a').fadeTo(400, 0);
		},
		fx: 'fade',
		timeout: 5000,
		speed: 1000,
		pause: 1,
		height: '330px',
		sync: 1
	});
	
	$('span.caption-link-1').click(function(){
		window.location=$(this).find('a').attr('href');
		return false;
	});
	
	$('span.caption-link-2').click(function(){
		window.location=$(this).find('a').attr('href');
		return false;
	});
	
	$('span.caption-link-3').click(function(){
		window.location=$(this).find('a').attr('href');
		return false;
	});
	
	// make tape piece on blocks clickable (applies to home page and sidebar)
	$('#featured-property span, #featured-industry span').css('cursor', 'pointer');
	$('#featured-property span').click(function(){
		window.location=$('#featured-property').find('a').attr('href');
		return false;
	});
	$('#featured-industry span').click(function(){
		window.location=$('#featured-industry').find('a').attr('href');
		return false;
	});
	
	// fancybox
	$('a.gallery-image').fancybox({
		'titleShow' : true,
		'titlePosition' : 'over',
		'transitionIn' : 'elastic',
		'transitionOut' : 'elastic'
	});
	
	// pause/resume masthead slideshow
	$('.tape, .button, #btn-community, #btn-businesses, #btn-expand-relocate').mouseover(function(){
		$('#masthead-slides').cycle('pause');
	}).mouseout(function(){
		$('#masthead-slides').cycle('resume');
	});
	
	// testimonial block in the footer, resource block clickable
	$('#quote, .resource').click(function(){
		window.location=$(this).find('a').attr('href');
		return false;
	});
	
	// Controling the sub-nav borders	
	$('#sub-nav ul li').mouseover(function(){
		$(this).css('border-bottom', 'solid 1px #b3b491');
	}).mouseout(function(){
		$(this).css('border-bottom', 'solid 1px #d1d1ce');
		$('#sub-nav ul li.selected').prev().css('border-bottom', 'solid 1px #b3b491');
	});

	$('#sub-nav ul li').mouseover(function(){
		$(this).prev().css('border-bottom', 'solid 1px #b3b491');
	}).mouseout(function(){
		$(this).prev().css('border-bottom', 'solid 1px #d1d1ce');
		$(this).prev('.selected').css('border-bottom', 'solid 1px #b3b491');
	});

	$('#sub-nav ul li.selected').prev().css('border-bottom', 'solid 1px #b3b491');

	$('#sub-nav ul li.selected').mouseover(function(){
		$(this).css('border-bottom', 'solid 1px #b3b491');
	}).mouseout(function(){
		$(this).css('border-bottom', 'solid 1px #b3b491');
	});
	
	$('#sub-nav ul li.selected').mouseover(function(){
		$(this).prev().css('border-bottom', 'solid 1px #b3b491');
	}).mouseout(function(){
		$(this).prev().css('border-bottom', 'solid 1px #b3b491');
	});
	
	$('#sub-nav ul li.first').mouseover(function(){
		$('#sub-nav ul li.first').css('border-top', 'solid 1px #b3b491');
	}).mouseout(function(){
		$('#sub-nav ul li.first').css('border-top', 'solid 1px #d1d1ce');
		$('#sub-nav ul li.first.selected, #sub-nav ul li.selected.first').css('border-top', 'solid 1px #b3b491');
	});
	
	$('#sub-nav ul li.selected ul li').css('border-bottom', '0');
	$('#sub-nav ul li.selected ul li').prev().css('border-bottom', '0');
	
	$('#sub-nav ul li.selected ul li').mouseover(function(){
		$(this).css('border-bottom', '0');
		$(this).prev().css('border-bottom', '0');
	});
	$('#sub-nav ul li.selected ul li').mouseout(function(){
		$(this).css('border-bottom', '0');
		$(this).prev().css('border-bottom', '0');
	});

	/*
		$('.yt-thumb').click(function(){
			var content = $(this).attr('id');
			var vid = $(this).attr('rel');
			tb_show($(this).attr('title'), '#TB_inline?height=450&width=600&inlineId=youtube-video-player-' + content);

			$("ytapiplayer-"+content).html('');

			var so = new SWFObject("http://www.youtube.com/apiplayer?enablejsapi=1&playerapiid=ytplayer", "ytapiplayer-"+content, "600", "445", "8", null);
			so.addParam("allowScriptAccess", "always");
			so.addParam("bgcolor", "#000000");
			so.setAttribute("id", "connect-yt-player-"+content);
			so.setAttribute("wmode", "transparent");
			so.write("ytapiplayer-"+content);

			setTimeout(function(){
				ytplayer = document.getElementById("connect-yt-player-"+content);
				ytplayer.loadVideoById(vid,0);
			}, 5000);
			return true;
		});

		$("#TB_overlay").click(function(){
			ytplayer.stopVideo();
			ytplayer.clearVideo();
			ytplayer.seekTo(0, false);
		});

		$("#TB_closeWindowButton").click(function(){
			ytplayer.stopVideo();
			ytplayer.clearVideo();
			ytplayer.seekTo(0, false);
		});
	*/


	$('span.more').click(function(){
		var entry_id_is = $(this).attr('id');
		// alert(entry_id_is);
		$('span.remainder.'+entry_id_is).slideToggle();
		return false;
	});
	
	// open close the uni nav :)
	$('.sms-btn a').click(function(){
		//$('#sms-wrap').toggleClass('hide');
		$('#sms-wrap').slideToggle();
		$('#sms-wrap').fadeTo('slow', 1);
		return false;
	});
	
	// clear search field
	$('#searchsite, #searchinline').focus(function(){
		if($(this).val() == $(this).attr('title')){
			$(this).val('');
		}
	}).blur(function(){
		if($(this).val() == ''){
			$(this).val($(this).attr('title'));
		}
	});
	
	// open external links in new window/tab
	$('a[rel="external"]').click(function(){
		window.open($(this).attr('href'));
		return false;
	});

	// feature well links
	$('#masthead ul li.learnmore a').livequery('click', function(){
	    var url = $(this).attr('rel');
	    if($(this).hasClass('window-new')) {
	        window.open(url);
	    } else {
	        document.location = url;
	    }
	    return false;
	});

	
	// search results returned
	$('#searchsiteform').submit(function(){
		
		$('#search-load').addClass('loading');
		$('#search-content ul, #search-content p, #search-load h1, #search-load ul, #search-load p').fadeOut('slow');
		
		var act  = $('#searchsiteform').attr('action');
		var vars = $('#searchsiteform').serialize();
		var cc = $('#searchsite').val();
			
		$.ajax({
			type: 'POST',
			url: act,
			data: vars,
			cache: false,
			dataType: 'html',
			success: function(searchResults){
				setTimeout(function(){
					$('#search-load').removeClass('loading').addClass('loaded').html(searchResults).fadeIn('slow');
					$('#search-load').hide().fadeIn('slow');
					}, 3000);
				}					
			});
			
		return false;
	});
	
	// inline search results returned
	$('#searchinlineform').submit(function(){
		
		$('#search-il-load').addClass('loading');
		$('#search-il-content ul, #search-il-content p, #search-il-load h1, #search-il-load ul, #search-il-load p').fadeOut('slow');
		
		var act  = $('#searchinlineform').attr('action');
		var vars = $('#searchinlineform').serialize();
		var cc = $('#searchinline').val();
			
		$.ajax({
			type: 'POST',
			url: act,
			data: vars,
			cache: false,
			dataType: 'html',
			success: function(searchResults){
				setTimeout(function(){
					$('#search-il-load').removeClass('loading').addClass('loaded').html(searchResults).fadeIn('slow');
					$('#search-il-load').hide().fadeIn('slow');
					}, 3000);
				}					
			});
			
		return false;
	});
	
	// news rotate
	$('#news').cycle({
		fx: 'fade',
		timeout: 6000,
		height: '48px',
		speed: 1000,
		pause: 1,
		sync: 0,
		fit: 1
	});
	
	// home page testimonials rotate
	// $('#quote').cycle({
	// 	fx: 'fade',
	// 	timeout: 6000,
	// 	height: '126px',
	// 	speed: 1000,
	// 	pause: 1,
	// 	sync: 0,
	// 	fit: 1
	// });
	
	// events rotate
	// $('#main-banner').cycle({
	// 	fx: 'fade',
	// 	timeout: 5500,
	// 	height: '98px',
	// 	speed: 1500,
	// 	pause: 1,
	// 	sync: 0,
	// 	fit: 1
	// });
	
	// secondary events rotate
	// $('#sec-banner').cycle({
	// 	fx: 'fade',
	// 	timeout: 5500,
	// 	height: '98px',
	// 	speed: 1500,
	// 	pause: 1,
	// 	sync: 0,
	// 	fit: 1
	// });
	
	// hero events rotate
	// $('#hero-banner').cycle({
	// 	fx: 'fade',
	// 	timeout: 5500,
	// 	height: '260px',
	// 	speed: 1500,
	// 	pause: 1,
	// 	sync: 0,
	// 	fit: 1
	// });
	
	// ampersand replace
	// var amp_is = $('#masthead.clicked h2').text();
	// var amp_is_new = amp_is.replace(/&/g,"<span class=\"fancy-amp\">&</span>");
	// $('#masthead.clicked h2').html(amp_is_new);
	
	// contact form validation
	$('#contact').validate({
		rules: {
			name: "required",
			email: {
				required: true,
				email: true
			},
			message: "required"
		},
		messages: {
			name: "Please enter your name",
			email: "Please enter a valid email address",
			message: "Please enter a message"
		},
		errorElement: "em",
		errorPlacement: function(error, element) {
			var id_is = element.attr("id");
			// alert(id_is);
			error.appendTo( $('#fs-'+id_is+' label') );
	   	}
		// debug: true
	});
	
	// add event form validation & submit
	$('form#entryform input#title').livequery('focus', function() { 
		$('fieldset#fs-title em').hide(); 
		$('fieldset#fs-title input').removeClass('error');
	});

	$('form#entryform textarea#field_id_9').livequery('focus', function() { 
		$('fieldset#fs-field_id_9 em').hide(); 
		$('fieldset#fs-field_id_9 textarea').removeClass('error');
	});

	$('#cal-add-form form').submit(function() {
		var err_h_open  = '<em class="error" htmlfor="title" generated="true">';
		var err_h_close = '</em>';
		var err_count	= 0;
		var d_string    = '';
	
		// Validate Title field
		if($('form#entryform input#title').val() == '') {
		    $('fieldset#fs-title label').append(err_h_open+'You must give this event a title'+err_h_close);
			$('fieldset#fs-title input').addClass('error');
			err_count++;
		}
	
		// Validate Event Description field
		if($('form#entryform textarea#field_id_9').val() == '') {
		    $('fieldset#fs-field_id_9 label').append(err_h_open+'This event needs a description'+err_h_close);
			$('fieldset#fs-field_id_9 textarea').addClass('error');
			err_count++;
		}

		if(err_count == 0) {
			
			// Hide the error message beside the submit button (if any is there)
			$('form#entryform fieldset#cal-add-submit em').hide();
			
			// Get the hidden form inputs
			$('form#entryform div.hiddenFields input').each(function() {
				if(d_string != '') d_string += '&';
				d_string += $(this).attr('name')+'='+$(this).val();
			});
			
			// Get the shown form inputs
			$('form#entryform fieldset input, form#entryform fieldset textarea').each(function() {
				d_string += '&'+$(this).attr('name')+'='+$(this).val();
			});
			// alert(d_string)
		
			$.ajax({
				type: "POST",
				url: $('form#entryform div.hiddenFields input').attr('action'),
				data: d_string,
				success: function(msg) {
					if(msg.match('<title>Error</title>')) {
						$('form#entryform fieldset#cal-add-submit').prepend(err_h_open+'An unexpected error occurred. Please try again and if the error persists <a href="/contact">contact us</a>.'+err_h_close);
						return false;
					} else {
						$('#title, #field_id_9, #field_id_10, #field_id_11').val('');
						$('form#entryform fieldset#cal-add-submit').prepend('<div class="thanks"><p><strong>Thanks! Your event has been received. Once it is approved, it will be posted on this calendar.</strong></p></div>');
						setTimeout("tb_remove();", 3000);
						setTimeout("$('form#entryform fieldset#cal-add-submit div.thanks').hide();", 3500);
						return false;
					}
					// alert(msg);
				}
			});
		} else {
			// Show an error message beside the submit button
			$('form#entryform fieldset#cal-add-submit').prepend(err_h_open+'Please correct the above errors.'+err_h_close);
		}
	
		return false;
	
	});
	
	// request vacation form validation
	$('#request').validate({
		rules: {
			name: "required",
			email: {
				required: true,
				email: true
			},
			street1: "required",
			street2: "required",
			city: "required",
			state: "required",
			postalcode: "required"
		},
		messages: {
			name: "You must tell us your name.",
			email: "We need a valid email address, please.",
			street1: "Where should we send the guide?",
			street2: "Where should we send the guide?",
			city: "What city please?",
			state: "What state please?",
			postalcode: "How about the zip code?"
		},
		errorElement: "em",
		errorPlacement: function(error, element) {
			var id_is = element.attr("id");
			// alert(id_is);
			error.appendTo( $('#fs-'+id_is+' label') );
	   	}
		// debug: true
	});
	

	/*
		CALENDAR SECTION
	*/
	
	Date.format = 'mm/dd/yy';
	var date_start_raw 	= $('input#sort-date-start').val();
	var date_stop_raw 	= $('input#sort-date-stop').val();
	if(date_stop_raw) {
		date_start_raw 	= date_start_raw.split('/');
		$('.date-pick-start').datePicker({clickInput:true, startDate: date_start_raw[0]+'/'+date_start_raw[1]+'/20'+date_start_raw[2]});
	}
	if(date_stop_raw) {
		date_stop_raw	= date_stop_raw.split('/');
		$('.date-pick-stop').datePicker({clickInput:true, startDate: date_stop_raw[0]+'/'+date_stop_raw[1]+'/20'+date_stop_raw[2]});
	}
	
	$('a.dp-choose-date').html(''); // remove the text from the anchor tags

	// Set the category drop down per the URL
	$('form#cal-sort').submit(function() {
		// get some values
		var cat_id 			= $('select#cal-cat option:selected').val();

		// need to grab these values again, since they prob changed since page load
		date_start_raw 		= $('input#sort-date-start').val();
		date_stop_raw 		= $('input#sort-date-stop').val();
		date_start_raw 		= date_start_raw.split('/');
		date_stop_raw 		= date_stop_raw.split('/');

		// build the redirect URL
		var url = '/calendar/sort/'+cat_id;
		url	+= '/20'+date_start_raw[2]+'-'+date_start_raw[0]+'-'+date_start_raw[1]; // "start" date for query
		url += '/20'+date_stop_raw[2]+'-'+date_stop_raw[0]+'-'+date_stop_raw[1]; // "stop" date for query

		// do the redirect
		window.location = url;
		
		return false;
	});
	
	// Set the beginning and ending dates per the URL
	
	// masthead content switch
	$('#masthead ').click(function(){
		
		$('#search-load').addClass('loading');
		$('#search-content ul, #search-content p, #search-load h1, #search-load ul, #search-load p').fadeOut('slow');
		
		var act  = $('#searchsiteform').attr('action');
		var vars = $('#searchsiteform').serialize();
		var cc = $('#searchsite').val();
			
		$.ajax({
			type: 'POST',
			url: act,
			data: vars,
			cache: false,
			dataType: 'html',
			success: function(searchResults){
				setTimeout(function(){
					$('#search-load').removeClass('loading').addClass('loaded').html(searchResults).fadeIn('slow');
					$('#search-load').hide().fadeIn('slow');
					}, 3000);
				}					
			});
			
		return false;
	});
	
	$('#masthead.clicked ul.mh-nav li.prev a, #masthead.clicked ul.mh-nav li.next a').livequery('click', function() {
		var rel = $(this).parent().parent().attr('rel');
		var len = feat_items.length;
		var next_id = 0;
		var prev_id = 0;
		
		for(var i = 0; i < len; i ++) {
			if(feat_items[i] == rel) {
				prev_id = (i == 0) ? feat_items[len - 1] : feat_items[i-1];
				next_id = ((i + 1) == len) ? feat_items[0] : feat_items[i+1];
			}
		}
		
		var id_to_pass = ($(this).parent().hasClass('prev')) ? prev_id : next_id;
		masthead_clicked(id_to_pass);
		
		// Initiate Thickbox again since we loaded in dynamic content
		// tb_init();

		return false;
	});

	/*
	$('#masthead.clicked ul.mh-nav li.learnmore a').livequery('click', function() {
		document.location.href = $(this).attr('href');
		// tb_show();
		// return false;
	});
	*/

});

function masthead_clicked(entry_id) {
	$('#masthead object').css('background', '#eeeeee');
	setTimeout(function(){ $('#masthead').addClass('clicked'); }, 1000 );
	$('#masthead object').fadeOut(500).css("opacity",.90);;
		
	$.ajax({
		type: 'GET',
		url: '/cvb/masthead-clicked/'+entry_id+'/',
		success: function(html){
			setTimeout(function(){
				$('#masthead.clicked').html(html);
				$('#search-load').hide().fadeIn('slow');
			}, 1000);
		}
	});
		
	//return true;
}
