// Cards on table
var cott = {
    timeout: 3750,
    maxLink: 0,
    init: function(){
        var topLink = document.getElementById("toplink");
        var links = topLink.getElementsByTagName("A");
        cott.maxLink = links.length;
        if (links.length == 0) {
            return;
        }
        for (var i = 0; i < links.length; i++) {
            links[i].style.backgroundColor = '#fff';
            links[i].style.zoom = 1;
            if (i > 0) {
                links[i].style.display = 'none';
            }
        }
        setTimeout("cott.rotateLink(2)", cott.timeout);
    },
    fadeTo: function(obj, lvl){
        obj.style.filter = 'alpha(opacity=' + lvl * 10 + ')';
        obj.style.opacity = lvl / 10;
    },
    rotateLink: function(linkNo){
        cott.displayNextLink(linkNo);
        var nextLink = linkNo + 1;
        if (nextLink > cott.maxLink) {
            nextLink = 1;
        }
        var t = setTimeout("cott.rotateLink(" + nextLink + ")", cott.timeout);
    },
    displayNextLink: function(linkNo){
        var lastLink = linkNo - 1;
        if (lastLink == 0) {
            lastLink = cott.maxLink;
        }
        cott.fade("cottLink" + lastLink, "cottLink" + linkNo, -9.9);
    },
    fade: function(from, to, stage){
        if (!document.getElementById(from)) {
            return;
        }
        fobj = document.getElementById(from);
        if (!document.getElementById(to)) {
            return;
        }
        tobj = document.getElementById(to);
        if (stage < 0) {
            cott.fadeTo(fobj, Math.abs(stage));
        }
        else 
            if (stage == 10) {
                cott.fadeTo(tobj, 9.9);
            }
            else 
                if (stage == 0) {
                    fobj.style.display = 'none';
                    cott.fadeTo(tobj, 1);
                    tobj.style.display = 'inline';
                }
                else {
                    cott.fadeTo(tobj, stage);
                }
        if (stage != 10) {
            var b = setTimeout("cott.fade('" + from + "', '" + to + "', " + parseInt(stage + 1) + ")", 40);
        }
    }
};

function buildCottImg(num){
    var cPar = document.getElementById('card_' + num);
    var cImg = document.getElementById('image_' + num);
    var cPhoto = document.getElementById('photo_' + num);
    
    var newImg = new Image();
    
    if (navigator.userAgent.indexOf('MSIE') != -1) {
        newImg.setAttribute('src', cImg.href);
        //newImg.setAttribute('alt', cImg.firstChild.nodeValue);
        cottDelay(100);
    }
    else {
        try {
            newImg.setAttribute('src', cImg);
            newImg.setAttribute('alt', cImg.innerHTML);
            cPhoto.appendChild(newImg);
        } 
        catch (e) {
            //create html string for new input element
            var sHTML = "<a href=\"" + cPhoto + "\" target=\"_blank\"><img alt=\"" + cImg.innerHTML + "\" src=\"" + cImg + "\"></a>";
            cPhoto.innerHTML = sHTML;
        }
    }
    
    if (cPhoto != null) {
        try {
            cPhoto.appendChild(newImg);
        } 
        catch (e) {
        }
        cPhoto.removeAttribute("id");
        cImg.parentNode.removeChild(cImg);
    }
    else {
        try {
            newImg.parentNode.replaceChild(newImg, cImg);
        } 
        catch (e) {
        }
    }
    return false;
}

function cottDelay(millis){
    var date = new Date();
    var curDate = null;
    do {
        curDate = new Date();
    }
    while (curDate - date < millis);
    }

function displayCottMods(firstMod){

    modInst = modInst + firstMod;
    if (modInst == -1) {
        modInst = maxCards - 1;
    }
    
    for (var m = 0; m < visibleCards; m++) {
        var inst = (modInst + m) % (maxCards);
        var topcard = 'showcard' + m;
        var hiddenCardId = "card_" + inst;
        var parentDiv = document.createElement("div");
        var hiddenCard = document.createElement("div");
        
        if (document.getElementById('image_' + inst)) {
            buildCottImg(inst);
            
            if (navigator.userAgent.indexOf('MSIE') != -1) {
                cottDelay(200);
            }
        }
        
        hiddenCard.id = "slot_" + inst;
        hiddenCard.className = "card";
        hiddenCard.innerHTML = (document.getElementById(hiddenCardId).innerHTML);
        parentDiv.appendChild(hiddenCard);
        document.getElementById(topcard).innerHTML = parentDiv.innerHTML;
    }
    return false;
}

function cottInit(cardsVisible){
    visibleCards = cardsVisible;
    displayCottMods(0);
    document.getElementById('topHiddenModules').className = "hideCards";
    document.getElementById('arrows').className = "show_arws";
    for (var m = 0; m < visibleCards; m++) {
        document.getElementById('showcard' + m).className = "showCards";
    }
}

function bookmarksite(title, url){
    if (window.sidebar) { // firefox
        window.sidebar.addPanel(title, url, "");
    }
    else {
        if (window.opera && window.print) { // opera
            var elem = document.createElement('a');
            elem.setAttribute('href', url);
            elem.setAttribute('title', title);
            elem.setAttribute('rel', 'sidebar');
            elem.click();
        }
        else {
            if (document.all) { // ie
                window.external.AddFavorite(url, title);
            }
        }
    }
}

navigator.userAgent.toLowerCase().indexOf('msie') != -1 ? bb_ie = 1 : bb_ie = 0;


