

/************ START functions ********************/

function fnStartFlip(strObjName){
    $$(strObjName).each(function(el){
        el.setStyle('opacity', 0);
        el.setStyle('visibility', 'hidden');
    });
    
    $$(strObjName)[0].setStyle('opacity', 1);
    $$(strObjName)[0].setStyle('visibility', 'visible');

    setTimeout('fnFlipImage(\'' + strObjName + '\');',5000);
}

function fnFlipImage(strObjName){
    var intSlideID = getActiveImage(strObjName);
    var intNumberOfSlides = $$(strObjName).length;
    
    intSlideID++;
    if (intSlideID > intNumberOfSlides){ intSlideID = 1; }
    
    var objSlideFX = new Fx.Tween($$(strObjName)[((intSlideID == 1) ? intNumberOfSlides-1 : (intSlideID-2))], {duration: 'long'});
    objSlideFX.start('opacity', 1, 0);
    
    var objSlideFX = new Fx.Tween($$(strObjName)[intSlideID-1], {duration: 'long'});
    objSlideFX.start('opacity', 0, 1);
    
    setTimeout('fnFlipImage(\'' + strObjName + '\');', 5000);
}

function getActiveImage(strObjName){
    var intReturn = 0;
    
    for (i = 0;i < $$(strObjName).length-1; i++){
        if ($$(strObjName)[i].style.visibility == 'visible'){
            intReturn = (i+1);
        }
    }
    
    return intReturn;
}

function fnClearValue(obj, strClearValue){
    obj.value = (obj.value == strClearValue) ? '' : obj.value;
}

var animating = false;
function ProcessImageMap(){
    if ($('imageMap')){
        
        $$('#imageMap area').each(function(itm, idx, allitems){
            
            itm.store('tip:title', itm.alt);
		    itm.store('tip:text', '');
            var SimpleTip = new Tips(itm, {
                showDelay: 0,
                hideDelay: 0,
                offsets: {x: 10, y: 10},
                fixed: false
            });
            
            itm.addEvent('mouseover', function(){
                var id = 'box_' + itm.alt.replace(' ', '').toLowerCase();
                $(id).addClass('filledback');
            });
            itm.addEvent('mouseout', function(){
                var id = 'box_' + itm.alt.replace(' ', '').toLowerCase();
                $(id).removeClass('filledback');
            });
            
        });
        
    }
}

var SimpleGallery = function(){
    var currIndex, imgLinks, elNext, elPrev;
    
    function GotoIndex(idx){
        if (idx > -1 && idx < imgLinks.length){
            $('gallery-main-image').set('src', imgLinks[idx].href);
            currIndex = idx;
            UpdateNav(idx);    
        }
    };
    
    function UpdateNav(idx){
        
        if (idx == 0){
            elNext.removeClass('grey');
            elPrev.addClass('grey');
        } else if (idx == (imgLinks.length - 1)) {
            elNext.addClass('grey');
            elPrev.removeClass('grey');
        } else {
            elNext.removeClass('grey');
            elPrev.removeClass('grey');
        }
    };
    
    return {
        init: function(){
            currIndex = 0;
            imgLinks = $$('a.gallery-thumb-link');
            elNext = $('gallery-next');
            elPrev = $('gallery-prev');
            
            elPrev.addEvent('click', function(e){
                e.preventDefault();
                GotoIndex(currIndex-1);
            });
            
            elNext.addEvent('click', function(e){
                e.preventDefault();
                GotoIndex(currIndex+1);
            });
            
            imgLinks.each(function(el, idx){
                el.addEvent('click', function(e){
                    e.preventDefault();
                    GotoIndex(idx);
                });
            });
            
            GotoIndex(0);
        }
    }
}();