var folios = new Array();
var currentFolioIndex = -1;
var currentFolioName = '';
var opacities = new Array();

var folioUpdating = false;
var folioRefresh = 80;

function ScrollUp() {
    document.getElementById('folioDiv' + folios[0]).scrollIntoView(true);
    document.getElementById('imgUp').style.visibility = 'hidden';
    document.getElementById('imgDown').style.visibility = 'visible';
}

function ScrollDown() {
    document.getElementById('folioDiv' + folios[folios.length - 1]).scrollIntoView(true);
    document.getElementById('imgDown').style.visibility = 'hidden';
    document.getElementById('imgUp').style.visibility = 'visible';
}

function SetCurrentFolio(folioIndex, folioName) {
    currentFolioIndex = folioIndex;
    currentFolioName = folioName;

    if (folioIndex != -1) {
        SetFolioOpacity(folioIndex, opacities[folioIndex] + 0.15);
    }

    if (!folioUpdating) {
        folioUpdating = true;
        Update();
    }
}

function Start() {
    setTimeout('Update();', folioRefresh);
}

function Update() {
    var keepUpdating = false;
    var currentPageUrl = document.getElementsByName("MainFrame")[0].src;

    for (i = 0; i < folios.length; i++) {
        var currentOpacity = opacities[i];
        if (folios[i] == currentFolioName) {
            if (currentOpacity < 1) {
                SetFolioOpacity(i, currentOpacity + 0.15)
                keepUpdating = true;
            }
        }
        else {
            if (currentOpacity > 0) {
                currentOpacity = currentOpacity - 0.08;
                if (currentOpacity < 0) {
                    currentOpacity = 0;
                }
                SetFolioOpacity(i, currentOpacity);
                keepUpdating = true;
            }
            /*
            if (currentOpacity > 0.21)
            {
            currentOpacity = currentOpacity - 0.08;
            if (currentOpacity < 0.21)
            {
            currentOpacity = 0.21;
            }
            SetFolioOpacity(i, currentOpacity);
            keepUpdating = true;
            }
            else if (currentOpacity < 0.2)
            {
            SetFolioOpacity(i, currentOpacity + 0.02)
            keepUpdating = true;
            }
            */
        }

        var folioUrl = '/' + folios[i] + '.htm';
        var folioDiv = document.getElementById("folioDiv" + folios[i]);
        if (currentPageUrl.length > folioUrl.length
        && currentPageUrl.substring(currentPageUrl.length - folioUrl.length) == folioUrl) {
            folioDiv.className = "folio-active";
        }
        else {
            folioDiv.className = "folio";
        }
    }

    if (keepUpdating) {
        setTimeout('Update();', folioRefresh);
    }
    else {
        folioUpdating = false;
    }
}

function SetFolioOpacity(i, opacity) {
    var folioImage = document.getElementsByName("folioImage" + folios[i])[0];

    if (opacity >= 1) {
        folioImage.style.opacity = 1;
        folioImage.style.display = 'block';
        folioImage.style.filter = '';
    }
    else if (opacity > 0) {
        folioImage.style.opacity = opacity;
        folioImage.style.display = 'block';
        folioImage.style.filter = 'alpha(opacity=' + (opacity * 100) + ')';
    }
    else {
        folioImage.style.opacity = 0;
        folioImage.style.display = 'none';
        folioImage.style.filter = 'alpha(opacity=0)';
    }

    opacities[i] = opacity;
}

function PickFolio() {
    var pickIndex = -1;
    var pickUrl = '';

    if (location.search != null && location.search.length > 2) {
        var fields = location.search.substring(1).split('/');
        for (i = 0; i < folios.length; i++) {
            if (folios[i].toLowerCase() == fields[0].toLowerCase()) {
                pickIndex = i;
                pickUrl = "Photos/" + folios[i] + ".htm" + (fields.length > 1 ? "?" + fields[1] : "");
                break;
            }
        }
    }

    /*
    if (pickIndex == -1) {
        pickIndex = Math.floor(Math.random() * folios.length);
        if (pickIndex >= folios.length) {
            pickIndex = folios.length - 1;
        }
        pickUrl = "Photos/" + folios[pickIndex] + ".htm";
    }
    */

    if (pickIndex >= 0) {
    /*
        if (pickIndex < 20) {
            ScrollUp();
        }
        else {
            ScrollDown();
        }
        */
        document.getElementsByName("MainFrame")[0].src = pickUrl;
    }
}

function GotoFolio(folio) {
    document.getElementsByName('MainFrame')[0].src = 'Photos/' + folio + '.htm';
    Update();
}

function GotoImage(folio, image) {
    document.getElementsByName('MainFrame')[0].src = 'Photos/' + folio + '.htm?' + image;
    Update();
}