/********************************
 * site-specific settings       *
 ********************************/


/********************************
 * site-specific functions      *
 ********************************/

function retargetExternalLinks() {
    if (!document.getElementsByTagName) return;
    var anchors = document.getElementsByTagName("a");
    for (var i = 0; i < anchors.length; i++) {
        if (anchors[i].href && anchors[i].rel == "external-link") {
            anchors[i].target = "_blank";
        }
    }
}
addLoadEvent(retargetExternalLinks);

var portfolioProjects = null;
var currentProject = 0;
function selectProject(index) {
    try {
        $$('.selected').each(function (e) { e.className = '' });
        nav_element = $$('#portfolio-browser div')[index];
        nav_element.className = 'selected';
        // nav_element.scrollIntoView();
        
        window.scrollTo(0, 260);
        
        project = portfolioProjects[index];
        $('portfolio-project-name').innerHTML = project.name;
        $('portfolio-project-ptype').innerHTML = project.ptype;
        $('portfolio-project-link').innerHTML = project.url;
        $('portfolio-project-link').href = project.url;
        $('portfolio-project-description').innerHTML = project.description;
        
        imgs = $$('#portfolio-project-thumbs img');
        for (var i = 0; i < imgs.length; i++) {
            if (i < project.image_count) {
                imgs[i].src = '/images/portfolio/' + project.code + '/' + (i+1) + '-thumb.jpg';
                imgs[i].style.display =  'block';
            } else {
                imgs[i].style.display =  'none';
            }
        }
        imgs = $$('#portfolio-project-image-preload img');
        for (var i = 0; i < imgs.length; i++) {
            imgs[i].src = '/images/portfolio/' + project.code + '/' + (i+1) + '.jpg';
        }
        
        currentProject = index;
        
        if (project.image_count > 0) {
            $('portfolio-project-image-viewer').show();
            selectImage(0);
        } else {
            $('portfolio-project-image-viewer').hide();
        }
        
        location.hash = '#' + project.code;
        
        return true;
    } catch (e) {
        alert(e);
        return false;
    }
}

function selectImage(index) {
    try {
        $$('img.selected').each(function (e) { e.className = '' });
        $$('#portfolio-project-thumbs img')[index].className = 'selected';
        
        project = portfolioProjects[currentProject];
        $('portfolio-project-image').src = '/images/portfolio/' + project.code + '/' + (index+1) + '.jpg';
        
        return true;
    } catch (e) {
        return false;
    }
}

function showFaqAnswer(elt) {
    $A($(elt.parentNode).childNodes).each(function(el) {
        try {
            switch (el.className) {
                case 'toggle-answer':
                    el.innerHTML = '';
                    break;
                    
                case 'answer':
                    $(el).show();
                    break;
            }
        } catch (e) {
            alert(el + ': ' + e);
        }
    });
}
