<!-- Javascript adapted by Cecilia Gaetani for Gioielleria Martines -->

// javascript utility functions
var n = false;
var ie = false;
var w3c = false;
var show = 'visible';
var hide = 'hidden';

if (document.layers) { // netscape4-esque
    n = true;
    show = 'show';
    hide = 'hide';
} else if (document.all) { // ie4-5-esque
    ie = true;        
} else if (document.getElementById) { // w3c-compliant-esque
    w3c = true;
}

function getElementStyle(name) {
    if (n) {
        for (var i = 0; i < document.layers.length; i++) {
            if (document.layers[i].name == name)
                return document.layers[i];
        }
    }
    else if (ie) {
        if (document.all[name] == null)
			return null;

		if ( (document.all[name].style.position != 'absolute') && (document.all[name].style.position != 'relative') ) {
			for (var s = 0; s < document.styleSheets.length; s++) {
				for (var r = 0; r < document.styleSheets[s].rules.length; r++) {
					currentItem = document.styleSheets[s].rules[r].selectorText;
					if ( (currentItem == '#' + name) || (currentItem == '.' + name) )
						return document.styleSheets[s].rules[r].style;
				}
			}
		} else
			return document.all[name].style; 
    }
    else {
        if (document.getElementById((name)) != null)
            return document.getElementById((name)).style;
    }

    return null;
}

function showHideItem(itemToShow,showOrHide) {
    theObj = getElementStyle(itemToShow);

    theObj.visibility = (showOrHide == 'hide') ? hide : show;
}

function changeImage(imgNam, newImg) {
	if (document.images)
		document[imgNam].src = newImg;
}

function rollOver(name, status) {
    changeImage(name, eval(name + '_' + status + '.src'));
}

function storeRollOver(which, name, status) {
    if (document.images) {
        if (n)
            document["store" + which].document[name + which].src = eval(name + '_' + status + '.src');
        else
            document[name + which].src = eval(name + '_' + status + '.src');
    }
}

var step = 1;
function nextSlide() {
    if (step < maxstep)
        step++;
    else
        step = 1;
    changeImage("slideshow",  eval('slideshow' + step + '.src'));
}

var timer = null;

function slideTimeout() {
    if (timer != null)
        clearTimeout(timer);
    timer = window.setTimeout("nextSlide();", 4000);
}

function switchPage(newPage) {
    showHideItem("dotOn" + currPage, "hide");
    showHideItem("dotOn" + newPage, "show");

    showHideItem("text" + currPage, "hide");
    showHideItem("text" + newPage, "show");

    currPage = newPage;
}

function displayLook(id) {
    changeImage('big', "images/big/big_" + looks[id].lookid + ".jpg");
	var s = "<table width=\"305\"border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td><p class=\"description\">" + looks[id].description + "</p></td></tr></table>";

	if (ie) {
		document.all('text').innerHTML = s;
	}
    else if (w3c) {
    	document.getElementById('text').innerHTML = s;
    }
    else {
    	// netscape uses a layer, not a div
		document.text.document.write(s);
		document.text.document.close();
    }
}

function displayThumb(which, left) {
    var top  = 239;

    element = getElementStyle('thumb' + which);
    if (n) {
        element.top = top;
        element.left = left;
    }
    else {
        element.top = top + "px";
        element.left = left + "px";
    }
    element.visibility = show;
}

function displayThumbs(start) {
    var left = 212;

    currElement = startThumb;

    while (currElement < Math.min(startThumb + 4, maxElements)) {
        getElementStyle('thumb' + currElement).visibility = hide;
        currElement++;
    }

    if (currElement - startThumb < 4) {
        for (var i = 0; i < 4 - (currElement - startThumb); i++)
            getElementStyle('thumb' + i).visibility = hide;
    }

    currElement = start;

    if (looks[currElement].lookid == "") {
        rollOverPrint(looks[currElement].set - 1, 1);
        currPrint = looks[currElement].set - 1;
   }

    while (currElement < Math.min(start + 4, maxElements)) {
        displayThumb(currElement, left);
        currElement++;
        left += 115;
    }

    if (currElement - start < 4) {
        for (var i = 0; i < 4 - (currElement - start); i++) {
            displayThumb(i, left);
            left += 115;
        }
    }

    startThumb = start;
}

function rollOverThumb(which, state) {
    getElementStyle('thumb' + which).background = (state == 1) ? onColor : offColor;
}

function rollOverPrint(which, state) {
    if (which == currPrint)
        return;

    if (state != 1)
        which = currPrint;

    if (n)
        document.swatch.document["swatch"].src = eval("swatch" + which + ".src");
    else
        document["swatch"].src = eval("swatch" + which + ".src");
}

function turnPage(which) {
    if (which == 1)
        newStart = startThumb - 1 + maxElements;
    else
        newStart = startThumb + 1;

    newStart %= maxElements;

    displayThumbs(newStart);
}

function displayPrint(which) {
    currPrint = which;
    displayThumbs(print[which]);
    displayLook(print[which] + 1);
}

function displayStore(which) {
    showHideItem("list", "hide");
    showHideItem("store" + which, "show");

    currStore = which;
}

function displayList() {
    if (currStore > 0)
        showHideItem("store" + currStore, "hide");

    showHideItem("list", "show");
}

function listRollOver(which, state) {
    if (state == 1) {
        if (n)
            document.list.document["dot" + which].src = dot.src;
        else
            document["dot" + which].src = dot.src;
    }
    else {
        if (n)
            document.list.document["dot" + which].src = spacer.src;
        else
            document["dot" + which].src = spacer.src;
    }
}
