var Site = {
	config : {
		base_url : '/',
		site_url : '/index.php'
	},
	start: function() {
		// On Dom Ready
		jQuery(function($) {
			
			
			// Sub nav rollover
			
	      	var current = $('#main_nav>li.active');
			var top_nav = '#main_nav>li';
			
			$(top_nav).hover(
		    	function () {
					current.addClass('inactive').removeClass('active');
					current.children().addClass('inactive').removeClass('active');
					$(this).removeClass('inactive').addClass('active');
					$(this).children('ul').removeClass('inactive').addClass('active');	
		      	}, 
		      	function () {
					$(this).addClass('inactive').removeClass('active');
					$(this).children('ul').addClass('inactive').removeClass('active');
					current.addClass('active').removeClass('inactive');
					current.children().addClass('active').removeClass('inactive');
				}
		    );
			
			// End sub nav rollover
			
			if ($('#home_top p a').length) {
				$.each(fan_imgs, function(k, v) {
					$.each(v, function(k2, v2) {
						$.preloadImages(Site.config.base_url + 'home/img/' + k + '/' + v2);
					});
				});
			}

			var home_top_images = [];
			$('#home_top p a').each(function() {
				var $this = $(this);
				var home_top_image = $this.attr('id').split('_').pop();
				
				$this.hover(function() {
					var $this = $(this);
					var $img = $this.parent().parent().parent().find('img');
					var current_img = $img.attr('src').split('/').pop();
					var imgs = fan_imgs[home_top_image];
					if (imgs.length > 1) {
						do {
							rand_img = Site.get_rand_img(imgs);
						} while (current_img == rand_img);
					}
					else {
						rand_img = imgs[0];
					}
					$img.replaceWith('<img src=" ' + Site.config.base_url + 'home/img/' + home_top_image + '/' + rand_img + '" alt="" id="home_top_img_' + home_top_image + '" />');
				}, function() { });
			});

			/*
			 * Fixes li:hover issues in IE6
			 */
			if ($.browser.msie && $.browser.version < 7 ) 
			{

			}
			
			// if there is a class for rounded corners, round them!
			$('.rounded').corners();
			
			// if there is no right column lets modify the left div css to go full width.
			if ($('#left').length && $('#right_bluebox').length == 0 && $('#right_grayboxes').length == 0 && $('#right_content').length == 0) {
				$('#left').css({
					width : '925px',
					overflow: 'hidden'
				});
			}
			var zoom_img_params = {
					'zoomOpacity'			: true,
					'overlayShow'			: true,
					'zoomSpeedIn'			: 500,
					'zoomSpeedOut'			: 500,
					'padding'				: 0,
					'overlayOpacity'		: .7
			};
			$("a.lightbox").fancybox(zoom_img_params); 
			$('a[href^=#media:]').click(function(e) {
				e.preventDefault();
				var $this = $(this);
				var id = $this.attr('href').split(':').pop();
				$.get(Site.config.site_url + 'media_ajax/requestfull/' + id, {}, function(data) {
					$('#media_container').html(data.html);
					if (data.media.type_id == 2) {
						var flashvars = {
							'file' : Site.config.base_url + 'images/gallery/videos/' + data.media.filename,
							'skin' : Site.config.base_url + 'mediaplayer/overlay.swf',
							'controlbar' : 'over',
							'image' : Site.config.base_url + 'images/gallery/videos/preview/' + data.media.preview,
							autostart:"true"
						};
						var params = {
							allowfullscreen: 'true',
							allowscriptaccess: 'always',
							wmode : 'transparent'
						};
						var attributes = {};

						swfobject.embedSWF(Site.config.base_url + 'mediaplayer/player.swf','media_view_flash','321','241','9',"expressInstall.swf", flashvars, params, attributes);
					}
					else {

						$("a#photo_orig").fancybox(zoom_img_params);
						$("a#img_large").click( function(e) {
							e.preventDefault();
							$("a#photo_orig").click();
						});
					}
				}, 'json');
			});

		});
	},
	get_rand_img : function(imgs) {
		var rand_index = Math.floor(Math.random() * imgs.length);
		var rand_img = imgs[rand_index];
		return rand_img;
	},
	start_media_gallery : function() {
		jQuery(function($) {

			$('#mediagallery_videos img.video_thumb').click(function() {
				$this = $(this);
				$('#galleries img.video_thumb').removeClass('active');
				$('#mediagallery_videos img.video_thumb').removeClass('on');
				$this.addClass('on');
				var filename = $this.attr('rel');
				var preview = $this.attr('alt');
				var id = $this.attr('id').split('_').pop();
				//Send request to get file info and comments
				$('#media_container').load(Site.config.site_url + 'media_ajax/request/' + id, function() {
					var flashvars = {
						'file' : Site.config.base_url + 'images/gallery/videos/' + filename,
						'skin' : Site.config.base_url + 'mediaplayer/overlay.swf',
						'controlbar' : 'over',
						'image' : Site.config.base_url + 'images/gallery/videos/preview/' + preview,
						autostart:"true"
					};
					var params = {
						allowfullscreen: 'true',
						allowscriptaccess: 'always',
						wmode : 'transparent'					};
					var attributes = {
					};

					swfobject.embedSWF(Site.config.base_url + 'mediaplayer/player.swf','media_view_flash','321','241','9',"expressInstall.swf", flashvars, params, attributes);


				});

			});

			var zoom_img_params = {
					'zoomOpacity'			: true,
					'overlayShow'			: true,
					'zoomSpeedIn'			: 500,
					'zoomSpeedOut'			: 500,
					'padding'				: 0,
					'overlayOpacity'		: .7
			};
			$('#mediagallery_photos a.mediagallery_photos_large').fancybox(zoom_img_params);
		});
	},
	bind_gnaw_events : function() {
		if ($("#gnaw_carousel ul li").length > 4) {
			$("#gnaw_carousel").jCarouselLite({
		        btnNext: "#gnaw_carousel_right",
		        btnPrev: "#gnaw_carousel_left",
				visible: 4,
				scroll: 1
		    });
		}

		$('#gnaw_video_thumbs img.video_thumb').click(function() {
			var $this = $(this);
			$('#gnaw_video_thumbs img.video_thumb').removeClass('active');
			$this.addClass('active');

			var media_filename = $this.attr('rel');
			var media_preview = $this.attr('alt');
			$('#media_gallery_id').val($this.attr('id').split('_').pop());

			//Send request to get file info and comments
			$('#gnaw_video_right').load(Site.config.site_url + 'gnaw/request/' + media_filename, function(){
				$('a[rel=facebox]').facebox()

				$('a[rel=facebox2]').facebox({
					loadingImage : Site.config.base_url + 'js/facebox/loading.gif',
					closeImage : Site.config.base_url + 'js/facebox/closelabel2.gif'
				});

			});
			

			var flashvars = {
					'file' : Site.config.base_url + 'images/gallery/videos/' + media_filename,
					'skin' : Site.config.base_url + 'mediaplayer/overlay.swf',
					'controlbar' : 'over',
					'image' : Site.config.base_url + 'images/gallery/videos/preview/' + media_preview
				};
				var params = {
					allowfullscreen: 'true',
					allowscriptaccess: 'always',
					wmode : 'transparent'
				};
				var attributes = {
				};

			swfobject.embedSWF(Site.config.base_url + 'mediaplayer/player.swf','gnaw_video_flash','350','262','9',"expressInstall.swf", flashvars, params, attributes);
		});
	},
	start_gnaw : function() {
		jQuery(function($) {
			var search_value = 'Search Videos';
			$('#search_box').focus(function() {
				if ($(this).val() == search_value) $(this).val('');
			}).blur(function() {
				if ($(this).val() == '') $(this).val(search_value);
			});

			Site.bind_gnaw_events();
			$('#gnaw a.gnaw_filter').click(function(e) {
				e.preventDefault();
				var $this = $(this);
				$('#gnaw a.gnaw_filter').removeClass('on');
				$('#search_box').val('');
				$this.addClass('on');
				$('#gnaw_media').load($this.attr('href'), function(){
					Site.bind_gnaw_events();
				});
			});
			$('#gnaw_search_btn').click(function(e) {
				if ($('#search_box').val() == search_value) {
					$('#search_box').val('');
				}
				$('#gnaw a.gnaw_filter').removeClass('on');
				$('#gnaw_media').empty();
				$("#gnaw_carousel").remove();
				$('#gnaw_media').load($('#gnaw_search_action').val(), {'query' : $('#search_box').val()}, function(){
					Site.bind_gnaw_events();
				});
			});

			$('a[rel=facebox]').facebox({
				loadingImage : Site.config.base_url + 'js/facebox/loading.gif',
				closeImage : Site.config.base_url + 'js/facebox/closelabel.gif'
			});
			$('a[rel=facebox2]').facebox({
				loadingImage : Site.config.base_url + 'js/facebox/loading.gif',
				closeImage : Site.config.base_url + 'js/facebox/closelabel2.gif'
			});
			if ($('#postvideo_error').length) {
				$('#postvideo_link').click();
			}
			if ($('#comment_error').length) {
				$('#comment_link').click();
			}

			var segments = window.location.href.split('#').pop().split('/');
			if (segments[0] && segments[1] && segments[0] == 'media' && $('#media_' + segments[1])) {
				$('#media_' + segments[1]).click();
			}
			

		});	
	}
};

jQuery.preloadImages = function()
{
	for(var i = 0, count = arguments.length; i < count; i++) {
		jQuery("<img>").attr("src", arguments[i]);
	}
}

Site.start();
