function weaponCallback(e) {
	if (e.success) {
	}
}

function weaponLoaded() {
	$("div.weapon_controls").fadeIn(300);
}

function armorLoaded() {
	$("div.armor_controls").fadeIn(300);
}

function loop() { 
	var cur = $("#weapon_flash li:visible"); 
	if (cur.is(":last-child") ) { 
		cur.fadeOut(20, function(){ 
			// run the loop function again when time is up, in this case 5 seconds 
			$("#weapon_flash li:first-child").fadeIn(20, setTimeout(loop, 1200)); 
		}); 
	} else { 
		cur.fadeOut(20, function(){ 
			// run the loop function again when time is up, in this case 5 seconds 
			cur.next().fadeIn(20, setTimeout(loop, 1200)); 
		}); 
	}
}

var current_upgrade = '';

(function($){

  var eliminate = window.eliminate = function() {
    return new eliminate.fn.init();
  };

  eliminate.fn = eliminate.prototype = {
    init: function() {
      return eliminate.fn;
    },

    initTabs: function(selector) {
      $(selector).tabs({
				fx: { opacity: 'toggle' , duration: 'fast'},
				select: function(event, ui) {
					/*if (ui.panel.id == "memos" || ui.panel.id == "screenshots" || ui.panel.id == "videos") {
						//$(".jcarousel-next-vertical").css("visibility","visible");
					} else {
						$(".jcarousel-next-vertical").css("visibility","hidden");
					}*/
				}});
    },

    initCarousel: function(selector) {
      $(selector).jcarousel({
        vertical: true,
        visible: 3,
        buttonNextHTML: '<img src="media/img/btn_nxt.jpg" width="155" height="35" alt="Next" />',
        buttonPrevHTML: '<img src="media/img/btn_prv.jpg" width="155" height="30" alt="Previous" />'
      });

      $('#videos ul a').click( function() {
         $('#videos ul a.active').removeClass('active');
         $(this).addClass('active');
      });

      $('#screenshots ul a').click( function() {
					$('#shot img').attr('src','media/img/screenshots/' + $(this).attr('title') + '-med.jpg');
					pageTracker._trackPageview("/media/" + $(this).attr('title'));
         $('#screenshots ul a.active').removeClass('active');
         $(this).addClass('active');
         if ( $(this).hasClass('no-lge') ) return false;
      });
      $('#memos ul a').click( function() {
					$('#memo img').attr('src','media/img/screenshots/' + $(this).attr('title') + '-med.jpg');
					pageTracker._trackPageview("/media/" + $(this).attr('title'));
         $('#memos ul a.active').removeClass('active');
         $(this).addClass('active');
         if ( $(this).hasClass('no-lge') ) return false;
      });
    },

    initFancybox: function() {
      $("#screenshots a:not(#screenshots a.no-lge),#memos a:not(#memos a.no-lge)").fancybox({ 
        zoomSpeedIn: 300, 
        zoomSpeedOut: 300, 
        overlayShow: false,
        centerOnScroll: false,
        imageScale: false,
				hideOnContentClick: true
      });
    },

		initArmor: function(selector) {

			for (var i = 2; i<10; i++) {
				jQuery("<img>").attr("src","media/img/armor_" + i + "_bg.png");
			}

	    var agent=navigator.userAgent.toLowerCase();
	    var is_iphone = ((agent.indexOf('iphone')!=-1));
	    if (!is_iphone) {
			
				$("div.armor_controls div.rotate_left a").mousedown(function(){
					$("#armor")[0].goForward();
					return false;
				});

				$("div.armor_controls div.rotate_left a").click(function(){
					$("#armor")[0].stopRotation();
					return false;
				});


				$("div.armor_controls div.rotate_right a").mousedown(function(){
					$("#armor")[0].goBackward();
					return false;
				});
			
				$("div.armor_controls div.rotate_right a").click(function(){
					$("#armor")[0].stopRotation();
					return false;
				});
			
				$(selector + " a").click(function(){

					pageTracker._trackPageview("/armor/" + $(this).parent().attr("id"));

			    var flashvars = {
			      autostart:"true",
			      icons:"false"
			    }
			    var params = {
			      allowfullscreen:"false",
			      allowscriptaccess:"always",
			      wmode:"transparent",
						play: "true",
						loop: "true"
			    }
			    var attributes = {
			      id:"armor",  
			      name:"armor"
			    }
				
					$(selector + " a").removeClass("active");
					$(this).addClass("active");
					
					$(selector).parent().parent().children('div.inner_wrap').css('background-image','url(media/img/' + $(this).parent().attr("id") + '_bg.png)');
					swfobject.embedSWF('media/swf/' + $(this).parent().attr("id") + '.swf', "armor", "179", "331", "9.0.115", false, flashvars, params, weaponCallback);
				
					$("div.armor_controls").fadeOut(300);
				
					return false;

				});
			
		    var flashvars = {
		      autostart:"true",
		      icons:"false"
		    }
		    var params = {
		      allowfullscreen:"false",
		      allowscriptaccess:"always",
		      wmode:"transparent"
		    }
		    var attributes = {
		      id:"armor",  
		      name:"armor"
		    }

				swfobject.embedSWF('media/swf/armor_8.swf', "armor_flash", "179", "331", "9.0.115", false, flashvars, params, attributes, weaponCallback);

			} else {
				
				$(selector + " a").click(function(){

					pageTracker._trackPageview("/armor/" + $(this).parent().attr("id"));

					$("#armor_flash").html('<div class="armor_loading">&nbsp;</div>');
					
					$(selector + " a").removeClass("active");
					$(this).addClass("active");
					$(selector).parent().parent().children('div.inner_wrap').css('background-image','url(media/img/' + $(this).parent().attr("id") + '_bg.png)');

					foo = $(this).parent().attr("id");

					var images = new Array(76);
					for (var i = 0; i<76; i++) {
						images[i] = 'media/img/armor/' + $(this).parent().attr("id") + '/' + i + '.png';
					}

					$.imgpreload(images,
					{
						each: function()
						{
						},
						all: function()
						{
							var html = '<ul>';
							html += '<li><img src="media/img/armor/' + foo + '/0.png"></li>';
							for (var i = 1; i<76; i++) {
								html += '<li><img src="media/img/armor/' + foo + '/' + i + '.png"></li>';
							}
							html += '</ul';
							$("#armor_flash").html(html);
							$("#armor_flash").carousel();
						}
					});

					return false;

				});				

				var images = new Array(76);
				for (var i = 0; i<76; i++) {
					images[i] = 'media/img/armor/armor_8/' + i + '.png';
				}

				$.imgpreload(images,
				{
					each: function()
					{
					},
					all: function()
					{
						var html = '<ul>';
						html += '<li><img src="media/img/armor/armor_8/0.png"></li>';
						for (var i = 1; i<76; i++) {
							html += '<li><img src="media/img/armor/armor_8/' + i + '.png"></li>';
						}
						html += '</ul';
						$("#armor_flash").html(html);
						$("#armor_flash").carousel();
					}
				});
				
			}

		},

		initWeapons: function(selector) {

			for (var i = 2; i<7; i++) {
				jQuery("<img>").attr("src","media/img/weapon_" + i + "_bg.png");
			}

	    var agent=navigator.userAgent.toLowerCase();
	    var is_iphone = ((agent.indexOf('iphone')!=-1));
	    if (!is_iphone) {
			
				$("div.weapon_controls div.rotate_left a").mousedown(function(){
					$("#weapon")[0].goForward();
					return false;
				});

				$("div.weapon_controls div.rotate_left a").click(function(){
					$("#weapon")[0].stopRotation();
					return false;
				});


				$("div.weapon_controls div.rotate_right a").mousedown(function(){
					$("#weapon")[0].goBackward();
					return false;
				});
			
				$("div.weapon_controls div.rotate_right a").click(function(){
					$("#weapon")[0].stopRotation();
					return false;
				});
			
				$(selector + " a").click(function(){

					pageTracker._trackPageview("/weapons/" + $(this).parent().attr("id"));

			    var flashvars = {
			      autostart:"true",
			      icons:"false"
			    }
			    var params = {
			      allowfullscreen:"false",
			      allowscriptaccess:"always",
			      wmode:"transparent",
						play: "true",
						loop: "true"
			    }
			    var attributes = {
			      id:"weapon",  
			      name:"weapon"
			    }
				
					$(selector + " a").removeClass("active");
					$(this).addClass("active");
					$(selector).parent().children("div.content").css('background-image','url(media/img/' + $(this).parent().attr("id") + '_bg.png)');
					swfobject.embedSWF('media/swf/' + $(this).parent().attr("id") + '.swf', "weapon", "410", "160", "9.0.115", false, flashvars, params, weaponCallback);
				
					$("div.weapon_controls").fadeOut(300);
				
					return false;

				});
			
		    var flashvars = {
		      autostart:"true",
		      icons:"false"
		    }
		    var params = {
		      allowfullscreen:"false",
		      allowscriptaccess:"always",
		      wmode:"transparent"
		    }
		    var attributes = {
		      id:"weapon",  
		      name:"weapon"
		    }

				swfobject.embedSWF('media/swf/weapon_4.swf', "weapon_flash", "410", "160", "9.0.115", false, flashvars, params, attributes, weaponCallback);

			} else {
				
				$(selector + " a").click(function(){

					pageTracker._trackPageview("/weapons/" + $(this).parent().attr("id"));

					$("#weapon_flash").html('<div class="loading">&nbsp;</div>');
					
					$(selector + " a").removeClass("active");
					$(this).addClass("active");
					$(selector).parent().children("div.content").css('background-image','url(media/img/' + $(this).parent().attr("id") + '_bg.png)');

					foo = $(this).parent().attr("id");

					var images = new Array(76);
					for (var i = 0; i<76; i++) {
						images[i] = 'media/img/weapons/' + $(this).parent().attr("id") + '/' + i + '.png';
					}

					$.imgpreload(images,
					{
						each: function()
						{
						},
						all: function()
						{
							var html = '<ul>';
							html += '<li><img src="media/img/weapons/' + foo + '/0.png"></li>';
							for (var i = 1; i<76; i++) {
								html += '<li><img src="media/img/weapons/' + foo + '/' + i + '.png"></li>';
							}
							html += '</ul';
							$("#weapon_flash").html(html);
							$("#weapon_flash").carousel();
						}
					});

					return false;

				});				

				var images = new Array(76);
				for (var i = 0; i<76; i++) {
					images[i] = 'media/img/weapons/weapon_4/' + i + '.png';
				}

				$.imgpreload(images,
				{
					each: function()
					{
					},
					all: function()
					{
						var html = '<ul>';
						html += '<li><img src="media/img/weapons/weapon_4/0.png"></li>';
						for (var i = 1; i<76; i++) {
							html += '<li><img src="media/img/weapons/weapon_4/' + i + '.png"></li>';
						}
						html += '</ul';
						$("#weapon_flash").html(html);
						$("#weapon_flash").carousel();
					}
				});

			}

		},

    initUpgradesNav: function(selector) {
	
			jQuery("<img>").attr("src", "media/img/upgrades_nav_states.png");
			jQuery("<img>").attr("src", "media/img/upgrades_nav.png");
			jQuery("<img>").attr("src", "media/img/upgrades_skins.png");
	
			$(selector + " area").hover(
				function () {
					if ($(selector).parent().hasClass("current")) {
						$(selector).parent().removeClass("current");
						current_upgrade = $(selector).parent().attr("class");
					}
					$(selector).parent().removeClass();
					$(selector).parent().addClass($(this).attr("id"));
				}, 
				function () {
					$(selector).parent().removeClass();
					if (current_upgrade != '') {
						$(selector).parent().addClass(current_upgrade);
					} else {
						$(selector).parent().addClass('pane_nav_armor');
					}
				}
			);
			$(selector + " area").click(
				function () {
					
					pageTracker._trackPageview("/upgrades/" + $(this).attr("id"));
					
					$(selector).parent().removeClass();
					$(selector).parent().addClass($(this).attr("id"));
					current_upgrade = $(this).attr("id");
					$("#pane_content").scrollTo(0,0);
					$("#pane_content").hide()
					$("img.pane_image").attr({src: "media/img/" + $(this).attr("id") + ".png"});
					$("#pane_content").show();
					return false;
				}
			);
    },

    initPngFix: function() {
      $('document').pngFix();
    }

  };

})(jQuery);