jQuery.fn.slideShow = function(_options){
	// defaults options	    
	var _options = jQuery.extend({		
		slideEl:'div.slide',		
		linkNext:'a.next',		
		linkPrev:'a.prev',		
		linkPause:'a.pause',		
		numElement:'div.slideNav li a',		
		duration:500,		
		autoSlideShow:false,		
		switchTime:3000,
		noCicle:false,
		disableClass:'no-active',
		event:'click',		
		currentEl:'span.cur',		
		allEl:'span.all',
		hideBeforeShow: false,
		hoverStopGallery:true
	},_options);
    return this.each(function(){
	    var _THIS = jQuery(this),
			_slideEl = jQuery(_options.slideEl, _THIS),
			_linkNext = jQuery(_options.linkNext, _THIS),
			_linkPrev = jQuery(_options.linkPrev, _THIS),
			_linkPause = jQuery(_options.linkPause, _THIS),
			_numElement = jQuery(_options.numElement, _THIS),
			_currentEl = jQuery(_options.currentEl, _THIS),
			_allEl = jQuery(_options.allEl, _THIS),
			_duration = _options.duration,
			_switchTime = _options.switchTime,
			_numElActive, _timer = false, _hover = false, _current = 0, _next = 0, _pause = true;
		
		if (!_slideEl.filter('.active').length) {
			_slideEl.eq(0).addClass('active');
			_current = 0;
		} else {
			_current = _slideEl.index(_slideEl.filter('.active'));
		}
		_slideEl.not(".active").hide();
		
		if (jQuery(_numElement).length && _options.numElement) activeNumEl();
		if (_options.autoSlideShow) {
			_pause = false;
			_timer = setTimeout(function(){nextEl()},_switchTime);
			if (_linkPause.length && _options.linkPause) _linkPause.addClass('play')
			if (_options.hoverStopGallery) contentHover();
		}
		if (_options.currentEl && _currentEl.length) {
			_allEl.html(_slideEl.length);
			currentNum();
		}
		if (_linkNext.length && _options.linkNext) {
			_linkNext.click(function(){
				nextEl();
				return false;
			});
		}
		if (_options.noCicle) {
			_linkPrev.addClass('prev-'+_options.disableClass);
		}
		if (_linkPrev.length && _options.linkPrev) {	
			_linkPrev.click(function(){
				_linkNext.removeClass('next-'+_options.disableClass);
				if (!_slideEl.is(':animated') && !jQuery(this).hasClass('prev-'+_options.disableClass)) {
					if (_timer) clearTimeout(_timer);
					_next = _current-1;
					if (_next < 0) _next = _slideEl.length-1;
					if (_options.noCicle && _next-1 < 0) {
						jQuery(this).addClass('prev-'+_options.disableClass);
					}
					fadeElement();
					activeNumEl();
					pauseCode();
				}
				return false;
			});
		}
		if (_numElement.length && _options.numElement) {
			_numElement.bind(_options.event, function(){
				if (!_slideEl.is(':animated')) {
					_next = _numElement.index(jQuery(this));
					_linkNext.removeClass('next-'+_options.disableClass);
					_linkPrev.removeClass('prev-'+_options.disableClass);
					if (_options.noCicle && _next+1 >= _slideEl.length) _linkNext.addClass('next-'+_options.disableClass);
					if (_options.noCicle && _next-1 < 0) _linkPrev.addClass('prev-'+_options.disableClass);
					if (_timer) clearTimeout(_timer);
					if (!_slideEl.eq(_next).hasClass("active")){
						fadeElement();
						activeNumEl();
						pauseCode();
					}
				}
				return false;
			});
		}
		if (_linkPause.length && _options.linkPause) {
			_linkPause.click(function(){
				if (!_pause) {
					jQuery(this).removeClass('play');
					clearTimeout(_timer);
					_pause = true;
				} else {
					jQuery(this).addClass('play');
					_timer = setTimeout(function(){nextEl()},_switchTime);
					_pause = false;
				}
				return false;
			});
		}
		function fadeElement(){
			if (_current != _next) {
				_slideEl.removeClass('active');
				_slideEl.eq(_current).addClass('hide');
				
				if (!_options.hideBeforeShow) {
					_slideEl.eq(_next).fadeIn(_duration, function(){
						_slideEl.filter('.hide').hide().removeClass('hide');
					}).addClass('active');
				} else {
					_slideEl.filter('.hide').fadeOut(_duration, function(){
						_slideEl.eq(_next).fadeIn(_duration);
					}).removeClass('hide');
				}
				_current = _next;
				if (_options.currentEl && _currentEl.length) currentNum();
			}
		};
		function currentNum() {
			_currentEl.html(_current+1);
		}
		function activeNumEl() {
			_numElement.parent().removeClass("active");
			_numElement.eq(_current).parent().addClass("active");
		};
		function nextEl(){
			_linkPrev.removeClass('prev-'+_options.disableClass);
			if (!_slideEl.is(':animated') && !_linkNext.hasClass('next-'+_options.disableClass)) {
				if (_timer) clearTimeout(_timer);
				_next = _current+1;
				if (_next == _slideEl.length) _next = 0;
				if (_options.noCicle && _next+1 >= _slideEl.length) {
					_linkNext.addClass('next-'+_options.disableClass);
				}
				fadeElement();
				activeNumEl();
				pauseCode();
			}
		};
		function pauseCode(){
			if (!_pause) {
				if (_linkPause.length && _options.linkPause) {
					if (_linkPause.hasClass('play')) {
						_timer = setTimeout(function(){nextEl()},_switchTime);
					}					
				} else {
					_timer = setTimeout(function(){nextEl()},_switchTime);
				}
			}
		}
		function contentHover() {
			_hover = true;
			_slideEl.mouseenter(function() {
				if (_timer) clearTimeout(_timer);
			}).mouseleave(function(){
				pauseCode();
			});			
		}
    });
};

// JavaScript Document
jQuery.noConflict();
jQuery(document).ready(function(){
	livetwitterSlider();
	
	var _left = document.getElementById('main-content');
	var _right = document.getElementById('side-area');
	
	if(_left.clientHeight<_right.clientHeight)
		_left.style.height = (_right.clientHeight+100)+'px';
	
	
	var _blog = jQuery('#container, #brand-slide, #footer-live, #footer');
	var _click = jQuery('a.blog-hide'), _bglink = jQuery("#feiyue-link, #backlink-area");
	
	_click.click(function(e){
		e.preventDefault();
		_blog.fadeToggle();
		_bglink.fadeToggle();
	});
	
	brandSlide();
	
	embed();
});

function livetwitterSlider(){
	
	var _wraper = jQuery('div.twitter-slider'),
		_holder = jQuery('div.slide-holder', _wraper),
		_mover = jQuery('> ul', _holder),
		_up = jQuery('a.up', _wraper),
		_down = jQuery('a.down', _wraper),
		_inf = jQuery('a.url', _wraper),
		_length = parseInt(_inf.text()),
		_url = _inf.attr('href'),
		_timer;
	
	_wraper.slideShow({		
		slideEl:'div.image-holder a > img',		
		linkNext:'div.heading a.next',		
		linkPrev:'div.heading a.prev',		
		linkPause:'a.pause',		
		numElement:'div.slideNav li a',		
		duration:300,
		autoSlideShow:false,
		switchTime:6000,
		noCicle:false,
		disableClass:'no-active',
		event:'click',		
		currentEl:'span.cur',		
		allEl:'span.all',
		hideBeforeShow: false,
		hoverStopGallery:false
	});
	
	var _duration = 500,
		_loadDuration = 4000,
		_current = _mover.find('li').length - 1;
		
	function ajaxGet(){
		if (_wraper.is(':hidden')) return false;
		if (_current+1 > _length && _timer) clearInterval(_timer);
		$.ajax({
			url:_url,
			data:'item='+(_current+1),
			success:function(_item){
				var _newItem = jQuery(_item).hide().css({'opacity':0});
				_mover.prepend(_newItem);
				_newItem.slideDown(_duration, function(){
					_newItem.fadeTo(_duration,1);
				});
				_current++;
			}
		});
	}
	if (_inf.length)
		_timer = setInterval(ajaxGet,_loadDuration);
	var _df = true;
	_up.click(function(){
		if (_timer) clearInterval(_timer);
		var _lis = _mover.find('li');
		if (_df) {_current++; _df=false}
		if (_current+1 >= _lis.length && _current+1 <= _length && _inf.length && _mover.css('marginTop') == '0px') {
			ajaxGet();
		} else {
			_current++;
			if (_current > _lis.length) _current = 1;
			var _prevLis = _lis.length - _current,
				_summ = 0;
			_lis.each(function(i){
				if (i < _prevLis) {
					_summ += jQuery(this).outerHeight();
				}
			});
			_mover.animate({'marginTop': -_summ}, {duration:_duration, queue:false});
		}
		return false;
	});
	_down.click(function(){
		if (_timer) clearInterval(_timer);
		var _lis = _mover.find('li');
		if (_df) {_current++; _df=false}
		_current--;
		if (_current < 1) _current = _lis.length;
		var _prevLis = _lis.length - _current,
			_summ = 0;
		_lis.each(function(i){
			if (i < _prevLis) {
				_summ += jQuery(this).outerHeight();
			}
		});
		_mover.animate({'marginTop': -_summ}, {duration:_duration, queue:false});
		return false;
	});
}

function brandSlide(){
	var pretnks = new Image();
	pretnks.src = '/wp-content/themes/nash/images/contact-thanks.png';

	jQuery("#hollerContact, #brand-contact, #sponsorshipText").fancybox({
		'centerOnScroll': false,
		'padding': 0, 
		'hideOnOverlayClick':false,
		'frameWidth' : 776,
		'frameHeight' : 469,
		'overlayColor' : '#000000',
		'overlayOpacity' : '0.6',
		'hideOnContentClick':false,
		'callbackOnShow': 

			function(){
				var _form = jQuery('.contact-overlay form');				
				var _inputs = jQuery('.form-item-inner input', _form);

				_inputs.focus(function(){
					jQuery(this).parent().addClass('has-focus');
				});

				_inputs.blur(function(){
					jQuery(this).parent().removeClass('has-focus');
				});

				_form.submit(function(){
					var _p = "<p class='thanks-portfolio'><strong>Don't forget you can check out a selection of our work on</strong><br/><a href='http://selection.trrdigital.com/'>selection.trrdigital.com</a></p>";
					var data = {
						name : jQuery('#contact-name', _form).val(),
						email : jQuery('#contact-email', _form).val(),
						inquiry : jQuery('#contact-inquiry', _form).val(),
						ajax : '1',
						sub: 'true'
					};

					jQuery.ajax({
						url: '/wp-content/themes/nash/contactlb.php',
						data: data,
						type: "POST",
						beforeSend: function(req){
							jQuery('.contact-top p, .contact-top h3, .contact-overlay').fadeOut(300);
							return;
						},
						success: function(msg){
							jQuery('.contact-top').append(msg);
							jQuery('.contact-top img').fadeIn(300);
							jQuery('.contact-bottom').append(_p);
							return;
						},
						error: function(){							
							return;
						}
					});						
					return false;
				});
			}
	});
	
	var $bs = jQuery('#bs-top').scrollLeft(0), $bsi = jQuery("#bs-inner");
	var $brands = $bsi.children('.top-brand');
	var _length = $brands.length - 1, _index = 0, _busy = false;
	
	$brands.each(function(i){
		jQuery(this).css({"left" : (i*182) + 18.5, display : 'block'});
	});
	
	jQuery("#slidePrev").click(function(e){
		e.preventDefault();
		e.stopPropagation();
		
		if(_busy)
			return;
		else
			_busy = true;
		
		if(_index == 0) {
			_index = _length;
		} else {
			_index--;
		}
		
		$brands.eq(_index).css({
			left : ($bsi.position().left * - 1) - 163.5
		});
		
		$bsi.animate({
			left  : '+=182'
		}, 300, function(){
			_busy = false;
		});
	});
	
	jQuery("#slideNext").click(function(e){
		e.preventDefault();
		e.stopPropagation();
		
		if(_busy)
			return;
		else
			_busy = true;
		
		if(_index == _length) {
			_index = 0;
		} else {
			_index++;
		}
		
		var _pindex = _index + 3;
		if(_pindex > _length)
			_pindex -= (_length + 1)
			
		$brands.eq(_pindex).css({
			left : ($bsi.position().left * - 1) + 746.5
		});
		
		$bsi.animate({
			left  : '-=182'
		}, 300, function(){
			_busy = false;
		});
	});
}

function embed(){
	jQuery('.post-wrap embed').each(function(){
		if(jQuery(this).attr('width')>494) {
			jQuery(this).attr('width', 494);
			_height = Math.round(jQuery(this).attr('height')*(494/jQuery(this).attr('width')));
			jQuery(this).attr('height', _height);			
		}
	});
	jQuery('.post-wrap object').each(function(){
		if(jQuery(this).attr('width')>494) {
			jQuery(this).attr('width', 494);
			_height = Math.round(jQuery(this).attr('height')*(494/jQuery(this).attr('width')));
			jQuery(this).attr('height', _height);			
		}
	});
}
