/*
	* Code: http://konami-js.googlecode.com/
	* Copyright (c) 2009 George Mandis (georgemandis.com, snaptortoise.com)
	* Version: 1.3.3 (4/16/2011)
	* Licensed under the GNU General Public License v3
	* http://www.gnu.org/copyleft/gpl.html
*/

var Konami = function() {
	var konami= {
			addEvent:function ( obj, type, fn, ref_obj )
			{
				if (obj.addEventListener)
					obj.addEventListener( type, fn, false );
				else if (obj.attachEvent)
				{
					// IE
					obj["e"+type+fn] = fn;
					obj[type+fn] = function() { obj["e"+type+fn]( window.event,ref_obj ); }
	
					obj.attachEvent( "on"+type, obj[type+fn] );
				}
			},
	        input:"",
	       /* pattern:"3838404037393739666513", */
		pattern:"38384040373937396665",
	        load: function(link) {					
				this.addEvent(document,"keydown", function(e,ref_obj) {											
					if (ref_obj) konami = ref_obj; // IE
					konami.input+= e ? e.keyCode : event.keyCode;
					if (konami.input.length > konami.pattern.length) konami.input = konami.input.substr((konami.input.length - konami.pattern.length));
					if (konami.input == konami.pattern) {
                    konami.code(link);
					konami.input="";
                   	return;
                    }
            	},this);
           this.iphone.load(link)
	                
				},
	        code: function(link) { window.location=link},
	        iphone:{
	                start_x:0,
	                start_y:0,
	                stop_x:0,
	                stop_y:0,
	                tap:false,
	                capture:false,
					orig_keys:"",
	                keys:["UP","UP","DOWN","DOWN","LEFT","RIGHT","LEFT","RIGHT","TAP","TAP","TAP"],
	                code: function(link) { konami.code(link);},
	                load: function(link){
									this.orig_keys = this.keys;
	    							konami.addEvent(document,"touchmove",function(e){
	                          if(e.touches.length == 1 && konami.iphone.capture==true){ 
	                            var touch = e.touches[0]; 
	                                konami.iphone.stop_x = touch.pageX;
	                                konami.iphone.stop_y = touch.pageY;
	                                konami.iphone.tap = false; 
	                                konami.iphone.capture=false;
	                                konami.iphone.check_direction();
	                                }
	                                });               
	                        konami.addEvent(document,"touchend",function(evt){
	                                if (konami.iphone.tap==true) konami.iphone.check_direction(link);           
	                                },false);
	                        konami.addEvent(document,"touchstart", function(evt){
	                                konami.iphone.start_x = evt.changedTouches[0].pageX
	                                konami.iphone.start_y = evt.changedTouches[0].pageY
	                                konami.iphone.tap = true
	                                konami.iphone.capture = true
	                                });               
	                                },
	                check_direction: function(link){
	                        x_magnitude = Math.abs(this.start_x-this.stop_x)
	                        y_magnitude = Math.abs(this.start_y-this.stop_y)
	                        x = ((this.start_x-this.stop_x) < 0) ? "RIGHT" : "LEFT";
	                        y = ((this.start_y-this.stop_y) < 0) ? "DOWN" : "UP";
	                        result = (x_magnitude > y_magnitude) ? x : y;
	                        result = (this.tap==true) ? "TAP" : result;                     

	                        if (result==this.keys[0]) this.keys = this.keys.slice(1,this.keys.length)
	                        if (this.keys.length==0) { 
														this.keys=this.orig_keys;
														this.code(link)
														}
	                        }
	                }
	}
	return konami;
}



/*
	* jQuery functions
	* load on document ready
*/
	jQuery(document).ready(function($) {
	$(function()
	{	
		//menu hover effect
		$("#menu>ul>li>ul").hide();
		
		$("#menu>ul>li").hover(function()
		  {
			  $('> ul',this).toggle(250);
			
		  },function()
		  {
			   $('> ul',this).toggle(150);
		});
		$("#menu>ul>li>ul").hover(function()
		{
			$(this).parent().css("background-color","#67A2AC");
		},function()
		{
			$(this).parent().css("background","none");
		});
		$("#menu>ul>li>a").attr("title", "");
		$("#menu>ul>li>ul>li>a").attr("title", "");
		
		//Sidebar list animation
		$(".sidebar_box li>a").hover(function(){
								   $(this).stop().animate({
									 paddingLeft: "6px"
									 }, 100);
								   },function(){
								   $(this).stop().animate({
									 paddingLeft: "0"
									 }, 100);
								   });
		
		//Clear search input default value
		var default_values = new Array();
		$("input#search_input").focus(function() {
			if (!default_values[this.id]) {
			  default_values[this.id] = this.value;
			}
			if (this.value == default_values[this.id]) {
			  this.value = '';
			}
			$(this).blur(function() {
			  if (this.value == '') {
				this.value = default_values[this.id];
			  }
			});
		});
		
	});
	
	
	
	
	//Slideshows	
	$(function() {
		
		function changeSlide( newSlide ) {
			// cancel any timeout
			clearTimeout( slideTimeout );
			
			// change the currSlide value
			currSlide = newSlide;
			
			// make sure the currSlide value is not too low or high
			if ( currSlide > maxSlide ) currSlide = 0;
			else if ( currSlide < 0 ) currSlide = maxSlide;
			
			// animate the slide reel
			$slideReel.animate({
				left: currSlide * -620
			}, 350, 'swing', function() {				
				// set new timeout if active
				if ( activeSlideshow ) slideTimeout = setTimeout(nextSlide, 3600);
			});
			
		}
		
		function nextSlide() {
			changeSlide( currSlide + 1 );
		}
		
		// define some variables / DOM references
		var activeSlideshow = true,
		currSlide = 0,
		slideTimeout,
		$slideshow = $('#slideshow'),
		$navig = $('#slide-nav'),
		$slideReel = $slideshow.find('#slideshow-reel'),
		maxSlide = $slideReel.children().length - 1,
		$slidePrevNav = $navig.find('#slideshow-prev'),
		$slideNextNav = $navig.find('#slideshow-next');
		
		// set navigation click events
		
		// left arrow
		$slidePrevNav.click(function(ev) {		
			ev.preventDefault();
			activeSlideshow = false;
			changeSlide( currSlide - 1 );
		});
		
		// right arrow
		$slideNextNav.click(function(ev) {
			ev.preventDefault();
			activeSlideshow = false;
			changeSlide( currSlide + 1 );
		});
		
		// start the slideshow
		slideTimeout = setTimeout(nextSlide, 3600);
		
	});//END Slideshows
	
	//secret konami stuff
	konami = new Konami()
	konami.code = function() {
		$('body').addClass('rundown');
        $('#logo').removeClass('init');
        $('#logo').addClass('konamiImages');
	}
	konami.load()
	
	
	})(jQuery);
