(function($) {
$.kaGallery = function(element, options){
this.options = {};
element.data('kaGallery', this);
this.init = function(element, options){
this.options = $.extend({},$.kaGallery.defaultOptions, options);
var timer;
var target = false;
var navInd = 0;
var galCheck = element.find('.gallery dl').size();
if(galCheck > 0){
element.find('.kaImgGallery').prepend('
');
element.find('.kaImgGal').append('');
var ind = 0;
element.find('.gallery dl').each(function(){
var slide = jQuery(this).find('dt').html();
var imgSrc = jQuery(this).find('dt a').attr('href');
element.find('.kaImgGal').append('');
element.find('.thumbNav').append('
');
ind++;
});
setTimeout(function(){ var galHeight = 0; element.find('.galSlide').each(function(){
if(jQuery(this).height() > galHeight){
galHeight = jQuery(this).height();
}
});
element.find('.kaImgGal').height(galHeight + 30);},200);
element.find('.gallery').remove();
var galNum = element.find('.kaImgGal > div.galSlide').size();
var num = 0;
element.find('.arrow').hide();
element.find('.tnav, .arrow').click(function(){
target = jQuery(this).attr('href');
if((target == 'left') || (target == 'right')){
if(target == 'left'){
target = (num - 1);
console.log(target);
if(target < 0){
target = (galNum - 1);
}
}else{
target = (num + 1);
console.log(target);
if(target >= galNum){
target = 0;
}
}
}else{
target = parseInt(target.replace('img', ''));
}
clearInterval(timer);
timer = false;
imgFade();
});
function sizeItUp(){
var galWidth = element.find('.kaImgGal').width();
var navWidth = (galNum * 30);
element.find('.thumbWrap').width(galWidth - 20);
element.find('.thumbNav').width(navWidth);
}
function imgFade(){
element.find('.kaImgGal div.galSlide').eq(num).fadeOut(500);
num++;
if(num > (galNum -1)){
num = 0;
}
if(target === false){
element.find('.kaImgGal div.galSlide').eq(num).fadeIn(500);
}else{
element.find('.kaImgGal div.galSlide').eq(target).fadeIn(500);
num = target;
target = false;
}
if(num > navInd){
navSlide();
navInd = (navInd + 4);
if(navInd > (galNum - 1)){
navInd = 0;
}
}else{
navInd = (navInd - 4);
if(num <= 0){
navInd = 0;
}
navSlide();
}
if(num == (galNum - 1)){
navInd = (galNum - 2);
navSlide();
}
if(!timer){
timer = setInterval(function(){imgFade();}, 6000);
}
}
function navSlide(){
var woffset = element.find('.thumbNav').offset().left;
var toffset = element.find('.img'+navInd).offset().left;
var doffset = (woffset - toffset);
element.find('.thumbNav').animate({marginLeft : doffset}, 300);
}
if(galNum > 1){
for(x =1; x < galNum; x++){
element.find('.kaImgGal div.galSlide').eq(x).hide();
}
timer = setInterval(function(){imgFade();}, 6000);
}
sizeItUp();
jQuery(window).resize(function(){
sizeItUp();
});
element.find('.kaImgGal').hover(function(){
element.find('.arrow').toggle();
});
}
}
this.init(element, options);
}
$.fn.kaGallery = function(options){
return this.each(function() {
(new $.kaGallery($(this),options));
});
}
$.kaGallery.defaultOptions = {};
})(jQuery);