(function($){
	undefined;
	
	var xmasProfile = {
		player:$webroot+"includes/swf/player.swf",
		skin:$webroot+"includes/swf/overlay.swf",
		width:640,
		height:360,
		usefullscreen:true,
		showdownload:false,
		showdigits:true,
		autostart:false,
		controlbar:"over",
		autohide:true,
		icons:false,
		type:"youtube"
	};

	
	$(document).ready(function(){
		var videoWrap = $("#video-wrap");
		var competitors = $("DIV.competitor")
		var competitorVideo = flvPlayer("competitor-video", xmasProfile, {})
		$.metadata.setType("class");

		
		var playListener = function(obj){
			if(obj["state"] != undefined) {
				if(obj["state"]) {
					videoTracker.trackEvent("PLAY", competitorVideo.props.title)
				} else {
					videoTracker.trackEvent("PAUSE", competitorVideo.props.title)
				}
			}
		};

		var muteListener = function(obj){
			if(obj["state"] != undefined) {
				if(obj["state"]) {
					videoTracker.trackEvent("MUTE", competitorVideo.props.title)
				} else {
					videoTracker.trackEvent("UNMUTE", competitorVideo.props.title)
				}
			}
		};
   
		competitorVideo.ready(function(){
			this.addModelListener("STATE", function(obj){
				if(obj.newstate == "COMPLETED") {
					videoWrap.css({"z-index":1});
					competitors.removeClass("active");
					videoTracker.trackEvent("COMPLETED", competitorVideo.props.title)	
				}
			}).addViewListener("LOAD" ,function(obj){
				if(obj['object']['file'] != undefined) {
					videoTracker.trackEvent("LOADED", competitorVideo.props.title)
					videoTracker.trackPageview(obj['object']['file']);
				}
			}).addControllerListener("RESIZE", function(obj){
				if(obj['fullscreen']) {
					videoTracker.trackEvent("FULLSCREEN", competitorVideo.props.title)
				}
			}).addViewListener("FULLSCREEN", function(obj){
				if(obj["state"]) {
					videoTracker.trackEvent("FULLSCREEN", competitorVideo.props.title)
				}
			}).addViewListener("PLAY", playListener)
			.addControllerListener("PLAY", playListener)
			.addViewListener("MUTE", muteListener)
			.addControllerListener("MUTE", muteListener);
		})
		

		$("A.competitor-link").each(function(i,e){
			$(this).click(function(event){
				videoWrap.css({"z-index":20});
				competitors.removeClass("active");
				$(this).parents("div.competitor").addClass("active");
				
				$("DIV.copy SPAN").each(function(){
					if(!$(this).hasClass("merry")) {
						$(this).addClass("merry");
					}
				});
				
				var data = $.metadata.get(this);
				var curData = competitorVideo.load()
				if(curData && data.file == curData.file) {
					competitorVideo.play();
				} else {
					competitorVideo.props.title = data.title
					competitorVideo.load(data).play();
				}
				return false;
			})
		});	
		
		//Track Vote
		$("#vote-form").bind("submit", function(){
			var curCheckedValue = "";
			$("INPUT[type=radio]", this).each(function(i,e){
				if(e.checked) {
					curCheckedValue = e.value;
				}
			})
			if(curCheckedValue.length > 0 && window['pageTracker'] != undefined) {
				pageTracker._trackEvent("VOTE", curCheckedValue);
			}
		})
		
		//competitors.hover(function(){$(this).addClass("over");},function(){$(this).removeClass("over");});
		
	});
	
	var videoTracker = {
		trackEvent:function(){
			if(window['pageTracker'] != undefined) {
				pageTracker._trackEvent("VIDEO", arguments[0], arguments[1])
			}
		}
		,trackPageview:function(){
			if(window['pageTracker'] != undefined) {
				pageTracker._trackPageview(arguments[0]);
			}
		}
	}
	
})(jQuery.noConflict());