jQuery(document).ready(function($) {

	/* header form */
	$('#client-login-box input.text, #signup input.input').bind('focus', function(){
		$(this).val('');
	});

	var ie = getInternetExplorerVersion();


	/* menu hilighting */
	var href = jQuery(location).attr('href');
	href = href.split('firstclickconsulting.com');
	thispage = href[1];
	//$('body').log(href)
	$('#menu-main-menu a').each(function(){
		var t = $(this).attr('href');
		if(t == thispage) {
			$(this).addClass('orange');
		}
	});


	/* work around client not being able to upload just one image per post */
	$('.content .header .image img').not(':first').hide();


	//////////////////////////////////////////////////////////////////////////////////////////////
	//
	// WHAT WE DO
	//

	/* front page slider */
	var lock = 0;
	$('#slider .post').not(':first').hide();
	$('.controls .sep:last').hide();

	$('.controls a').click(function(){
		var sel = $(this).attr('class');
		if(sel.substr(0,1) == 's') {
			var n = sel.substr(1, sel.length);
		}
		else {
			var total = $('#slider .post').length;
			var shown = $('#slider .post:visible').prevAll().length + 1;
			if(sel == 'next') {
				if( shown >= total ) var n = 1;
				else var n = shown + 1;
			}
			else if(sel == 'prev') {
				if(shown <= 1) var n = total;
				else var n = shown - 1;
			}
		}

		lock = 1;

		changeSlide(n);

		return false;
	});


	function changeSlide(n, is_loop)
	{
		if(ie < 9 && ie > 1) {
			$('#slider .post:visible').hide();
			$('#slider .post').eq(n-1).show();
		}
		else {
			// hide current
			$('#slider .post:visible').hide("drop", { direction: "left", easing: "easeInQuad" }, 800, function(){
				// show next
				$('#slider .post').eq(n-1).show("drop", { direction: "right", easing: "easeOutBounce" }, 1500, function(){
					// done
					if(is_loop == 'loop' && lock != 1) {
						window.setTimeout(function(){
							nextSlide();
						}, 10000);
					}
				});
			});
		}
	}

	function nextSlide()
	{
		var total = $('#slider .post').length;
		var shown = $('#slider .post:visible').prevAll().length + 1;
		if( shown >= total ) var n = 1;
		else var n = shown + 1;
		changeSlide(n, 'loop');
	}

	$(window).load(function(){
		window.setTimeout(function(){
			nextSlide();
		}, 10000);
	});



	/* shadow */
	resizeShadow();
	function resizeShadow()
	{
		var winW = $(window).width();
		var shadow = 1400;
		var body = 920;
		if( winW < shadow ) {
			var nav = $('#slider-nav');
			var newW = winW - 40;
			var moveLeft = ((winW - body) / 2) * -1;
			nav.width(newW).css({ 'left': moveLeft });
			//nav.find('.controls').css({ 'left': (moveLeft*-1) });
		}
	}
	$(window).resize(function(){
		resizeShadow();
	});


	/* inner body height */
	var sbH = $('#sidebar').height();
	var ibH = $('#content .page').height();
	if( (sbH-200) > ibH ) $('#content .page').height(sbH-200);



	/* bw */

	// Grayscale w canvas method
	function grayscale(src){
		var canvas = document.createElement('canvas');
		var ctx = canvas.getContext('2d');
		var imgObj = new Image();
		imgObj.src = src;
		canvas.width = imgObj.width;
		canvas.height = imgObj.height;
		ctx.drawImage(imgObj, 0, 0);
		var imgPixels = ctx.getImageData(0, 0, canvas.width, canvas.height);
		for(var y = 0; y < imgPixels.height; y++){
			for(var x = 0; x < imgPixels.width; x++){
				var i = (y * 4) * imgPixels.width + x * 4;
				var avg = (imgPixels.data[i] + imgPixels.data[i + 1] + imgPixels.data[i + 2]) / 3;
				imgPixels.data[i] = avg;
				imgPixels.data[i + 1] = avg;
				imgPixels.data[i + 2] = avg;
			}
		}
		ctx.putImageData(imgPixels, 0, 0, 0, 0, imgPixels.width, imgPixels.height);
		return canvas.toDataURL();
    }

	$('.person .image img').addClass("bw");
	if(ie > 1) {
		$('.bw').css({ 'filter': 'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)' });
	}

	$(window).load(function(){

		if(ie > 1) {
			$('.bw').hover(function(){
				$(this).css({ 'filter': 'progid:DXImageTransform.Microsoft.BasicImage(grayScale=0)' });
			}, function(){
				$(this).css({ 'filter': 'progid:DXImageTransform.Microsoft.BasicImage(grayScale=1)' });
			});
		}
		else {
			// clone image
			$('.bw').each(function(){
				var el = $(this);
				el.css({"position":"absolute"}).wrap("<div class='img_wrapper' style='display: inline-block'>").clone().addClass('img_grayscale').css({"position":"absolute","z-index":"9","opacity":"0"}).insertBefore(el).queue(function(){
					var el = $(this);
					el.parent().css({"width":this.width,"height":this.height});
					el.dequeue();
				});
				this.src = grayscale(this.src);
			});

			// Fade image
			$('.bw').mouseover(function(){
				$(this).parent().find('img:first').stop().animate({opacity:1}, 300);
			});
			$('.img_grayscale').mouseout(function(){
				$(this).stop().animate({opacity:0}, 500);
			});
		}
		

		
			var iedoc = IEVersion();
			var iedocv = iedoc['DocMode'];
			if(iedocv == 7) {
				$('.st_plusone').css({ 'position': 'relative', 'top': '-13px' });
				$('.st_plusone, .st_plusone div').css({ 'width': '16px !important', 'overflow': 'hidden !important' });
			}
			
			if(iedocv == 8) {
				$('.st_plusone').css({ 'position': 'relative', 'left': '-2px' });	
			}
			
			if(navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') < 1) { 
				$('.st_plusone').css({ 'position': 'relative', 'top': '-6px' });
			}

	});

	// client hover

	$('.client .image a').find('img').unwrap('a');

	$('.client .image').hover(function(){
		$(this).find('img:eq(1)').fadeOut(300);
	}, function(){
		$(this).find('img:eq(1)').fadeIn(300);
	});

	/////////////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//



	function getInternetExplorerVersion()
	// Returns the version of Internet Explorer or a -1
	// (indicating the use of another browser).
	{
	  var rv = -1; // Return value assumes failure.
	  if (navigator.appName == 'Microsoft Internet Explorer')
	  {
	    var ua = navigator.userAgent;
	    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
	    if (re.exec(ua) != null)
	      rv = parseFloat( RegExp.$1 );
	  }
	  return rv;
	}

	function IEVersion() {
		var _n=navigator,_w=window,_d=document;
		var version="NA";
		var na=_n.userAgent;
		var ieDocMode="NA";
		var ie8BrowserMode="NA";
		// Look for msie and make sure its not opera in disguise
		if(/msie/i.test(na) && (!_w.opera)){
			// also check for spoofers by checking known IE objects
			if(_w.attachEvent && _w.ActiveXObject){		
				// Get version displayed in UA although if its IE 8 running in 7 or compat mode it will appear as 7
				version = (na.match( /.+ie\s([\d.]+)/i ) || [])[1];
				// Its IE 8 pretending to be IE 7 or in compat mode		
				if(parseInt(version)==7){				
					// documentMode is only supported in IE 8 so we know if its here its really IE 8
					if(_d.documentMode){
						version = 8; //reset? change if you need to
						// IE in Compat mode will mention Trident in the useragent
						if(/trident\/\d/i.test(na)){
							ie8BrowserMode = "Compat Mode";
						// if it doesn't then its running in IE 7 mode
						}else{
							ie8BrowserMode = "IE 7 Mode";
						}
					}
				}else if(parseInt(version)==8){
					// IE 8 will always have documentMode available
					if(_d.documentMode){ ie8BrowserMode = "IE 8 Mode";}
				}
				// If we are in IE 8 (any mode) or previous versions of IE we check for the documentMode or compatMode for pre 8 versions			
				ieDocMode = (_d.documentMode) ? _d.documentMode : (_d.compatMode && _d.compatMode=="CSS1Compat") ? 7 : 5;//default to quirks mode IE5				   			
			}
		}
					 
		return {
			"UserAgent" : na,
			"Version" : version,
			"BrowserMode" : ie8BrowserMode,
			"DocMode": ieDocMode
		}			
	}



});

jQuery.fn.log = function (msg) {
	console.log("%s: %o", msg, this);
	return this;
};

