jQuery(document).ready(function(){
	replaceLightBox();
	initDrop();
	initNav();
	initDropDown();
	initHoverIE();
	clearInputs();
	initSlideNav();
	initSlideArea();
	initGallery();
	initSlideshow();
	initTabNav('.navigation, .nav-gallery > ul');
	initTabs();
	initNav2();
	initShowDropInner();
/* code added by Vijay Vadhadia */	
	if(queryString('tab'))
	{
		var id = queryString('tab');
		$(".tab-content").each(function(){
			$(this).css("display","none");
		});
		$("#"+id).css("display","block");
		jQuery('ul.tabset li a ').each(function(){
			$(this).removeClass("active");
			if($(this).attr("href")=="#"+id)
			{
				$(this).addClass("active");
			}
		});
		
	}
/* end of code*/
});
jQuery(window).load(function(){
	initLightbox();
});
/* This function will get the parameter from url and will return it*/

function queryString(parameter) { 
  var loc = location.search.substring(1, location.search.length);
  var param_value = false;

  var params = loc.split("&");
  for (i=0; i<params.length;i++) {
      param_name = params[i].substring(0,params[i].indexOf('='));
      if (param_name == parameter) {
          param_value = params[i].substring(params[i].indexOf('=')+1)
      }
  }
  if (param_value) {
      return param_value;
  }
  else {
      return false; //Here determine return if no parameter is found
  }
}
/* end of function */
function initShowDropInner(){
	var holders = jQuery('.gallery-drop');
	holders.each(function(){
		var holder = jQuery(this);
		var _list = holder.find('>ul');
		var _itemsList = _list.children();
		
		var ind = _itemsList.index(_itemsList.filter('.active').eq(0));
		if (ind == -1) _itemsList.eq(0).addClass('active');
		else _itemsList.eq(ind).addClass('active');
		
		var timer;
		_itemsList.each(function(){
			var itemList = jQuery(this);
			var dropInside = itemList.find('.drop-inner')//.css({left:0, display:'none'});
			if(dropInside.length){
				itemList.hover(function(){
					//clearTimeout(timer);
					function dropShow(){
						dropInside.css({
							// left:0,
							display:'block'
						});
						_itemsList.removeClass('active');
						itemList.addClass('active');
						//alert(1)
					}
					timer = setTimeout(dropShow,0);
				},function(){
					dropHide();
				});
				function dropHide(){
					clearTimeout(timer);
					dropInside.css({
						display:'none'
					});
					//itemList.removeClass('active');
				}
			}
		});
	});
	var classActive = 'active';
	$('.gallery-drop2 .drop-inner').each(function(){
		var holder = $(this);
		var item = $('.item-list .item', holder);
		
		item.mouseover(function(){
			item.removeClass(classActive);
			$(this).addClass(classActive);
		});
	});
}
function initNav2(){
	var hold = $('#navigation .add-gallery-drop');
	var _t, _t1;
	var _list = hold.find('ul > li');
	_list.each(function(){
		var _this = $(this);
		var drop = _this.find('div.drop-down');
		_this.mouseenter(function(){
			_t = setTimeout(function(){
				//hold.find('div.drop-down').hide();
				//drop.show();
				_list.removeClass('active');
				_this.addClass('active');
				//alert(1)
			 }, 0);
			 //_this.find('> a').trigger('click');
		}).mouseleave(function(){
			 if(_t) clearTimeout(_t);
			_t1 = setTimeout(function(){
				//hold.find('div.drop-down').show();
			 }, 0);
		});
	});
}

function initTabNav(item){
	jQuery(item).each(function(){
		var _this = jQuery(this);
		var summH = 0;
		var topPos = 0;
		var item = _this.find('>li > a ');
		item.each(function(i, obj){
			if( summH < jQuery(obj).outerHeight(true)) summH = jQuery(obj).height();
			if( topPos < jQuery(obj).outerHeight(true)) topPos = jQuery(obj).outerHeight(true);
		});
		item.css({ height: summH });
		item.parent().find('.gallery-drop').css({ top: topPos });
		if(item.parent().find('.drop-inner').length){
			item.parent().find('.drop-inner').css({ top: topPos + 10 });
		}
	});
	
}
function replaceLightBox(){
	jQuery('.light-box').each(function(){
		jQuery(this).appendTo(jQuery('body'));
	})
}
function initDrop(){
	jQuery('#carusel .window > ul > li').each(function(i){
		if(jQuery(this).find('.gallery-drop').length){
			jQuery(this).attr('meta', 'withdrop' + i);
			jQuery(this).find('.gallery-drop').attr('meta', 'withdrop' + i);
			jQuery(this).find('.gallery-drop').appendTo(jQuery('body'));
		}
	});
	var _top, _left,_tIn,_t, _t1;
	jQuery('#carusel .window > ul > li').each(function(){
		
		jQuery(this).mouseenter(function(){
				jQuery('#carusel .window > ul > li').removeClass('hover');
				jQuery('.gallery-drop').removeAttr('style');
				var _it = jQuery(this);
				clearTimeout (_t);
				clearTimeout (_t1);
				clearTimeout (_tIn);
				jQuery('#carusel').addClass('stop');
				var _ind = _it.index();
				_left = jQuery('#carusel').offset().left;
				_top = _it.offset().top + _it.outerHeight(true);
				if( jQuery('.gallery-drop').length ){
					jQuery('.gallery-drop[meta=' + _it.attr('meta') + ']').css({ left: _left, top: _top }).addClass('bodydrop');
					jQuery('.gallery-drop').unbind('hover').hover(
						function(){
							clearTimeout (_t);
							clearTimeout (_t1);
							clearTimeout (_tIn);
							jQuery(this).css({ left: _left, top: _top });
							jQuery('#carusel .window > ul > li').removeClass('hover').eq(_ind).addClass('hover');
							jQuery('#carusel').addClass('stop');
						},
						function(){
							clearTimeout (_t);
							clearTimeout (_t1);
							clearTimeout (_tIn);
							_t = setTimeout(function(){
								jQuery('.gallery-drop').removeAttr('style');
								jQuery('#carusel .window > ul > li').removeClass('hover');
								jQuery('#carusel').removeClass('stop');
							},1000);
								
						}
					)
				}
				else {
					jQuery('.gallery-drop').removeAttr('style');
					jQuery('#carusel .window > ul > li').removeClass('hover');
					jQuery('#carusel').removeClass('stop');
				}
			}).mouseleave(function(){
				clearTimeout (_t1);
				clearTimeout (_t);
				_t = setTimeout(function(){
					jQuery('.gallery-drop').removeAttr('style');
					jQuery('#carusel').removeClass('stop');
				}, 1000)
			})
	});
	
	jQuery ( '.gallery-drop > ul' ).each ( function () {
		var _lis = jQuery ( '> li > a', this );
		if ( _lis.length < 2 ) _lis.css ({ opacity: 0, width: 1 })
	})
}
function initSlideArea(){
	var holder = $('.slide-block');
	var wideWidth = 530;
	var narrowWidth = 310;
	var slideDuration = 500;
	var autoTime = 10000;
	var activeClass = 'slide-active';
	holder.each(function(){
		var _this = $(this);
		var leftImg = _this.find('.slide-left');
		var leftBtn = leftImg.find('.btn-slide');
		var rightImg = _this.find('.slide-right');
		var rightBtn = rightImg.find('.btn-slide');
		var t;
		var flag = true;
		
		rightImg.mouseenter(function(){
			slideSide(leftImg,rightImg);
		}).mouseleave(function(){
			autoSlide();
		});
		leftImg.mouseenter(function(){
			slideSide(rightImg,leftImg);
		}).mouseleave(function(){
			autoSlide();
		});
		autoSlide();
		function autoSlide(){
			if (t) clearTimeout(t);
			t = setTimeout(function(){
				if (flag) slideSide(rightImg,leftImg,false);
				else slideSide(leftImg,rightImg,true);
				autoSlide();
			},autoTime);
		}
		function slideSide(_leftImg,_rightImg,_flag){
			if (t) clearTimeout(t);
			_leftImg.stop().animate({
				width:narrowWidth
			},{
				queue:false,
				duration:slideDuration
			});
			_rightImg.stop().animate({
				width:wideWidth
			},{
				queue:false,
				duration:slideDuration,
				complete:function(){
					_leftImg.removeClass(activeClass);
					_rightImg.addClass(activeClass);
					if (_flag) flag = true;
					else flag = false;
				}
			});
		}
	});
}
function clearInputs(){
	jQuery('input:text, input:password, textarea').each(function(){
		var _el = jQuery(this);
		_el.data('val', _el.val());
		_el.bind('focus', function(){
			if(_el.val() == _el.data('val')) _el.val('');
		}).bind('blur', function(){
			if(_el.val() == '') _el.val(_el.data('val'));
		});
	});
}
function initSlideNav(){
	var animateSpeed = 250;
	var autoTime = 3000;
	var activeClass = 'open';
	jQuery('.buttons-list').each(function(){
		var set = jQuery(this);
		var link = set.find('>li');
		var activeLink = link.filter('.active');
		var activeWidth = activeLink.find('>a').width();
		var t,t2;
		var linkWidth = link.find('>a').width();
		link.each(function(i, el){
			linkWidth = jQuery(this).find('>a').width();
			jQuery(this).css({
				top: jQuery(this).outerHeight(true)*i,
				marginLeft: -linkWidth
			});
		})
		function hideNew(){
			if (!activeLink.hasClass(activeClass)){
				activeLink.animate({
					marginLeft: 0
				}, { queue: false, duration: 500,complete: function(){
					activeLink.addClass(activeClass);
				}});
			}
			else {
				if (t) clearTimeout(t);
				activeLink.removeClass(activeClass);
				activeLink.animate({
					marginLeft: -activeWidth
				}, { queue: false, duration: 500,complete: function(){
					
				}});
			}
			t = setTimeout(function(){
				if (!activeLink.hasClass(activeClass)){
					activeLink.animate({
						marginLeft: 0
					}, { queue: false, duration: 500,complete: function(){
						activeLink.addClass(activeClass);
					}});
				}
				else {
					activeLink.removeClass(activeClass);
					activeLink.animate({
						marginLeft: -activeWidth
					}, { queue: false, duration: 500,complete: function(){
					}});
				}
			},autoTime);
		}
		hideNew();
		link.hover(
			function(){
				if (!jQuery(this).hasClass('open')) {
					linkWidth = jQuery(this).find('>a').width();
					jQuery(this).stop().animate({
						marginLeft: 0
					}, { queue: false, duration: animateSpeed });
				}
				else {
					if (t) clearTimeout(t);
				}
			},
			function(){
				if (!jQuery(this).hasClass('open')) {
					jQuery(this).stop().animate({
						marginLeft: -linkWidth
					}, { queue: false, duration: animateSpeed });
				}
				else hideNew();
			}
		)
		/*
		activeLink.bind('click', function(){
			linkWidth = jQuery(this).find('>a').width();
			if (t) clearTimeout(t);
			if (!$(this).hasClass(activeClass)){
				activeLink.stop().animate({
					marginLeft: 0
				}, { queue: false, duration: animateSpeed,complete: function(){
					$(this).addClass(activeClass);
				}});
			}
			else {
				activeLink.stop().animate({
					marginLeft: -linkWidth
				}, { queue: false, duration: animateSpeed,complete: function(){
					$(this).removeClass(activeClass);
				}});
			}
			return false;
		});*/
	})
}
function initHoverIE(){
	jQuery('body').NVhoverIE({
		hoverItem:'#nav li, .gallery ul > li, .gallery-drop ul > li, .buttons-list li'
	});
}
jQuery.fn.NVhoverIE = function(_options){
	var _options = jQuery.extend({
		hoverItem:'div',
		hoverClass: 'hover'
		
	},_options);

	return this.each(function(){
		var _this = jQuery(this);
		var _hoverItem = jQuery(_options.hoverItem, _this);
		var _hoverClass = _options.hoverClass;
		if (jQuery.browser.msie && jQuery.browser.version < 7) {
			_hoverItem.each(function(){
				jQuery(this).hover(
					function(){
						jQuery(this).addClass(_hoverClass)
					},
					function(){
						jQuery(this).removeClass(_hoverClass)
					}
				)
			})
		}
	});
}
function initGallery(){
	jQuery('.gallery').scrollGallery({
		sliderHolder: 'div.window',
		slider:'>ul',
		slides: '>li',
		btnPrev:'a.prev',
		btnNext:'a.next',
		autoRotation: false,
		switchTime:2000,
		step:1
	});
	jQuery('div.gallery-inner').scrollGallery({
		sliderHolder: 'div.window-inner',
		slider:'>div.item-list',
		slides: '>div.item',
		btnPrev:'a.prev-inner',
		btnNext:'a.next-inner',
		step:1
	});
	
}
jQuery.fn.scrollGallery = function(_options){
	var _options = jQuery.extend({
		sliderHolder: '>div',
		slider:'>ul',
		slides: '>li',
		pagerLinks:'div.pager a',
		btnPrev:'a.link-prev',
		btnNext:'a.link-next',
		activeClass:'active',
		disabledClass:'disable',
		generatePagination:'div.pg-holder',
		curNum:'em.scur-num',
		allNum:'em.sall-num',
		circleSlide:false,
		pauseClass:'gallery-paused',
		pauseButton:'none',
		pauseOnHover:true,
		autoRotation:false,
		stopAfterClick:false,
		switchTime:5000,
		duration:700,
		easing:'swing',
		event:'click',
		afterInit:false,
		vertical:false,
		step:false,
		startElement : 0
	},_options);

	return this.each(function(){
		var _this = jQuery(this);
		var _sliderHolder = jQuery(_options.sliderHolder, _this);
		var _slider = jQuery(_options.slider, _sliderHolder);
		var _slides = jQuery(_options.slides, _slider);
		var _btnPrev = jQuery(_options.btnPrev, _this);
		var _btnNext = jQuery(_options.btnNext, _this);
		var _pagerLinks = jQuery(_options.pagerLinks, _this);
		var _generatePagination = jQuery(_options.generatePagination, _this);
		var _curNum = jQuery(_options.curNum, _this);
		var _allNum = jQuery(_options.allNum, _this);
		var _pauseButton = jQuery(_options.pauseButton, _this);
		var _pauseOnHover = _options.pauseOnHover;
		var _pauseClass = _options.pauseClass;
		var _autoRotation = _options.autoRotation;
		var _activeClass = _options.activeClass;
		var _disabledClass = _options.disabledClass;
		var _easing = _options.easing;
		var _duration = _options.duration;
		var _switchTime = _options.switchTime;
		var _controlEvent = _options.event;
		var _step = _options.step;
		var _vertical = _options.vertical;
		var _circleSlide = _options.circleSlide;
		var _stopAfterClick = _options.stopAfterClick;
		var _afterInit = _options.afterInit;
		
		if(!_slides.length ) return;
		var _currentStep = _options.startElement;
		var _sumWidth = 0;
		var _sumHeight = 0;
		var _hover = false;
		var _stepWidth;
		var _stepHeight;
		var _stepCount;
		var _offset;
		var _timer;
		
		_slides.each(function(){
			_sumWidth+=$(this).outerWidth(true);
			_sumHeight+=$(this).outerHeight(true);
		});
		if( _slides.length < _sliderHolder.width()/_slides.outerWidth() ){
			_sliderHolder.css({ width: _sumWidth });
		}
		else {
			_slider.css({ width: _sumWidth });
		}
		/**/
		if(_slides.parents('ul.navigation').length){
			var defWel = _slides.eq(0).width();
			var visElCount = Math.ceil(_sliderHolder.width()/defWel);
			var visElWidth = visElCount * defWel;
			/*_slides.each(function(i){
				//if(i < visElCount){
					$(this).find('img').attr('src', $(this).find('img').attr('alt')).addClass('loaded');
					console.log(i)
			//	}
			});*/
		}
		/**/
		
		function recalcOffsets() {
			if(_vertical) {
				if(_step) {
					_stepHeight = _slides.eq(_currentStep).outerHeight(true);
					_stepCount = Math.ceil((_sumHeight-_sliderHolder.height())/_stepHeight)+1;
					_offset = -_stepHeight*_currentStep;
				} else {
					_stepHeight = _sliderHolder.height();
					_stepCount = Math.ceil(_sumHeight/_stepHeight);
					_offset = -_stepHeight*_currentStep;
					if(_offset < _stepHeight-_sumHeight) _offset = _stepHeight-_sumHeight;
				}
			} else {
				if(_step) {
					_stepWidth = _slides.eq(_currentStep).outerWidth(true)*_step;
					_stepCount = Math.ceil((_sumWidth-_sliderHolder.width())/_stepWidth)+1;
					_offset = -_stepWidth*_currentStep;
					if(_offset < _sliderHolder.width()-_sumWidth) _offset = _sliderHolder.width()-_sumWidth;
				} else {
					
					
					_stepWidth = _sliderHolder.width();
					_stepCount = Math.ceil(_sumWidth/_stepWidth);
					_offset = -_stepWidth*_currentStep;
					if(_offset < _stepWidth-_sumWidth) _offset = _stepWidth-_sumWidth;
				}
			}
		}
		if(_btnPrev.length) {
			_btnPrev.bind(_controlEvent,function(){
				if(_stopAfterClick) stopAutoSlide();
				prevSlide();
				return false;
			});
		}
		if(_btnNext.length) {
			_btnNext.bind(_controlEvent,function(){
				if(_stopAfterClick) stopAutoSlide();
				nextSlide();
				return false;
			});
		}
		if(_generatePagination.length) {
			_generatePagination.empty();
			recalcOffsets();
			var _linkArr = [];
			for(var i=0; i<_stepCount; i++){
				jQuery('<li><a href="#">'+(i+1)+'</a></li>').appendTo(_generatePagination);
			};
			_pagerLinks = _generatePagination.children();
			_pagerLinks.each(function(){
				_linkArr.push(jQuery(this));
			});
			_pagerLinks.eq(0).addClass('first');
		}
		if(_pagerLinks.length) {
			_pagerLinks.each(function(_ind){
				jQuery(this).bind(_controlEvent,function(){
					if(_currentStep != _ind) {
						if(_stopAfterClick) stopAutoSlide();
						_currentStep = _ind;
						switchSlide();
					}
					return false;
				});
			});
		}
		function prevSlide() {
			recalcOffsets();
			if(_currentStep > 0) _currentStep--;
			else if(_circleSlide) _currentStep = _stepCount-1;
			switchSlide();
		}
		function nextSlide() {
			recalcOffsets();
			if(_currentStep < _stepCount-1) _currentStep++;
			else if(_circleSlide) _currentStep = 0;
			switchSlide();
		}
		function refreshStatus() {
			if(_pagerLinks.length){
				_pagerLinks.removeClass(_activeClass).eq(_currentStep).addClass(_activeClass);
				_pagerLinks.each(function(i, el){
					
					if(i != 0 && i != _pagerLinks.length-1){
						if(i < _currentStep-2 || i > _currentStep+2){
							_pagerLinks.eq(i).addClass('bullet').show();
						}
						else _pagerLinks.eq(i).removeClass('bullet').show();
						
						if(i < _currentStep-5 || i > _currentStep+5){
							_pagerLinks.eq(i).hide();
						}
					}
				})
			}
			if(!_circleSlide) {
				_btnPrev.removeClass('prev-'+_disabledClass);
				_btnNext.removeClass('next-'+_disabledClass);
				if(_currentStep == 0) _btnPrev.addClass('prev-'+_disabledClass);
				if(_currentStep == _stepCount-1) _btnNext.addClass('next-'+_disabledClass);
			}
			if(_curNum.length) _curNum.text(_currentStep+1);
			if(_allNum.length) _allNum.text(_stepCount);
		}
		function switchSlide() {
			recalcOffsets();
			if(_vertical) _slider.animate({marginTop:_offset},{duration:_duration,queue:false,easing:_easing});
			else _slider.animate({marginLeft:_offset},{duration:_duration,queue:false,easing:_easing, complete:function(){
				/* var 2 */
				if(_slides.parents('ul.navigation').length){
					var t = 0;
					_slides.each(function(){
						t += $(this).width();
						if((t + _offset <= visElWidth) && !$(this).find('img').hasClass('loaded')){
							//$(this).find('img').attr('src', $(this).find('img').attr('alt')).addClass('loaded');
						}
					});
				}
			}});
			refreshStatus();
		}
		
		function stopAutoSlide(){
			if(_timer) clearTimeout(_timer);
			_autoRotation = false;
		}
		
		function autoSlide(){
			if(!_autoRotation || _hover) return;
			if(_timer) clearTimeout(_timer);
			_timer = setTimeout(function(){
				if(_this.hasClass('stop')){
					autoSlide();
					return false;
				}
				else nextSlide();
			}, _switchTime);
		}
		if(_pauseOnHover) {
			_this.hover(function(){
				_hover = true;
				if(_timer) clearTimeout(_timer);
			},function(){
				_hover = false;
				if( _slides.length > _sliderHolder.width()/_slides.outerWidth() ){
					autoSlide();
				}
			});
		}
		recalcOffsets();
		refreshStatus();
		if(_slides.length > _sliderHolder.width()/_slides.outerWidth()){
			autoSlide();
		}
		/* _slider.css({
			marginLeft: _offset
		}); */
		if(_sumWidth < _sliderHolder.width()) _btnNext.addClass('next-'+_disabledClass);
		if(_pauseButton.length) {
			_pauseButton.click(function(){
				if(_this.hasClass(_pauseClass)) {
					_this.removeClass(_pauseClass);
					_autoRotation = true;
					autoSlide();
				} else {
					_this.addClass(_pauseClass);
					stopAutoSlide();
				}
				return false;
			});
		}
		if(_afterInit && typeof _afterInit === 'function') _afterInit(_this, _slides);
	});
}
function initTabs(){
	jQuery('ul.tabset').each(function(){
		var _list = $(this);
		var _links = _list.find('a.tab');

		_links.each(function() {
			var _link = $(this);
			var _href = _link.attr('href');
			var _tab = $(_href);

			if(_link.hasClass('active')) _tab.show();
			else _tab.hide();

			_link.click(function(){
				_links.filter('.active').each(function(){
					$($(this).removeClass('active').attr('href')).hide();
				});
				_link.addClass('active');
				_tab.show();
				return false;
			});
		});
	});
}
function initDropDown(){
	var nav = document.getElementById("nav");
	if(nav) {
		var lis = nav.getElementsByTagName("li");
		for (var i=0; i<lis.length; i++) {
			if(lis[i].getElementsByTagName("ul").length > 0) {
				lis[i].className += " has-drop-down"
				lis[i].getElementsByTagName("a")[0].className += " has-drop-down-a"
			}
//			lis[i].onmouseover = function(){
//				this.className += " hover";
//			}
//			lis[i].onmouseout = function() {
//				this.className = this.className.replace(" hover", "");
//			}
		}
	}
}
function initLightbox(){
	jQuery('a.open-lightbox').simpleLightbox({
		faderOpacity: 0.7,
		faderBackground: '#000000',
		href:true,
		closeLink:'a.btn-close'
	});
}

// initAction
function initAction ( lightbox ) {
	initSlideshow(lightbox);
}

jQuery.fn.simpleLightbox = function(_options){
	var _options = jQuery.extend({
		lightboxContentBlock: '.light-box',
		faderOpacity: 0.5,
		faderBackground: '#ffffff',
		closeLink:'a.close-btn',
		href:true,
		onClick: null,
		loadId: 'load-box'
	},_options);

	return this.each(function(i, _this){
		var _this = jQuery(_this);
		if (!_options.href)
			_this.lightboxContentBlock = _options.lightboxContentBlock;
		else _this.lightboxContentBlock = _this.attr('href');
		if (_this.lightboxContentBlock != '' && _this.lightboxContentBlock.length > 1) {
			_this.faderOpacity = _options.faderOpacity;
			_this.faderBackground = _options.faderBackground;
			_this.closeLink = _options.closeLink;
			var _loader = jQuery ( '#' + _options.loadId );
			if ( !_loader.length ) _loader = jQuery ( '<div id="' + _options.loadId + '" />' ).appendTo ( 'body' );
			var _fader;
			var _lightbox = $(_this.lightboxContentBlock);
			if (!jQuery('div.lightbox-fader').length){
				_fader = $('body').append('<div class="lightbox-fader"></div>');
			}
				
				_fader = jQuery('div.lightbox-fader');
				_lightbox.css({
				'zIndex':991
			});
			_fader.css({
				opacity:_this.faderOpacity,
				backgroundColor:_this.faderBackground,
				display:'none',
				position:'absolute',
				top:0,
				left:0,
				zIndex:990
			});
			if(jQuery.browser.msie && jQuery.browser.version < 7) {
				if(!_fader.children().length) {
					var _frame = jQuery('<iframe src="javascript:false" frameborder="0" scrolling="no" />');
					_frame.css({
						opacity:0,
						width:'100%',
						height:'100%'
					});
					var _frameOverlay = jQuery('<div>');
					_frameOverlay.css({
						top:0,
						left:0,
						zIndex:1,
						opacity:0,
						background:'#000',
						position:'absolute',
						width:'100%',
						height:'100%'
					});
					_fader.empty().append(_frame).append(_frameOverlay);
				}
			}
			_lightbox.shownFlag = false;
			_this.click(function(){
				if (jQuery.isFunction(_options.onClick)) {
					_options.onClick.apply(_this);
				}
				if ( _this.hasClass ( 'ajax-load' ) ) {
					var _target = this.href;
					_lightbox = jQuery('div[rel*="'+_target+'"]');
					if ( _lightbox.length == 0 ) {
						_loader.fadeIn();
						_loader.shownFlag = true;
						jQuery.fn.simpleLightbox.positionLightbox(_loader);
						jQuery.ajax({
							url: _target,
							type: "POST",
							dataType: "html",
							success: function(msg){
								_lightbox = jQuery(msg);
								_lightbox.attr('rel',_target).css({
									position:'absolute',
									zIndex:991
								});
								_lightbox.find('.gallery-light .window li > img').each(function(){
									this.setAttribute('origsrc',this.getAttribute('src'));
									this.removeAttribute('src');
								})

								jQuery('body').append(_lightbox);
								initAction ( _lightbox );
								initCloseLink();
								_lightbox.shownFlag = true;
								_lightbox.hide();
								jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
								_fader.fadeIn(300, function(){
									_lightbox.fadeIn(400);
									jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
								});
								_loader.fadeOut();
								_loader.shownFlag = false;
							},
							error: function(msg){
								alert('AJAX error!');
								return false;
							}
						});
					}
					else {
						_lightbox.shownFlag = true;
						_lightbox.hide();
						jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
						_fader.fadeIn(300, function(){
							_lightbox.fadeIn(400);
							jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
						});
					}
				}
				else {
					_lightbox.shownFlag = true;
					_lightbox.hide();
					jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
					_fader.fadeIn(300, function(){
						_lightbox.fadeIn(400);
						jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
					});
				}
				jQuery('span.playButton').click();
				return false;
			});
			function initCloseLink () {
				jQuery(_this.closeLink).click(function(){
					_lightbox.fadeOut(400, function(){
						_fader.fadeOut(300);
						_scroll = false;
					});
					return false;
				});
			}
			initCloseLink ();
			_fader.click(function(){
				_lightbox.fadeOut(400, function(){
					_fader.fadeOut(300);
				});
				return false;
			});
			var _scroll = false;
			jQuery.fn.simpleLightbox.positionLightbox = function (_lbox) {
				if(!_lbox.shownFlag) return false;
				var _height = 0;
				var _width = 0;
				var _minWidth = $('body > div:eq(0)').outerWidth();
				if (window.innerHeight) {
					_height = window.innerHeight;
					_width = window.innerWidth;
				} else {
					_height = document.documentElement.clientHeight;
					_width = document.documentElement.clientWidth;
				}
				var _thisHeight = _lbox.outerHeight();
				var _page = jQuery('body');
				if (_lbox.length) {
					if (_width < _minWidth) {_fader.css('width',_minWidth);} else {_fader.css('width','100%');}
					if (_height > _page.innerHeight()) _fader.css('height',_height); else _fader.css('height',_page.innerHeight());
					if (_height > _thisHeight) {
						if ($.browser.msie && $.browser.version < 7) {
							_lbox.css({
								position:'absolute',
								top: (document.documentElement.scrollTop + (_height - _thisHeight) / 2)+"px"
							});
						} else {
							_lbox.css({
								position:'fixed',
								top: ((_height - _lbox.outerHeight()) / 2)+"px"
							});
						}
					}
					else {
						var _fh = parseInt(_fader.css('height'));
						if (!_scroll) {
						if (_fh - _thisHeight > parseInt($(document).scrollTop())) {
								_fh = parseInt($(document).scrollTop())
								_scroll = _fh;
							} else {
								_scroll = _fh - _thisHeight;
							}
						}
						_lbox.css({
							position:'absolute',
							top: _scroll
						});
					}
					if (_width > _lbox.outerWidth()) _lbox.css({left:((_width - _lbox.outerWidth()) / 2 + 10) + "px"});
					else _lbox.css({position:'absolute',left: 0});
				}
			}

			jQuery(window).resize(function(){
				if (_lightbox.is(':visible')) {
					jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
					jQuery.fn.simpleLightbox.positionLightbox(_loader);
				}
			});
			jQuery(window).scroll(function(){
				if (_lightbox.is(':visible')) {
					jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
					jQuery.fn.simpleLightbox.positionLightbox(_loader);
				}
			});

			jQuery.fn.simpleLightbox.positionLightbox(_lightbox);
			jQuery.fn.simpleLightbox.positionLightbox(_loader);
				$(document).keydown(function (e) {
				if (!e) evt = window.event;
				if (e.keyCode == 27) {
					_lightbox.fadeOut(400, function(){
						_fader.fadeOut(300);
					});
				}
			});
		}
	});
}
function initNav(){
	function refreshPadding(){
		jQuery('#navigation > li').each(function(){
			if(jQuery(this).hasClass('active')){
				jQuery('#navigation').parent('div.navigation-holder').css({
					paddingBottom: jQuery(this).find('> .gallery-drop').outerHeight(true)
				});
			}
		});
	}
	refreshPadding();
	var _navLink = jQuery('#navigation li > a');
	
	_navLink.bind('click', function(){
		var _this = jQuery(this);
		_this.parent().addClass('active');
		_this.parent().nextAll().removeClass('active');
		_this.parent().prevAll().removeClass('active');
		refreshPadding();
		return false;
	})
}
function initSlideshow(o){
	if (!o) o = document.getElementsByTagName('body')[0];
	jQuery('.gallery-lightbox', o).each(function(){
		var set = jQuery(this);
		var prevBtn = set.find('a.prev-link').css({ zIndex:999 });
		var nextBtn = set.find('a.next-link').css({ zIndex:999 });
		var holderList = set.find('div.window');
		var list = holderList.find('>ul');
		var item = list.children();
		if(item.length < 2){
			prevBtn.hide();
			nextBtn.hide();
		}
		var idx = 0;
		var prevIdx = idx;
		var _direction;
		var _animating = false;
		var _speed = 600;
		
		set.parents('div.light-box').css({
			left: (jQuery('body').width() - item.eq(idx).outerWidth(true))/2,
			width: item.eq(idx).outerWidth(true)
		});
		list.css({
			position: 'relative',
			height: item.eq(idx).outerHeight(true),
			width: item.eq(idx).outerWidth(true)
		});
		item.css({
			position: 'absolute',
			top: 0,
			left: list.width(),
			zIndex: 1
		});
		item.eq(idx).css({
			left: 0
		});
		item.eq(idx).find('img[origsrc]').each(function(){
			this.src = this.getAttribute('origsrc');
		});

		var itemH = [];
		item.each(function(){
			jQuery(this).css({
				width: jQuery(this).find('>img').width()
			})
			itemH.push(jQuery(this).find('>img').outerWidth(true));
		});
		prevBtn.bind('click', function(){
			if(!_animating) {
				_direction = false;
				prevIdx = idx;
				if(idx > 0) idx--;
				else idx = item.length-1;
				refresh();
				switchSlide();
			}
			return false;
		});
		nextBtn.bind('click', function(){
			if(!_animating) {
				_direction = true;
				prevIdx = idx;
				if(idx < item.length-1) idx++;
				else idx = 0;
				refresh();
				switchSlide();
			}
			return false;
		});
		function switchSlide(){
			_animating = true;
			set.parents('div.light-box').animate({
				left: (jQuery('body').width() - item.eq(idx).outerWidth(true) + 38)/2,
				width: item.eq(idx).outerWidth(true)
			},{ duration: 150, queue:false });
			item.eq(idx).find('img[origsrc]').each(function(){
				this.src = this.getAttribute('origsrc');
			});
			list.css({
				height: item.eq(idx).outerHeight(true),
				width: item.eq(idx).outerWidth(true)
			});
			item.eq(idx).css({
				left: (_direction ? item.eq(idx).outerWidth(true) : -item.eq(idx).outerWidth(true)),
				zIndex:99
			}).animate({
				left:0
			},{ duration:_speed, queue:false, complete:function(){
				_animating = false;
				set.parents('div.light-box').animate({
					top: (jQuery(window).height()> item.eq(idx).outerHeight(true)) ? (jQuery(window).height() - item.eq(idx).outerHeight(true) - 38)/2 : document.documentElement.scrollTop,
					left: (jQuery('body').width() - item.eq(idx).outerWidth(true) + 38)/2,
					width: item.eq(idx).outerWidth(true)
				},{ duration: 150, queue:false });
			}});
			if(item.eq(idx).outerWidth(true) > item.eq(prevIdx).outerWidth(true)){
				item.eq(prevIdx).css({ zIndex: 1 }).animate({
					left:(_direction ? -item.eq(idx).outerWidth(true) : item.eq(idx).outerWidth(true))
				},{ duration:_speed, queue:false });
			}
			else {
				item.eq(prevIdx).css({ zIndex: 1 }).animate({
					left:(_direction ? -item.eq(prevIdx).outerWidth(true) : item.eq(prevIdx).outerWidth(true))
				},{ duration:_speed, queue:false });
			}
		}
		set.find('.paging').empty();
		for(var i=0; i<item.length; i++){
			jQuery('<li><a href="#">'+(i+1)+'</a></li>').appendTo(set.find('.paging'));
		};
		var _pagerLinks = set.find('.paging').children();
		_pagerLinks.eq(0).addClass('first');
		
		function refresh(){
			_pagerLinks.removeClass('active').eq(idx).addClass('active');
			_pagerLinks.each(function(i){
				if(i != 0 && i != _pagerLinks.length-1){
					if(i < idx-2 || i > idx+2){
						_pagerLinks.eq(i).addClass('bullet').show();
					}
					else _pagerLinks.eq(i).removeClass('bullet').show();
					
					if(i < idx-5 || i > idx+5){
						_pagerLinks.eq(i).hide();
					}
				}
			})
		};
		refresh();
		set.parents('div.light-box').css({width:item.eq(idx).outerWidth(true)});
		set.find('.window > ul').css('width',item.eq(idx).outerWidth(true));
		var maxWidth = 0;
		item.each(function(){
			if(this.offsetWidth > maxWidth) maxWidth = this.offsetWidth;
		})

		set.find('.window > ul > li').not(':eq('+idx+')').css('left',maxWidth);
		list.css({
			height: item.eq(idx).outerHeight(true)
		});
		_pagerLinks.bind('click', function(){
			_direction = true;
			prevIdx = idx;
			idx = _pagerLinks.index(this);
			switchSlide();
			refresh();
			return false;
		});
	});
}
