jQuery(function(){
	initPage();
	initSlideShow();
	initPopups();
	initOpenClose();
	initTooltips();
	initCycleGallery();
	initFancybox();
	initSearchAutocomplete();
	initHash();
})

function resizeFancy(){
 if(jQuery('#fancybox-content').length) {
  clearTimeout(window.fTimer);
  window.fTimer = setTimeout(function(){
   jQuery.fancybox.resize();
  }, 100);
 }
}
function lastWord(o)
{
  return (""+o).replace(/[\s-]+$/,'').split(/[\s-]/).pop();
};
String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
	return this.replace(/^\s+/,"");
}
String.prototype.rtrim = function() {
	return this.replace(/\s+$/,"");
}

function initHash() {
	var hash = document.location.hash;
	if (hash) {
		hash = hash.replace(/#/,"");		// p123
		hash = hash.replace(/^p/,"");	// 123
		// check if numeric
		var numberRegex = /^[+-]?\d+(\.\d+)?([eE][+-]?\d+)?$/;
		if (numberRegex.test(hash)) {
			hash--;		// count in rel attr's start at 0
			if (hash > 0 && jQuery('div.gallery div.gallery-holder ul li[rel="' + hash + '"] a')) {
				$(document).ready(function() {
					jQuery('div.gallery div.gallery-holder ul li[rel="' + hash + '"] a').click();
				});
		    }
		}
	}

	

	
}

function initSearchAutocomplete(){
	jQuery('.search-item').each(function(){
		var _holder = jQuery(this);
		var _form = jQuery('.search-form', _holder)
		var _input = jQuery('input:text.autocomplete-field', _form).attr('autocomplete', 'off');
		var _ajaxHolder = _holder.find('.info-box');
		var _hClass = 'hover'
		var _url = _form.attr('title');
		_form.removeAttr('title');
		
//		_input.keydown(function(e) {
//			if (e.keyCode == 13) _form.submit();
//		})

//		_input.keyPress(function(e)){
		_input.keydown(function(e){
			
			var suggest = _input.val() +  String.fromCharCode(e.charCode);
			var _elements = _ajaxHolder.find('li:visible');
			var _currentIndex = _elements.index(_elements.filter('.'+_hClass).eq(0));
			
			if (e.keyCode == 27) _ajaxHolder.hide();
			if (e.keyCode == 13 && _currentIndex == -1) { 
				_ajaxHolder.hide();	
				_form.submit();
			}
					
			else if (e.keyCode == 38 || e.keyCode == 40 || e.keyCode == 39 || e.keyCode == 37 || e.keyCode == 13) return
			else {
				// split _input.val(), only search on last word
				if (lastWord(suggest) != '') {
					jQuery.ajax({
						url: _url + "/" + lastWord(suggest),
						data: suggest,
						type: 'POST',
						dataType: 'text',
						success:function(msg){
							var _drop = jQuery(msg);
							_ajaxHolder.empty();
							_drop.appendTo(_ajaxHolder);
							var _dropsize = (_drop.find('li').size());
							if (_dropsize > 0) {
								_ajaxHolder.show();
								jQuery('body').click(function(){
									_ajaxHolder.hide();
								})
							} else {
								_ajaxHolder.hide();
							}
							_drop.find('li').each(function(){
								jQuery(this).mouseenter(function(){
									_drop.find('li').removeClass(_hClass);
									jQuery(this).addClass(_hClass);
								}).click(function(){
									var _a = jQuery(this).find('a');
									_input.trigger('focus').val(_a.html());
									_ajaxHolder.hide();
								});
								jQuery(this).find('a').click(function(){
									var _a = jQuery(this);
									_input.trigger('focus').val(_a.html());
									_ajaxHolder.hide();
									return false;
								})
							})
							_drop.mouseleave(function(){
								_drop.find('li').removeClass(_hClass);
							});
						}
					})
				}
			}
		}).keyup(function(e){
			if (_input.val().length == 0) _ajaxHolder.hide();
		})
		
		
		
		// autocomplete nav
		function keyboardNav(direction) {
			var _elements = _ajaxHolder.find('li:visible');
			var _currentIndex = _elements.index(_elements.filter('.'+_hClass).eq(0));
			if(_currentIndex < 0) _currentIndex = -1;
			_keyboardFocus = true;

			if(direction) {
				if(_currentIndex < _elements.length-1) _currentIndex++;
			} else {
				if(_currentIndex > 0) _currentIndex--;
				else _currentIndex = 0;
			}
			_elements.removeClass(_hClass).eq(_currentIndex).addClass(_hClass);
		}

		// keyboard handle
		_form.submit(function(){
			// if(_keyboardFocus) return false;
			return true; // always allow form to be submitted
		})
		_input.keydown(function(e){
			if (!e) e = window.event;
			if (e.keyCode == 13) {
				if (_ajaxHolder.is(':hidden')) {
					_keyboardFocus = false;
					_form.trigger('submit');
					return;
				}
				
				var _elements = _ajaxHolder.find('li:visible');
				var _cIndex = _elements.index(_elements.filter('.'+_hClass).eq(0));
				
				_ajaxHolder.hide();
				
				if (_cIndex >= 0) {
					lw = lastWord(_input.val());
					val = _input.val();
					rep = _elements.eq(_cIndex).find('a').html();
					if (rep.trim().length > 0) {
						val = val.replace(new RegExp(lw+"$"), rep);
						_input.val(val);
					}
				}
				
//				_input.val(_elements.eq(_cIndex).find('a').html());
				_keyboardFocus = true;
				

				
				//_input.val(_elements.eq(_cIndex).find('a').text()); 
				return false;
			}
			if (e.keyCode == 27) {	// esc
				_ajaxHolder.hide();
				_keyboardFocus = false;
			}
			if (e.keyCode == 38) {	// up arrow
				keyboardNav(false);
			}
			if (e.keyCode == 40) {	// down arrow
				keyboardNav(true);
			}
		})
	})
}

function initOpenClose(){
	jQuery('.slide-block').openClose({
		slideBlock: '.slide-block-holder'
	})
}

// horizontal gallery init
function initCycleGallery() {
	// settings
	var _activeClass = 'active';
	var _switchTime = 5000;
	var _speed = 250;

	jQuery('.slide-gallery').each(function(){
		// gallery options
		var _holder = jQuery(this);
		var _btnPrev = _holder.find('a.link-prev');
		var _btnNext = _holder.find('a.link-next');
		var _pagination = _holder.find('ul.menu li');
		var _slidesHolder = _holder.find('div.gallery-holder');
		var _slider = _slidesHolder.find('ul');
		var _slides = _slider.children();
		var _slidesCount = _slides.length;
		var _currentIndex = 0;
		var _sumWidth = 0;
		var _animating = false;
		var _autoRotation = false;
		var _rotateDirection = nextSlide;
		var _pauseOnHover = true;
		var _timer;
		
		_holder.css({position: 'relative'});
		_slider.css({position: 'relative'});
		if(_pagination){_pagination.eq(_currentIndex).addClass(_activeClass);}
		// gallery init
		_slides.each(function(ind){
			_sumWidth += jQuery(this).attr('rel',ind).outerWidth(true);
		});
		if (_sumWidth < _slidesHolder.width()) return;
//		_slider.prepend(_slides.clone()).append(_slides.clone()); // why is this?
//		_slider.css({marginLeft:-_sumWidth});
		
		if(_autoRotation){autoRotate();}
		
		function autoRotate() {
			if(_timer) clearInterval(_timer);
			if(_autoRotation){
				_timer = setInterval(_rotateDirection, _switchTime);
			}
		}
		
		if(_pauseOnHover){
			_holder.hover(function(){
				if(_timer) clearInterval(_timer);
			},function(){
				autoRotate();
			});
		}
		
		// gallery control
		_btnPrev.click(prevSlide);
		_btnNext.click(nextSlide);

		// gallery animation
		function prevSlide() {
			if(!_animating) {
//				_currentIndex--;
				_currentIndex = _currentIndex - 5;
				switchSlide();
			}
			return false;
		}
		function nextSlide() {
			if(!_animating) {
//				_currentIndex++;
				_currentIndex = _currentIndex + 5;
				switchSlide();
			}

			return false;
		}

		function switchSlide() {
			_animating = true;
			var offset = 0;
			
			
//			if(_currentIndex>=0) offset = -_sumWidth- _slider.children().eq(_currentIndex ).position().left
//			else offset = -_slider.children().eq(_slidesCount+_currentIndex).position().left;
			if(_currentIndex>=0) offset = (_slider.children().eq(_currentIndex ).position().left) * -1
			else offset = (_slider.children().eq(_slidesCount+_currentIndex).position().left) * -1;
			
			
			_slider.animate({marginLeft:offset},{duration:_speed, queue:false,complete:function(){
				if(Math.abs(_currentIndex) == _slidesCount) {
					_currentIndex = 0;
					_slider.css({marginLeft:-_sumWidth});
				}
				_animating = false;
			}});
			if(_pagination.length){
				_pagination.removeClass(_activeClass);
				_pagination.eq(_currentIndex).addClass(_activeClass);
				if(_currentIndex > _pagination.length - 1){
					_pagination.eq(0).addClass(_activeClass);
				}
			}
		}

		// event handler
		_holder.bind('scrollto',function(e,h){
			if(!_animating) {
				if(_currentIndex == _slidesCount-1) _currentIndex = _slidesCount;
				else _currentIndex = h.num;
				switchSlide();
			}
		})

		// clone events
		_slider.children().each(function(){
			var link = jQuery(this);
			var ind = parseInt(link.attr('rel'));
			link.click(function(){
				_holder.trigger('setslide',{num:ind});
				return false;
			})
		})
	});
}

function initTooltips(){
	var _body = jQuery('body');
	jQuery('.tooltip-block').each(function(){
		var _holder = jQuery(this);
		var _tooltip = jQuery('.tooltip', _holder).appendTo(_body).hide();
		var _t;
		
		_holder.mouseenter(function(){
			if (_t) clearTimeout(_t);
			_t = setTimeout(function(){
				_tooltip.show();
				_body.bind('mousemove', function(e){
					_tooltip.css({
						'top': e.pageY - _tooltip.height() - 10,
						'left': e.pageX - _tooltip.innerWidth()/2
					})
				});
			})
		}).mouseleave(function(){
			if (_t) clearTimeout(_t);
			_t = setTimeout(function(){
				_tooltip.hide();
				_body.unbind('mousemove');
			})
		})
	})
}

jQuery.fn.openClose = function(_opt){
	var _options = jQuery.extend({
		linkSlide: 'a.open-close', //if parent - slide on click or hover on parent block
		slideBlock: '.slide',
		openClass : 'active',
		openLinkClass: false,
		textOpen : false,
		textClose : false,
		duration: 500,
		event: 'click', //click or hover
		beforeOpen: false,
		beforeClose: false,
		afterOpen: false,
		afterClose: false
	}, _opt);
	var _enabledClass = 'slide-enabled';

	return this.each(function(){
		if (jQuery(this).hasClass(_enabledClass)) return;
		var _parentSlide = jQuery(this),
			_slideBlock = jQuery(_options.slideBlock, _parentSlide),
			_openClassS = _options.openClass,
			_textOpenS = _options.textOpen,
			_textCloseS = _options.textClose,
			_durationSlide = _options.duration,
			_openLinkClass = _options.openLinkClass,
			beforeOpen = _options.beforeOpen,
			beforeClose = _options.beforeClose,
			afterOpen = _options.afterOpen,
			afterClose = _options.afterClose,
			_t, _linkSlide;
			if (_options.linkSlide == 'parent') _linkSlide = _parentSlide
				else _linkSlide = jQuery(_options.linkSlide, _parentSlide);
		
		_parentSlide.addClass(_enabledClass);
		var _slideH = _slideBlock.height();
		if (!_parentSlide.is('.'+_openClassS)) {
			if (_options.event != 'click') _slideBlock.css({
				'display':'none',
				'height':0
			});
			else _slideBlock.hide();
		}

		//slide on click
		if (_options.event == 'click'){
			_linkSlide.click(function(){
				if (_parentSlide.is('.'+_openClassS)) {
					_parentSlide.trigger('closeStart');
					if (typeof(beforeClose) == 'function') beforeClose(_parentSlide, _linkSlide, _slideBlock);
					if (_openLinkClass) _linkSlide.removeClass(_openLinkClass);
					_slideBlock.slideUp(_durationSlide, function(){
						_parentSlide.removeClass(_openClassS);
						_parentSlide.trigger('closeEnd');
						if (typeof(afterClose) == 'function') afterClose(_parentSlide, _linkSlide, _slideBlock);
					});
					if (_textOpenS) jQuery(this).text(_textOpenS);
				} else {
					_parentSlide.trigger('openStart');
					if (typeof(beforeOpen) == 'function') beforeOpen(_parentSlide, _linkSlide, _slideBlock);
					if (_openLinkClass) _linkSlide.addClass(_openLinkClass);
					_slideBlock.slideDown(_durationSlide, function(){
						_parentSlide.addClass(_openClassS);
						_parentSlide.trigger('openEnd');
						if (typeof(afterOpen) == 'function') afterOpen(_parentSlide, _linkSlide, _slideBlock);
					});
					if (_textCloseS) jQuery(this).text(_textCloseS);
				}
				return false;
			});
		}

		//slide on hover
		else if (_options.event == 'hover'){
			_parentSlide.removeClass(_openClassS);
			var _t;
			_parentSlide.mouseleave(function(){
				if (_t) clearTimeout(_t);
				_t = setTimeout(function(){
					_parentSlide.trigger('closeStart');
					if (_openLinkClass) _linkSlide.removeClass(_openLinkClass);
					_slideBlock.stop().animate({
						'height':0
					}, _durationSlide, function(){
						_parentSlide.removeClass(_openClassS);
						_parentSlide.trigger('closeEnd')
					});
					if (_textOpenS) jQuery(this).text(_textOpenS);
				}, 100)
			}).mouseenter(function(){
				if (_t) clearTimeout(_t);
				_t = setTimeout(function(){
					_parentSlide.trigger('openStart');
					if (_openLinkClass) _linkSlide.addClass(_openLinkClass);
					_slideBlock.show().stop().animate({
						'height': _slideH
					}, _durationSlide, function(){
						_parentSlide.addClass(_openClassS);
						_parentSlide.trigger('openEnd')
					});
					if (_textCloseS) jQuery(this).text(_textCloseS);
				}, 100)
			})
		}
	})
}

function initFancybox(){
	jQuery('.slide-gallery .gallery-holder ul li a').fancybox({
		overlayColor: '#000',
		onComplete: function(){
			if (parseInt(jQuery('#fancybox-wrap').css('top')) < 0) jQuery('#fancybox-wrap').css('top', 5)
		}
	});

	
	jQuery('.gallery-opener').fancybox({
		overlayColor: '#fff',
		autoScale: true,
		autoDimensions: true,
		centerOnScroll: true,
		scrolling: 'no',
//		padding: 0,
//		margin:0,
		onComplete: function(){
//			if (_activeSlide) jQuery('#gallery-box .photo-switcher li').eq(_activeSlide).trigger('click');
			if (parseInt(jQuery('#fancybox-wrap').css('top')) < 0) jQuery('#fancybox-wrap').css('top', 5);
		},
		onClose: function(){
//			if (_activeSlide) jQuery('#fade-gallery .photo-switcher li').eq(_activeSlide).trigger('click');
		}
	});
//	jQuery('.photo-lightbox ul.photo-switcher li').click(function () {
//		$.fancybox.resize();
//	});
}

// slideshow init
function initSlideShow() {
	jQuery('div.slide-box').fadeGallery({
		slideElements:'.slide-list > li',
		pagerLinks:'.switcher ul li a',
		pauseOnHover:true,
		autoRotation:true,
		autoHeight:false,
		switchTime:5000,
		duration:5000,
		event:'click'
	});
	jQuery('div.fade-gallery').fadeGallery({
		slideElements:'.photo-list > li',
		pagerLinks:'.photo-switcher li',
		onChange: function(_this, _slides, _prev, _next){
			if (jQuery('#gallery-box').length == 0) return;
			_activeSlide = _next;
		}
	});
	if (jQuery('#gallery-box').length > 0) jQuery('#gallery-box').parents('.photo-lightbox').show();
	
	jQuery('#gallery-box').fadeGallery({
		slideElements:'.photo-list > li',
		pagerLinks:'.photo-switcher li',
		onChange: function(_this, _slides, _prev, _next){
			_activeSlide = _next;
			_slides.eq(_next).css({
				'width': _slides.eq(_next).find('img').width(),
				'height': _slides.eq(_next).find('img').height() + _slides.eq(_next).find('.text-section').innerHeight()
			})
			jQuery('#gallery-box .photo-list, #gallery-box .container-section').css({
				'height': _slides.eq(_next).innerHeight(),
				'width':_slides.eq(_next).width()
			});
			jQuery('#gallery-box, #gallery-box .photo-block').css({
				'width':_slides.eq(_next).innerWidth()
			});
			jQuery('#fancybox-content, #fancybox-wrap').css({
				'width':jQuery('#gallery-box').innerWidth()
			});
			resizeFancy();
		},
		afterInit: function(_this, _slides, _prev, _next){
			_slides.eq(_next).css({
				'width': _slides.eq(_next).find('img').width(),
				'height': _slides.eq(_next).find('img').height() + _slides.eq(_next).find('.text-section').innerHeight()
			})
			jQuery('#gallery-box .photo-list, #gallery-box .container-section').css('height', _slides.eq(_next).innerHeight());
		}
	});
	if (jQuery('#gallery-box').length > 0) jQuery('#gallery-box').parents('.photo-lightbox').hide();
}
var _activeSlide = false;

// popups function
function initPopups() {
	var _zIndex = 1000;
	var _fadeSpeed = jQuery.browser.msie ? 0 : 350;
	var _faderOpacity = 0.65;
	var _faderBackground = '#fff';
	var _faderId = 'lightbox-overlay';
	var _closeLink = 'a.btn-close, a.close, a.cancel';
	var _fader;
	var _lightbox = null;
	var _openers = jQuery('a.open-popup');
	var _page = jQuery(document);
	var _minWidth = jQuery('body > div:eq(0)').outerWidth();
	var _scroll = false;

	// init popup fader
	_fader = jQuery('#'+_faderId);
	if(!_fader.length) {
		_fader = jQuery('<div />');
		_fader.attr('id',_faderId);
		jQuery('body').append(_fader);
	}
	_fader.css({
		opacity:_faderOpacity,
		backgroundColor:_faderBackground,
		position:'absolute',
		overflow:'hidden',
		display:'none',
		top:0,
		left:0,
		zIndex:_zIndex
	});

	// IE6 iframe fix
	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 positioning function
	function positionLightbox() {
		if(_lightbox) {
			var _windowHeight = jQuery(window).height();
			var _windowWidth = jQuery(window).width();
			var _lightboxWidth = _lightbox.outerWidth();
			var _lightboxHeight = _lightbox.outerHeight();
			var _pageHeight = _page.height();

			if (_windowWidth < _minWidth) _fader.css('width',_minWidth);
				else _fader.css('width','100%');
			if (_windowHeight < _pageHeight) _fader.css('height',_pageHeight);
				else _fader.css('height',_windowHeight);

			_lightbox.css({
				position:'absolute',
				zIndex:(_zIndex+1)
			});

			// vertical position
			if (_windowHeight > _lightboxHeight) {
				_lightbox.css({
					position:'absolute',
					top: parseInt(jQuery(window).scrollTop()) + (_windowHeight - _lightboxHeight) / 2
				});
			} else {
				var _faderHeight = _fader.height();
				if(_faderHeight < _lightboxHeight) _fader.css('height',_lightboxHeight);
				if (!_scroll) {
					if (_faderHeight - _lightboxHeight > parseInt(jQuery(window).scrollTop())) {
						_faderHeight = parseInt(jQuery(window).scrollTop())
						_scroll = _faderHeight;
					} else {
						_scroll = _faderHeight - _lightboxHeight;
					}
				}
				_lightbox.css({
					position:'absolute',
					top: _scroll
				});
			}

			// horizontal position
			if (_fader.width() > _lightbox.outerWidth()) _lightbox.css({left:(_fader.width() - _lightbox.outerWidth()) / 2});
			else _lightbox.css({left: 0});
		}
	}

	// show/hide lightbox
	function toggleState(_state) {
		if(!_lightbox) return;
		if(_state) {
			_fader.fadeIn(_fadeSpeed,function(){
				_lightbox.fadeIn(_fadeSpeed);
			});
			_scroll = false;
			positionLightbox();
		} else {
			_lightbox.fadeOut(_fadeSpeed,function(){
				_fader.fadeOut(_fadeSpeed);
				_scroll = false;
			});
		}
	}

	// popup actions
	function initPopupActions(_obj) {
		if(!_obj.get(0).jsInit) {
			_obj.get(0).jsInit = true;
			// close link
			_obj.find(_closeLink).click(function(){
				_lightbox = _obj;
				toggleState(false);
				return false;
			});
		}
	}

	// lightbox openers
	_openers.each(function(){
		var _opener = jQuery(this);
		var _target = _opener.attr('href');
		var _reg = new RegExp(/\#[^\s]+/gi);

		// popup load type - ajax or static
		if(!_reg.test(_target)) {
			_opener.click(function(){
				// ajax load
				if(jQuery('div[rel*="'+_target+'"]').length == 0) {
					jQuery.ajax({
						url: _target,
						type: "POST",
						dataType: "html",
						success: function(msg){
							// append loaded popup
							_lightbox = jQuery(msg);
							_lightbox.find('img').load(positionLightbox)
							_lightbox.attr('rel',_target).hide().css({
								position:'absolute',
								zIndex:(_zIndex+1),
								top: -9999,
								left: -9999
							});
							jQuery('body').append(_lightbox);

							// init js for lightbox
							initPopupActions(_lightbox);

							// show lightbox
							toggleState(true);
						},
						error: function(msg){
							alert('AJAX error!');
							return false;
						}
					});
				} else {
					_lightbox = jQuery('div[rel*="'+_target+'"]');
					toggleState(true);
				}
				return false;
			});
		} else {
			if(jQuery(_target).length) {
				// init actions for popup
				var _popup = jQuery(_target);
				initPopupActions(_popup);
				_popup.hide();
					// open popup
					_opener.click(function(){
					if(_lightbox) {
						_lightbox.fadeOut(_fadeSpeed,function(){
							_lightbox = _popup.hide();
							toggleState(true);
						})
					} else {
						_lightbox = _popup.hide();
						toggleState(true);
					}
					return false;
				});
			}
		}
	});

	// event handlers
	jQuery(window).resize(positionLightbox);
	jQuery(window).scroll(positionLightbox);
	jQuery(document).keydown(function (e) {
		if (!e) evt = window.event;
		if (e.keyCode == 27) {
			toggleState(false);
		}
	})
	_fader.click(function(){
		if(!_fader.is(':animated')) toggleState(false);
		return false;
	})
};

// slideshow plugin
jQuery.fn.fadeGallery = function(_options){
	var _options = jQuery.extend({
		slideElements:'div.slideset > div',
		pagerLinks:'div.pager a',
		btnNext:'a.next',
		btnPrev:'a.prev',
		btnPlayPause:'a.play-pause',
		btnPlay:'a.play',
		btnPause:'a.pause',
		pausedClass:'paused',
		disabledClass: 'disabled',
		playClass:'playing',
		activeClass:'active',
		loadingClass:'ajax-loading',
		loadedClass:'slide-loaded',
		dynamicImageLoad:false,
		dynamicImageLoadAttr:'alt',
		currentNum:false,
		allNum:false,
		startSlide:null,
		noCircle:false,
		pauseOnHover:true,
		autoRotation:false,
		autoHeight:false,
		onBeforeFade:false,
		onAfterFade:false,
		onChange:false,
		disableWhileAnimating:false,
		switchTime:3000,
		duration:650,
		event:'click',
		afterInit: false
	},_options);

	return this.each(function(){
		// gallery options
		if(this.slideshowInit) return; else this.slideshowInit;
		var _this = jQuery(this);
		var _slides = jQuery(_options.slideElements, _this);
		var _pagerLinks = jQuery(_options.pagerLinks, _this);
		var _btnPrev = jQuery(_options.btnPrev, _this);
		var _btnNext = jQuery(_options.btnNext, _this);
		var _btnPlayPause = jQuery(_options.btnPlayPause, _this);
		var _btnPause = jQuery(_options.btnPause, _this);
		var _btnPlay = jQuery(_options.btnPlay, _this);
		var _pauseOnHover = _options.pauseOnHover;
		var _dynamicImageLoad = _options.dynamicImageLoad;
		var _dynamicImageLoadAttr = _options.dynamicImageLoadAttr;
		var _autoRotation = _options.autoRotation;
		var _activeClass = _options.activeClass;
		var _loadingClass = _options.loadingClass;
		var _loadedClass = _options.loadedClass;
		var _disabledClass = _options.disabledClass;
		var _pausedClass = _options.pausedClass;
		var _playClass = _options.playClass;
		var _autoHeight = _options.autoHeight;
		var _duration = _options.duration;
		var _switchTime = _options.switchTime;
		var _controlEvent = _options.event;
		var _currentNum = (_options.currentNum ? jQuery(_options.currentNum, _this) : false);
		var _allNum = (_options.allNum ? jQuery(_options.allNum, _this) : false);
		var _startSlide = _options.startSlide;
		var _noCycle = _options.noCircle;
		var _onChange = _options.onChange;
		var _onBeforeFade = _options.onBeforeFade;
		var _onAfterFade = _options.onAfterFade;
		var _disableWhileAnimating = _options.disableWhileAnimating;
		var _afterInit = _options.afterInit;

		// gallery init
		var _anim = false;
		var _hover = false;
		var _prevIndex = 0;
		var _currentIndex = 0;
		var _slideCount = _slides.length;
		var _timer;
		if(_slideCount < 2) return;

		_prevIndex = _slides.index(_slides.filter('.'+_activeClass));
		if(_prevIndex < 0) _prevIndex = _currentIndex = 0;
		else _currentIndex = _prevIndex;
		if(_startSlide != null) {
			if(_startSlide == 'random') _prevIndex = _currentIndex = Math.floor(Math.random()*_slideCount);
			else _prevIndex = _currentIndex = parseInt(_startSlide);
		}
		_slides.hide().eq(_currentIndex).show();
		if(_autoRotation) _this.removeClass(_pausedClass).addClass(_playClass);
		else _this.removeClass(_playClass).addClass(_pausedClass);

		// gallery control
		if(_btnPrev.length) {
			_btnPrev.bind(_controlEvent,function(){
				prevSlide();
				return false;
			});
		}
		if(_btnNext.length) {
			_btnNext.bind(_controlEvent,function(){
				nextSlide();
				return false;
			});
		}
		if(_pagerLinks.length) {
			_pagerLinks.each(function(_ind){
				jQuery(this).bind(_controlEvent,function(){
					if(_currentIndex != _ind) {
						if(_disableWhileAnimating && _anim) return;
						_prevIndex = _currentIndex;
						_currentIndex = _ind;
						switchSlide();
					}
					return false;
				});
			});
		}

		// play pause section
		if(_btnPlayPause.length) {
			_btnPlayPause.bind(_controlEvent,function(){
				if(_this.hasClass(_pausedClass)) {
					_this.removeClass(_pausedClass).addClass(_playClass);
					_autoRotation = true;
					autoSlide();
				} else {
					_autoRotation = false;
					if(_timer) clearTimeout(_timer);
					_this.removeClass(_playClass).addClass(_pausedClass);
				}
				return false;
			});
		}
		if(_btnPlay.length) {
			_btnPlay.bind(_controlEvent,function(){
				_this.removeClass(_pausedClass).addClass(_playClass);
				_autoRotation = true;
				autoSlide();
				return false;
			});
		}
		if(_btnPause.length) {
			_btnPause.bind(_controlEvent,function(){
				_autoRotation = false;
				if(_timer) clearTimeout(_timer);
				_this.removeClass(_playClass).addClass(_pausedClass);
				return false;
			});
		}

		// dynamic image loading (swap from ATTRIBUTE)
		function loadSlide(slide) {
			if(!slide.hasClass(_loadingClass) && !slide.hasClass(_loadedClass)) {
				var images = slide.find(_dynamicImageLoad) // pass selector here
				var imagesCount = images.length;
				if(imagesCount) {
					slide.addClass(_loadingClass);
					images.each(function(){
						var img = this;
						img.onload = function(){
							img.loaded = true;
							img.onload = null;
							setTimeout(reCalc,_duration);
						}
						img.setAttribute('src', img.getAttribute(_dynamicImageLoadAttr));
						img.setAttribute(_dynamicImageLoadAttr,'');
					}).css({opacity:0});

					function reCalc() {
						var cnt = 0;
						images.each(function(){
							if(this.loaded) cnt++;
						});
						if(cnt == imagesCount) {
							slide.removeClass(_loadingClass);
							images.animate({opacity:1},{duration:_duration,complete:function(){
								if(jQuery.browser.msie && jQuery.browser.version < 9) jQuery(this).css({opacity:'auto'})
							}});
							slide.addClass(_loadedClass)
						}
					}
				}
			}
		}

		// gallery animation
		function prevSlide() {
			if(_disableWhileAnimating && _anim) return;
			_prevIndex = _currentIndex;
			if(_currentIndex > 0) _currentIndex--;
			else {
				if(_noCycle) return;
				else _currentIndex = _slideCount-1;
			}
			switchSlide();
		}
		function nextSlide() {
			if(_disableWhileAnimating && _anim) return;
			_prevIndex = _currentIndex;
			if(_currentIndex < _slideCount-1) _currentIndex++;
			else {
				if(_noCycle) return;
				else _currentIndex = 0;
			}
			switchSlide();
		}
		function refreshStatus() {
			if(_dynamicImageLoad) loadSlide(_slides.eq(_currentIndex));
			if(_pagerLinks.length) _pagerLinks.removeClass(_activeClass).eq(_currentIndex).addClass(_activeClass);
			if(_currentNum) _currentNum.text(_currentIndex+1);
			if(_allNum) _allNum.text(_slideCount);
			_slides.eq(_prevIndex).removeClass(_activeClass);
			_slides.eq(_currentIndex).addClass(_activeClass);
			if(_noCycle) {
				if(_btnPrev.length) {
					if(_currentIndex == 0) _btnPrev.addClass(_disabledClass);
					else _btnPrev.removeClass(_disabledClass);
				}
				if(_btnNext.length) {
					if(_currentIndex == _slideCount-1) _btnNext.addClass(_disabledClass);
					else _btnNext.removeClass(_disabledClass);
				}
			}
			if(typeof _onChange === 'function') {
				_onChange(_this, _slides, _prevIndex, _currentIndex);
			}
		}
		function switchSlide() {
			_anim = true;
			if(typeof _onBeforeFade === 'function') _onBeforeFade(_this, _slides, _prevIndex, _currentIndex);
			_slides.eq(_prevIndex).fadeOut(_duration,function(){
				_anim = false;
			});
			_slides.eq(_currentIndex).fadeIn(_duration,function(){
				if(typeof _onAfterFade === 'function') _onAfterFade(_this, _slides, _prevIndex, _currentIndex);
			});
			if(_autoHeight) _slides.eq(_currentIndex).parent().animate({height:_slides.eq(_currentIndex).outerHeight(true)},{duration:_duration,queue:false});
			refreshStatus();
			autoSlide();
		}

		// autoslide function
		function autoSlide() {
			if(!_autoRotation || _hover) return;
			if(_timer) clearTimeout(_timer);
			_timer = setTimeout(nextSlide,_switchTime+_duration);
		}
		if(_pauseOnHover) {
			_this.hover(function(){
				_hover = true;
				if(_timer) clearTimeout(_timer);
			},function(){
				_hover = false;
				autoSlide();
			});
		}
		refreshStatus();
		autoSlide();
		if(typeof _afterInit === 'function') {
			_afterInit(_this, _slides, _prevIndex, _currentIndex);
		}
	});
}

function initPage()
{
/*	clearFormFields({
		clearInputs: true,
		clearTextareas: true,
		passwordFieldText: true,
		addClassFocus: "focus",
		filterClass: "default"
	});*/
	
	limitList = jQuery('form.selected-form select');
	
	limitList.change( function() {
		window.location.href += "&rows=" + $(this).val();
	});
	
	jQuery('.search-form #edit-andor').click( function() {
		
		var checked = $('.search-form #edit-andor').is(':checked');
		var label = $('.search-form label.option');
		if (checked) {
//			label.html( label.html().replace(/alle/i,"1 of meerdere") );
		} else {
//			label.html( label.html().replace(/1 of meerdere/i,"alle") );
		}
		// alert(label.html());
	});
}
function clearFormFields(o)
{
	if (o.clearInputs == null) o.clearInputs = true;
	if (o.clearTextareas == null) o.clearTextareas = true;
	if (o.passwordFieldText == null) o.passwordFieldText = false;
	if (o.addClassFocus == null) o.addClassFocus = false;
	if (!o.filterClass) o.filterClass = "default";
	
		jQuery('form.clear-inputs').each(function(){
			var _form = jQuery(this);
			if(o.clearInputs) {
				var inputs = _form.get(0).getElementsByTagName('input');
				for (var i = 0; i < inputs.length; i++ ) {
					if((inputs[i].type == "text" || inputs[i].type == "password") && inputs[i].className.indexOf(o.filterClass) == -1) {
						inputs[i].valueHtml = inputs[i].value;
						inputs[i].onfocus = function ()	{
							if(this.valueHtml == this.value) this.value = "";
							if(this.fake) {
								inputsSwap(this, this.previousSibling);
								this.previousSibling.focus();
							}
							if(o.addClassFocus && !this.fake) {
								this.className += " " + o.addClassFocus;
								this.parentNode.className += " parent-" + o.addClassFocus;
							}
						}
						inputs[i].onblur = function () {
							if(this.value == "") {
								this.value = this.valueHtml;
								if(o.passwordFieldText && this.type == "password") inputsSwap(this, this.nextSibling);
							}
							if(o.addClassFocus) {
								this.className = this.className.replace(o.addClassFocus, "");
								this.parentNode.className = this.parentNode.className.replace("parent-"+o.addClassFocus, "");
							}
						}
						if(o.passwordFieldText && inputs[i].type == "password") {
							var fakeInput = document.createElement("input");
							fakeInput.type = "text";
							fakeInput.value = inputs[i].value;
							fakeInput.className = inputs[i].className;
							fakeInput.fake = true;
							inputs[i].parentNode.insertBefore(fakeInput, inputs[i].nextSibling);
							inputsSwap(inputs[i], null);
						}
					}
				}
			}
			if(o.clearTextareas) {
				var textareas = _form.get(0).getElementsByTagName("textarea");
				for(var i=0; i<textareas.length; i++) {
					if(textareas[i].className.indexOf(o.filterClass) == -1) {
						textareas[i].valueHtml = textareas[i].value;
						textareas[i].onfocus = function() {
							if(this.value == this.valueHtml) this.value = "";
							if(o.addClassFocus) {
								this.className += " " + o.addClassFocus;
								this.parentNode.className += " parent-" + o.addClassFocus;
							}
						}
						textareas[i].onblur = function() {
							if(this.value == "") this.value = this.valueHtml;
							if(o.addClassFocus) {
								this.className = this.className.replace(o.addClassFocus, "");
								this.parentNode.className = this.parentNode.className.replace("parent-"+o.addClassFocus, "");
							}
						}
					}
				}
			}
		});
		
		
	function inputsSwap(el, el2) {
		if(el) el.style.display = "none";
		if(el2) el2.style.display = "inline";
	}
}
	
/*
 * FancyBox - jQuery Plugin
 * Simple and fancy lightbox alternative
 *
 * Examples and documentation at: http://fancybox.net
 * 
 * Copyright (c) 2008 - 2010 Janis Skarnelis
 * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
 *
 * Version: 1.3.4 (11/11/2010)
 * Requires: jQuery v1.3+
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
;(function(B){var L,T,Q,M,d,m,J,A,O,z,C=0,H={},j=[],e=0,G={},y=[],f=null,o=new Image(),i=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,k=/[^\.]\.(swf)\s*$/i,p,N=1,h=0,t="",b,c,P=false,s=B.extend(B("<div/>")[0],{prop:0}),S=B.browser.msie&&B.browser.version<7&&!window.XMLHttpRequest,r=function(){T.hide();o.onerror=o.onload=null;if(f){f.abort()}L.empty()},x=function(){if(false===H.onError(j,C,H)){T.hide();P=false;return}H.titleShow=false;H.width="auto";H.height="auto";L.html('<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>');n()},w=function(){var Z=j[C],W,Y,ab,aa,V,X;r();H=B.extend({},B.fn.fancybox.defaults,(typeof B(Z).data("fancybox")=="undefined"?H:B(Z).data("fancybox")));X=H.onStart(j,C,H);if(X===false){P=false;return}else{if(typeof X=="object"){H=B.extend(H,X)}}ab=H.title||(Z.nodeName?B(Z).attr("title"):Z.title)||"";if(Z.nodeName&&!H.orig){H.orig=B(Z).children("img:first").length?B(Z).children("img:first"):B(Z)}if(ab===""&&H.orig&&H.titleFromAlt){ab=H.orig.attr("alt")}W=H.href||(Z.nodeName?B(Z).attr("href"):Z.href)||null;if((/^(?:javascript)/i).test(W)||W=="#"){W=null}if(H.type){Y=H.type;if(!W){W=H.content}}else{if(H.content){Y="html"}else{if(W){if(W.match(i)){Y="image"}else{if(W.match(k)){Y="swf"}else{if(B(Z).hasClass("iframe")){Y="iframe"}else{if(W.indexOf("#")===0){Y="inline"}else{Y="ajax"}}}}}}}if(!Y){x();return}if(Y=="inline"){Z=W.substr(W.indexOf("#"));Y=B(Z).length>0?"inline":"ajax"}H.type=Y;H.href=W;H.title=ab;if(H.autoDimensions){if(H.type=="html"||H.type=="inline"||H.type=="ajax"){H.width="auto";H.height="auto"}else{H.autoDimensions=false}}if(H.modal){H.overlayShow=true;H.hideOnOverlayClick=false;H.hideOnContentClick=false;H.enableEscapeButton=false;H.showCloseButton=false}H.padding=parseInt(H.padding,10);H.margin=parseInt(H.margin,10);L.css("padding",(H.padding+H.margin));B(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){B(this).replaceWith(m.children())});switch(Y){case"html":L.html(H.content);n();break;case"inline":if(B(Z).parent().is("#fancybox-content")===true){P=false;return}B('<div class="fancybox-inline-tmp" />').hide().insertBefore(B(Z)).bind("fancybox-cleanup",function(){B(this).replaceWith(m.children())}).bind("fancybox-cancel",function(){B(this).replaceWith(L.children())});B(Z).appendTo(L);n();break;case"image":P=false;B.fancybox.showActivity();o=new Image();o.onerror=function(){x()};o.onload=function(){P=true;o.onerror=o.onload=null;F()};o.src=W;break;case"swf":H.scrolling="no";aa='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+H.width+'" height="'+H.height+'"><param name="movie" value="'+W+'"></param>';V="";B.each(H.swf,function(ac,ad){aa+='<param name="'+ac+'" value="'+ad+'"></param>';V+=" "+ac+'="'+ad+'"'});aa+='<embed src="'+W+'" type="application/x-shockwave-flash" width="'+H.width+'" height="'+H.height+'"'+V+"></embed></object>";L.html(aa);n();break;case"ajax":P=false;B.fancybox.showActivity();H.ajax.win=H.ajax.success;f=B.ajax(B.extend({},H.ajax,{url:W,data:H.ajax.data||{},dataType:"text",error:function(ac,ae,ad){if(ac.status>0){x()}},success:function(ad,af,ac){var ae=typeof ac=="object"?ac:f;if(ae.status==200||ae.status===0){if(typeof H.ajax.win=="function"){X=H.ajax.win(W,ad,af,ac);if(X===false){T.hide();return}else{if(typeof X=="string"||typeof X=="object"){ad=X}}}L.html(ad);n()}}}));break;case"iframe":E();break}},n=function(){var V=H.width,W=H.height;if(V.toString().indexOf("%")>-1){V=parseInt((B(window).width()-(H.margin*2))*parseFloat(V)/100,10)+"px"}else{V=V=="auto"?"auto":V+"px"}if(W.toString().indexOf("%")>-1){W=parseInt((B(window).height()-(H.margin*2))*parseFloat(W)/100,10)+"px"}else{W=W=="auto"?"auto":W+"px"}L.wrapInner('<div style="width:'+V+";height:"+W+";overflow: "+(H.scrolling=="auto"?"auto":(H.scrolling=="yes"?"scroll":"hidden"))+';position:relative;"></div>');H.width=L.width();H.height=L.height();E()},F=function(){H.width=o.width;H.height=o.height;B("<img />").attr({id:"fancybox-img",src:o.src,alt:H.title}).appendTo(L);E()},E=function(){var W,V;T.hide();if(M.is(":visible")&&false===G.onCleanup(y,e,G)){B.event.trigger("fancybox-cancel");P=false;return}P=true;B(m.add(Q)).unbind();B(window).unbind("resize.fb scroll.fb");B(document).unbind("keydown.fb");if(M.is(":visible")&&G.titlePosition!=="outside"){M.css("height",M.height())}y=j;e=C;G=H;if(G.overlayShow){Q.css({"background-color":G.overlayColor,opacity:G.overlayOpacity,cursor:G.hideOnOverlayClick?"pointer":"auto",height:B(document).height()});if(!Q.is(":visible")){if(S){B("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"})}Q.show()}}else{Q.hide()}c=R();l();if(M.is(":visible")){B(J.add(O).add(z)).hide();W=M.position(),b={top:W.top,left:W.left,width:M.width(),height:M.height()};V=(b.width==c.width&&b.height==c.height);m.fadeTo(G.changeFade,0.3,function(){var X=function(){m.html(L.contents()).fadeTo(G.changeFade,1,v)};B.event.trigger("fancybox-change");m.empty().removeAttr("filter").css({"border-width":G.padding,width:c.width-G.padding*2,height:H.autoDimensions?"auto":c.height-h-G.padding*2});if(V){X()}else{s.prop=0;B(s).animate({prop:1},{duration:G.changeSpeed,easing:G.easingChange,step:U,complete:X})}});return}M.removeAttr("style");m.css("border-width",G.padding);if(G.transitionIn=="elastic"){b=I();m.html(L.contents());M.show();if(G.opacity){c.opacity=0}s.prop=0;B(s).animate({prop:1},{duration:G.speedIn,easing:G.easingIn,step:U,complete:v});return}if(G.titlePosition=="inside"&&h>0){A.show()}m.css({width:c.width-G.padding*2,height:H.autoDimensions?"auto":c.height-h-G.padding*2}).html(L.contents());M.css(c).fadeIn(G.transitionIn=="none"?0:G.speedIn,v)},D=function(V){if(V&&V.length){if(G.titlePosition=="float"){return'<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">'+V+'</td><td id="fancybox-title-float-right"></td></tr></table>'}return'<div id="fancybox-title-'+G.titlePosition+'">'+V+"</div>"}return false},l=function(){t=G.title||"";h=0;A.empty().removeAttr("style").removeClass();if(G.titleShow===false){A.hide();return}t=B.isFunction(G.titleFormat)?G.titleFormat(t,y,e,G):D(t);if(!t||t===""){A.hide();return}A.addClass("fancybox-title-"+G.titlePosition).html(t).appendTo("body").show();switch(G.titlePosition){case"inside":A.css({width:c.width-(G.padding*2),marginLeft:G.padding,marginRight:G.padding});h=A.outerHeight(true);A.appendTo(d);c.height+=h;break;case"over":A.css({marginLeft:G.padding,width:c.width-(G.padding*2),bottom:G.padding}).appendTo(d);break;case"float":A.css("left",parseInt((A.width()-c.width-40)/2,10)*-1).appendTo(M);break;default:A.css({width:c.width-(G.padding*2),paddingLeft:G.padding,paddingRight:G.padding}).appendTo(M);break}A.hide()},g=function(){if(G.enableEscapeButton||G.enableKeyboardNav){B(document).bind("keydown.fb",function(V){if(V.keyCode==27&&G.enableEscapeButton){V.preventDefault();B.fancybox.close()}else{if((V.keyCode==37||V.keyCode==39)&&G.enableKeyboardNav&&V.target.tagName!=="INPUT"&&V.target.tagName!=="TEXTAREA"&&V.target.tagName!=="SELECT"){V.preventDefault();B.fancybox[V.keyCode==37?"prev":"next"]()}}})}if(!G.showNavArrows){O.hide();z.hide();return}if((G.cyclic&&y.length>1)||e!==0){O.show()}if((G.cyclic&&y.length>1)||e!=(y.length-1)){z.show()}},v=function(){if(!B.support.opacity){m.get(0).style.removeAttribute("filter");M.get(0).style.removeAttribute("filter")}if(H.autoDimensions){m.css("height","auto")}M.css("height","auto");if(t&&t.length){A.show()}if(G.showCloseButton){J.show()}g();if(G.hideOnContentClick){m.bind("click",B.fancybox.close)}if(G.hideOnOverlayClick){Q.bind("click",B.fancybox.close)}B(window).bind("resize.fb",B.fancybox.resize);if(G.centerOnScroll){B(window).bind("scroll.fb",B.fancybox.center)}if(G.type=="iframe"){B('<iframe id="fancybox-frame" name="fancybox-frame'+new Date().getTime()+'" frameborder="0" hspace="0" '+(B.browser.msie?'allowtransparency="true""':"")+' scrolling="'+H.scrolling+'" src="'+G.href+'"></iframe>').appendTo(m)}M.show();P=false;B.fancybox.center();G.onComplete(y,e,G);K()},K=function(){var V,W;if((y.length-1)>e){V=y[e+1].href;if(typeof V!=="undefined"&&V.match(i)){W=new Image();W.src=V}}if(e>0){V=y[e-1].href;if(typeof V!=="undefined"&&V.match(i)){W=new Image();W.src=V}}},U=function(W){var V={width:parseInt(b.width+(c.width-b.width)*W,10),height:parseInt(b.height+(c.height-b.height)*W,10),top:parseInt(b.top+(c.top-b.top)*W,10),left:parseInt(b.left+(c.left-b.left)*W,10)};if(typeof c.opacity!=="undefined"){V.opacity=W<0.5?0.5:W}M.css(V);m.css({width:V.width-G.padding*2,height:V.height-(h*W)-G.padding*2})},u=function(){return[B(window).width()-(G.margin*2),B(window).height()-(G.margin*2),B(document).scrollLeft()+G.margin,B(document).scrollTop()+G.margin]},R=function(){var V=u(),Z={},W=G.autoScale,X=G.padding*2,Y;if(G.width.toString().indexOf("%")>-1){Z.width=parseInt((V[0]*parseFloat(G.width))/100,10)}else{Z.width=G.width+X}if(G.height.toString().indexOf("%")>-1){Z.height=parseInt((V[1]*parseFloat(G.height))/100,10)}else{Z.height=G.height+X}if(W&&(Z.width>V[0]||Z.height>V[1])){if(H.type=="image"||H.type=="swf"){Y=(G.width)/(G.height);if((Z.width)>V[0]){Z.width=V[0];Z.height=parseInt(((Z.width-X)/Y)+X,10)}if((Z.height)>V[1]){Z.height=V[1];Z.width=parseInt(((Z.height-X)*Y)+X,10)}}else{Z.width=Math.min(Z.width,V[0]);Z.height=Math.min(Z.height,V[1])}}Z.top=parseInt(Math.max(V[3]-20,V[3]+((V[1]-Z.height-40)*0.5)),10);Z.left=parseInt(Math.max(V[2]-20,V[2]+((V[0]-Z.width-40)*0.5)),10);return Z},q=function(V){var W=V.offset();W.top+=parseInt(V.css("paddingTop"),10)||0;W.left+=parseInt(V.css("paddingLeft"),10)||0;W.top+=parseInt(V.css("border-top-width"),10)||0;W.left+=parseInt(V.css("border-left-width"),10)||0;W.width=V.width();W.height=V.height();return W},I=function(){var Y=H.orig?B(H.orig):false,X={},W,V;if(Y&&Y.length){W=q(Y);X={width:W.width+(G.padding*2),height:W.height+(G.padding*2),top:W.top-G.padding-20,left:W.left-G.padding-20}}else{V=u();X={width:G.padding*2,height:G.padding*2,top:parseInt(V[3]+V[1]*0.5,10),left:parseInt(V[2]+V[0]*0.5,10)}}return X},a=function(){if(!T.is(":visible")){clearInterval(p);return}B("div",T).css("top",(N*-40)+"px");N=(N+1)%12};B.fn.fancybox=function(V){if(!B(this).length){return this}B(this).data("fancybox",B.extend({},V,(B.metadata?B(this).metadata():{}))).unbind("click.fb").bind("click.fb",function(X){X.preventDefault();if(P){return}P=true;B(this).blur();j=[];C=0;var W=B(this).attr("rel")||"";if(!W||W==""||W==="nofollow"){j.push(this)}else{j=B("a[rel="+W+"], area[rel="+W+"]");C=j.index(this)}w();return});return this};B.fancybox=function(Y){var X;if(P){return}P=true;X=typeof arguments[1]!=="undefined"?arguments[1]:{};j=[];C=parseInt(X.index,10)||0;if(B.isArray(Y)){for(var W=0,V=Y.length;W<V;W++){if(typeof Y[W]=="object"){B(Y[W]).data("fancybox",B.extend({},X,Y[W]))}else{Y[W]=B({}).data("fancybox",B.extend({content:Y[W]},X))}}j=jQuery.merge(j,Y)}else{if(typeof Y=="object"){B(Y).data("fancybox",B.extend({},X,Y))}else{Y=B({}).data("fancybox",B.extend({content:Y},X))}j.push(Y)}if(C>j.length||C<0){C=0}w()};B.fancybox.showActivity=function(){clearInterval(p);T.show();p=setInterval(a,66)};B.fancybox.hideActivity=function(){T.hide()};B.fancybox.next=function(){return B.fancybox.pos(e+1)};B.fancybox.prev=function(){return B.fancybox.pos(e-1)};B.fancybox.pos=function(V){if(P){return}V=parseInt(V);j=y;if(V>-1&&V<y.length){C=V;w()}else{if(G.cyclic&&y.length>1){C=V>=y.length?0:y.length-1;w()}}return};B.fancybox.cancel=function(){if(P){return}P=true;B.event.trigger("fancybox-cancel");r();H.onCancel(j,C,H);P=false};B.fancybox.close=function(){if(P||M.is(":hidden")){return}P=true;if(G&&false===G.onCleanup(y,e,G)){P=false;return}r();B(J.add(O).add(z)).hide();B(m.add(Q)).unbind();B(window).unbind("resize.fb scroll.fb");B(document).unbind("keydown.fb");if(G.type==="iframe"){m.find("iframe").attr("src",S&&/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank")}if(G.titlePosition!=="inside"){A.empty()}M.stop();function V(){Q.fadeOut("fast");A.empty().hide();M.hide();B.event.trigger("fancybox-cleanup");m.empty();G.onClosed(y,e,G);y=H=[];e=C=0;G=H={};P=false}if(G.transitionOut=="elastic"){b=I();var W=M.position();c={top:W.top,left:W.left,width:M.width(),height:M.height()};if(G.opacity){c.opacity=1}A.empty().hide();s.prop=1;B(s).animate({prop:0},{duration:G.speedOut,easing:G.easingOut,step:U,complete:V})}else{M.fadeOut(G.transitionOut=="none"?0:G.speedOut,V)}};B.fancybox.resize=function(){if(Q.is(":visible")){Q.css("height",B(document).height())}B.fancybox.center(true)};B.fancybox.center=function(){var V,W;if(P){return}W=arguments[0]===true?1:0;V=u();if(!W&&(M.width()>V[0]||M.height()>V[1])){return}M.stop().animate({top:parseInt(Math.max(V[3]-20,V[3]+((V[1]-m.height()-40)*0.5)-G.padding)),left:parseInt(Math.max(V[2]-20,V[2]+((V[0]-m.width()-40)*0.5)-G.padding))},typeof arguments[0]=="number"?arguments[0]:200)};B.fancybox.init=function(){if(B("#fancybox-wrap").length){return}B("body").append(L=B('<div id="fancybox-tmp"></div>'),T=B('<div id="fancybox-loading"><div></div></div>'),Q=B('<div id="fancybox-overlay"></div>'),M=B('<div id="fancybox-wrap"></div>'));d=B('<div id="fancybox-outer"></div>').append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>').appendTo(M);d.append(m=B('<div id="fancybox-content"></div>'),J=B('<a id="fancybox-close"></a>'),A=B('<div id="fancybox-title"></div>'),O=B('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),z=B('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>'));J.click(B.fancybox.close);T.click(B.fancybox.cancel);O.click(function(V){V.preventDefault();B.fancybox.prev()});z.click(function(V){V.preventDefault();B.fancybox.next()});if(B.fn.mousewheel){M.bind("mousewheel.fb",function(V,W){if(P){V.preventDefault()}else{if(B(V.target).get(0).clientHeight==0||B(V.target).get(0).scrollHeight===B(V.target).get(0).clientHeight){V.preventDefault();B.fancybox[W>0?"prev":"next"]()}}})}if(!B.support.opacity){M.addClass("fancybox-ie")}if(S){T.addClass("fancybox-ie6");M.addClass("fancybox-ie6");B('<iframe id="fancybox-hide-sel-frame" src="'+(/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank")+'" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(d)}};B.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:"#777",titleShow:true,titlePosition:"float",titleFormat:null,titleFromAlt:false,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing",easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};B(document).ready(function(){B.fancybox.init()})})(jQuery);
