function PrepareCertificates() {
    $('#offerings div.certificate').each(function(index) {
        var certTitle = $(this).children('h4');
        var childSpan = certTitle.children(":first");
        var infoPar = $(this).find('.description p');
        var detailList = $(this).children('.cert-detail');

        var documentLink = $(this).children('a.doc-link');
        var hasDocumentLink = false;
        if (documentLink.length) {
            documentLink.remove();
            hasDocumentLink = true;
        }

        certTitle.remove();
        detailList.remove();
        var parentDiv = $(this)

        var altClass = 'alt' + index % 2;
        parentDiv.addClass(altClass);

        var nameSpan = $('<span></span>');
        nameSpan.prop('class', 'name');
        nameSpan.append(childSpan.text());
        parentDiv.append(nameSpan);

        var infoAnchor = $('<a></a>');
        infoAnchor.prop('class', 'info');
        infoAnchor.prop('title', infoPar.text());
        infoAnchor.tooltip({
            track: true,
            delay: 0,
            left: -50
        });
        parentDiv.append(infoAnchor);

        var viewAnchor = $('<a></a>');
        viewAnchor.prop('class', 'view');

        var activeSelector = 'active';
        viewAnchor.bind('click', function(event) {
            var clicked = $(event.target);
            if (clicked.attr('class').indexOf(activeSelector) == -1) {
                // .cert-detail is currently hidden
                var parentOfClicked = $(event.target).parent('.certificate')
                parentOfClicked.addClass(activeSelector);
                parentOfClicked.next('.cert-detail').show(600);
                clicked.addClass(activeSelector);
            }
            else {
                // .cert-detail is currently displayed
                var parentOfClicked = $(event.target).parent('.certificate')
                parentOfClicked.removeClass(activeSelector);
                parentOfClicked.next('.cert-detail').hide(400);
                clicked.removeClass(activeSelector);
            }
        });
        parentDiv.append(viewAnchor);

        /* Create the download anchor */
        if (hasDocumentLink) {
            var downAnchor = $('<a></a>');
            downAnchor.prop('class', 'download');
            downAnchor.prop('target', '_blank');
            downAnchor.prop('href', documentLink.attr('href'));
            parentDiv.append(downAnchor);
        }

        var nextDiv = $('<div></div>');
        nextDiv.prop('class', 'cert-detail');

        detailList.children('li').each(function(index) {
            var title = $(this).children('.title');
            var detail = $(this).children('.detail');
            var childRow = $('<div></div>');
            childRow.prop('class', 'row');
            title.remove();
            childRow.append(title);
            detail.remove();
            childRow.append(detail);
            nextDiv.append(childRow);
        });

        parentDiv.after(nextDiv);
        nextDiv.hide();
    });
}



function PrepareCourses() {
    $('#offerings div.course a').each(function(index) {
        var parentDiv = $(this).parent('div');
        var linkUrl = $(this).attr('href');
        var childSpan = $(this).children(":first");
        var infoPar = $(this).siblings('p');
        /* Hack to get bullets to work - need outerHTML */
        var infoList = $(this).siblings('ul');

        var tooltip = infoPar.html();
        if (infoList.length > 0) {
            tooltip += "<ul>" + infoList.html() + "</ul>";
        }
        
        /* Calculate image size*/
        var courseImageWidth = 424;
        var courseImageHeight = 650;
        if ($(this).hasClass('width-X2'))
            courseImageWidth = courseImageWidth * 2;


        $(this).remove();
        infoList.remove();
        infoPar.remove();

        var altClass = 'alt' + index % 2;
        parentDiv.addClass(altClass);

        var nameSpan = $('<span></span>');
        nameSpan.prop('class', 'name');
        nameSpan.append(childSpan.text());
        parentDiv.append(nameSpan);

        /* Create the information node */
        var infoAnchor = $('<a></a>');
        infoAnchor.prop('class', 'info');
        infoAnchor.prop('title', tooltip);
        infoAnchor.tooltip({
            track: true,
            delay: 0,
            left: -50
        });
        parentDiv.append(infoAnchor);

        /* Create the view anchor */
        var viewAnchor = $('<a></a>');
        viewAnchor.prop('class', 'view');
        viewAnchor.colorbox({ html: "<img src='" + linkUrl + "' alt='' width='" + courseImageWidth + "' height='" + courseImageHeight + "'/>", opacity: 0.5 });
        /*viewAnchor.colorbox({ speed: 600, opacity: 0.7, innerHeight: 660, initialWidth: 300, initialHeight: 600, html: "<img src='" + linkUrl + "' alt='' width='495' height='795' />" });*/
        parentDiv.append(viewAnchor);


        /* Create the download anchor */
        var downAnchor = $('<a></a>');
        downAnchor.prop('class', 'download');
        downAnchor.prop('target', '_blank');
        downAnchor.prop('href', linkUrl);
        parentDiv.append(downAnchor);
    });
}


function ConvertTraineeships() {
    var traineeships = $('#traineeships');
    var detailAnchor = traineeships.children('.traineeship').children('a');
    var detailDiv = traineeships.children('.traineeship').children('div');
    detailDiv.remove();
    detailAnchor.prop('class', 'traineeship');
    detailAnchor.colorbox({ html: "<div>" + detailDiv.html() + "</div>", opacity: 0.5 });
}
