/*
 * Author : Michael Bosworth 2006
 *
 *
 * Note : This class is dependant on : /web/common/js/lib/prototype/prototype.lite.js
 *                                     /web/common/js/lib/moofx/moo.fx.js
 *                                     /web/common/js/lib/moofx/moo.fx.utils.js
 *                                     /web/common/js/ui/carousel/carousel.js
 * These files must be included with this script to function.
*/

/* Decorating Gallery Index Page */
var dgcarousel = new Carousel();
var galleryImg;
var galleryTitleText;
var galleryAbstractText;
var galleryImgLink;
var galleryLink;
var galleryNextBtn;
var galleryPrevBtn;
var featuresFadeIn;
var loadedImages;
var helpfultips = null;

/* Decorating Gallery Initialize */
function dgInit(){
	var validator = new FormValidator('selectionForm');
	
    /* include shareContent.js if share this is available on the page */
    if($("helpfultips") != null){
        helpfultips = $("helpfultips");
    }
    /* verify that this is the index page */
    if($("features")){
        if(itemArray != null){
            galleryImg = $("featuredimg");
            galleryTitleText = $("ftitle");
            galleryAbstractText = $("fabstract");
            galleryImgLink = $("fimglink");
            galleryLink = $("flink");
            galleryNextBtn = $("ssnext");
            galleryPrevBtn = $("ssprev");
            featuresFadeIn = $("features").effect('opacity', {duration:500});
            /* preload images */
            var imgSrcAry = new Array();
            for(var i=0; i<itemArray.length; i++){
                imgSrcAry.push(itemArray[i][0]);
            }
            var imgloader = new ImagePreloader(imgSrcAry, function(imgAry){
                loadedImages = imgAry;
            });		
        }

        if(dgargs != null){
            dgcarousel.init(dgargs, 125,375,80,3,"viewableitems","active","monitor",700);
            if(dgcarousel.scrollLock){
                $("btnleft").style.visibility = "hidden";
                $("btnright").style.visibility = "hidden";
            }
        }
        else{
            $("dgcarousel").style.display = "none";
        }
    }
}

/* Decorating Gallery Carousel  */
dgcarousel.render = function(index,hide){
    var item = document.createElement("div");
    item.className = "majlink";
    if(this.args[index][6] == null || this.args[index][6] == "false") {
        item.innerHTML = "<a href='" + this.args[index][4] + "'><img src='" + this.args[index][3] + "' alt='" + this.args[index][0] + "' />" + this.args[index][0] + "</a>";
    } else {
        item.innerHTML = "<a target='_blank' href='" + this.args[index][4] + "'><img src='" + this.args[index][3] + "' alt='" + this.args[index][0] + "' />" + this.args[index][0] + "</a>";
    }
    return item;
};

/* Show and Hide Helpful tips */
function showHelpfulTips(){
    if(helpfultips != null){
        helpfultips.style.visibility = "visible";
        helpfultips.style.zIndex = "10";
    }
}

function hideHelpfulTips(){
    if(helpfultips != null){
        helpfultips.style.visibility = "hidden";
        helpfultips.style.zIndex = "0";
    }
}

/* Decorating Gallery Results Rollovers */
function hide(element){
    var children = element.getElementsByTagName("DIV");
	var grollover = children[children.length - 1];
    if(grollover != null){
        grollover.style.display = "none";
    }
}
function show(element){
    var children = element.getElementsByTagName("DIV");
	var grollover = children[children.length - 1];
    if(grollover != null){
        grollover.style.display = "block";
    }
}

/* Decorating Gallery Item of the Day */
function loadItem(index){

    if(loadedImages[index] != null){
        galleryImg.src = loadedImages[index].src;
        galleryTitleText.innerHTML = itemArray[index][1];
        galleryAbstractText.innerHTML = itemArray[index][2];
        galleryLink.href = galleryImgLink.href  = itemArray[index][3];

        if(index == 0){
            galleryNextBtn.style.visibility = "visible";
            galleryPrevBtn.style.visibility = "hidden";
        }
        if(index == 1){
            galleryNextBtn.style.visibility = "visible";
            galleryPrevBtn.style.visibility = "visible";
        }
        if(index == 2){
            galleryNextBtn.style.visibility = "hidden";
            galleryPrevBtn.style.visibility = "visible";
        }
		
		if(featuresFadeIn.start){
        	featuresFadeIn.start(0,1);
		}
    }
}

window.addEvent("domready",function() {
    dgInit();
    var ssprev = $("ssprev");
    if(ssprev != null){
        ssprev.addEvent("click",function(){ loadItem(0); });
    }
    var sscurrent =  $("sscurrent");
    if(sscurrent != null){
        sscurrent.addEvent("click",function(){ loadItem(1); });
    }
    var ssnext =  $("ssnext");
    if(ssnext != null){
        ssnext.addEvent("click",function(){ loadItem(2); });
    }
});
