// Google Analytics
(function() {
	var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
	ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
	var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
// Google +1 Button
(function() {
	var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
	po.src = 'https://apis.google.com/js/plusone.js';
	var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
// Facebook scripts
(function(d,s,id) {
	var js,fjs = d.getElementsByTagName(s)[0];
	if (d.getElementById(id)) {return;}
	js = d.createElement(s); js.id = id;
	js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
	fjs.parentNode.insertBefore(js, fjs);
}(document,'script','facebook-jssdk'));
// Array Remove - By John Resig (MIT Licensed)
Array.prototype.remove = function(from, to) {
	var rest = this.slice((to || from) + 1 || this.length);
	this.length = from < 0 ? this.length + from : from;
	return this.push.apply(this, rest);
};
// Custom scripts/plugins
(function ($) {
	// ElectricSlide slider
	$.fn.electricSlide = function (options) {
		return this.each(
			function (i) {
				if ($(this).attr('data-sliding') != 'true') {
					$(this).attr('data-sliding', 'true');
					var  dateObj = new Date
						,sliderID = dateObj.getTime()
						,$list = $('.slider-list', this).attr('data-sliderID', sliderID)
						,$listItems = $('.slider-item', $list)
						,listLength = $listItems.length;
					if ($(this).hasClass('billboard')) {
						$listItems.hide();
						$listItems.eq(0).show();
					}
					var slideBy = $listItems.eq(0).outerWidth(true);
					$list
						.css({
							 'margin-left' : 0
							,'width' : (listLength * slideBy) + 'px'
						})
						.attr({
							 'data-locked' : 'false'
							,'data-maxOffset' : (listLength - 1) * slideBy
							,'data-step' : slideBy
							,'data-type' : 'slider'
						});
					if ($listItems.length > 1) {
						var $nav = $('<ul class="slider-nav">');
						$listItems.each(function (j) {
							$nav.append(
								$('<li>').attr({
									 'data-sliderID': sliderID
									,'data-slideID':j
								})
							);
						});
						$(this).append($nav);
						$('li', $nav).bind('click', function (e) {$.fn.electricSlide.slide($(this))}).eq(0).click();
					}
					if ($(this).hasClass('billboard')) {
						$list.attr('data-type', 'billboard');
						$.fn.electricSlide.interval = setInterval(function (e) {
							var $nav = $list.next('.slider-nav');
							var $next = $('li.active', $nav).next();
							if ($next.length == 0) {$next = $('li', $nav).eq(0);}
							$next.click();
						}, 7000);
					}
				}
			}
		);
	};
	$.fn.electricSlide.slide = function ($trigger) {
		$trigger.siblings().removeClass('active');
		$trigger.addClass('active');
		var  sliderID = $trigger.attr('data-sliderID')
			,slideID = $trigger.attr('data-slideID')
			,$slider = $('.slider-list[data-sliderID="' + sliderID + '"]');
		if ($slider.attr('data-type') == 'slider') {
			$slider.animate(
				 {'margin-left' : '-' + (slideID * $slider.attr('data-step')) + 'px'}
				,{duration: site.options.animationSpeed, easing: site.options.easing}
			);
		}
		else if ($slider.attr('data-type') == 'billboard') {
			var $target = $('li:eq(' + slideID + ')', $slider);
			$('li', $slider).not($target).fadeOut(site.options.animationSpeed/2, function (){$target.fadeIn(site.options.animationSpeed);});
		}
	};
	// Scroller (it's different than a slider) (yes it is)
	$.fn.scroller = function (options) {
		return this.each(
			function (i) {
				var  $list = $('.scroller-list', this).attr('data-scrollerID', i)
					,$listItems = $('>li', $list)
					,listLength = $listItems.length
					,maxWidth = 0;
				$listItems.each(function (j) {maxWidth += $(this).outerWidth(true);});
				$list
					.css({'width' : maxWidth + 'px'})
					.attr({
						 'data-locked' : 'false'
						,'data-maxOffset' : maxWidth
						,'id' : 'scroller-' + i
						,'data-step' : $list.parents('.viewport').outerWidth(true)
					});
				$('a.prev', $(this)).hide();
				$('a.arrow', $(this))
					.attr('data-for', '#scroller-' + i)
					.bind('click', function (e) {
						e.preventDefault();
						var  $this = $(e.currentTarget)
							,$list = $($this.attr('data-for'))
							,offset = parseInt($list.css('left'))
							,step = parseInt($list.attr('data-step'))
							,$parent = $this.parents('.scroller-wrapper');
						if ($this.hasClass('prev')) {offset += step;}
						else if ($this.hasClass('next')) {offset -= step;}
						if (offset >= 0) {$('.prev', $parent).hide();}
						else {$('.prev', $parent).show();}
						if (offset -step <= -$list.attr('data-maxOffset')) {$('.next', $parent).hide();}
						else {$('.next', $parent).show();}
						if (offset <= 0 && offset > -$list.attr('data-maxOffset')) {
							$list.animate(
								 {'left' : offset + 'px'}
								,{duration: 1000, easing: site.options.easing}
							);
						}
					});
			}
		);
	};
	// bindings/onload scripts
	$(function () {
		// footer drop-ups
		var  $dropUpMenus = $('footer ul.drop-up-menu').each(function () {$(this).append($('<a class="menu-close" href="#' + $(this).attr('id') + '">&times;</a>'));})
			,$dropUpTriggers = $('footer a.drop-up, footer a.menu-close');
		$dropUpTriggers.bind('click', function (e) {
				e.preventDefault();
				$dropUpTriggers.removeClass('active');
				var  $trigger = $(e.currentTarget)
					,$target = $($trigger.attr('href'));
				if (!$target.is(':visible')) {
					$dropUpMenus.slideUp(250);
					$('a.close', $target).show();
					$target.slideDown(500);
					$trigger.addClass('active');
				}
				else {$target.slideUp(250);}
			});
		// placeholder fillin
		if (!Modernizr.input.placeholder) {
			$('input[placeholder],textarea[placeholder]').live('focus blur', function (e) {
				var  $input = $(e.currentTarget);
				if (e.type == 'focus' || e.type == 'focusin') {$input.val('');}
				else {
					if ($input.val() == '') {$input.val($input.attr('placeholder'));}
				}
			});
		}
		var $takeover = $('#takeover').dialog({
			 autoOpen: true
			,draggable: false
			,height: 466
			,modal: true
			,resizable: false
			,width: 888
		});
		$('#takeoverCloseButton').bind('click', function (e) {
			e.preventDefault();
			$takeover.dialog('close');
		});
	});
})(jQuery);

// IE hackattacks
function ieHacker() {
	if ($.browser.msie && parseInt($.browser.version) < 9) {
		$('#work .slider-item li:nth-child(3n),#people .leadership .slider-item li:nth-child(2n), #people .team .slider-item li:nth-child(4n)').addClass('last');
	}
};
