<!--
/* global functions */

function empty () { if (arguments[0] == null || typeof arguments[0] == "undefined" || arguments[0] == "undefined") return true; else return false;};


/* -----------------------------------------------------
 general
 ----------------------------------------------------- */
function setOp(e, o)
{
    if (navigator.appName.indexOf("Netscape") == -1)
        e.style.filter = "alpha(opacity="+o+")";
    else
        e.style.opacity = o/100;
}

function iePng24Support(tag, img){switch (tag){case "img":if (navigator.appName.indexOf("Netscape") == -1)var ret = "style=\"filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);\"";else var ret = "";break;case "divTag":if (navigator.appName.indexOf("Netscape") == -1)var ret = "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+img+"');";else var ret = "";break;case "divObj":if (navigator.appName.indexOf("Netscape") == -1)var ret = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+img+"');";else var ret = "";break;default:var ret = "";break;};return ret;};



/* -----------------------------------------------------
 photo gallery
 ----------------------------------------------------- */

var galleryObj = new gallery();

function gallery ()
{

    this.images = $('galleryImages');

    this.imgIndex=new Array();
    this.currentImg=0;

    this.init = function ()
    {
        //hide flash elements if on media page.
        this.hideMediaElements();

        //gallery appears
        $('galleryWrapper').toggle();
        //new Effect.Appear('gallery');

        for (i=0;i<this.images.childNodes.length; i++)
        {
            if (this.images.childNodes[i].nodeType == 1)
                this.imgIndex[this.imgIndex.length] = i;
        }

        this.images.childNodes[this.imgIndex[0]].style.visibility = 'visible';

    };


    this.next = function ()
    {
        this.images.childNodes[this.imgIndex[this.currentImg]].style.visibility = 'hidden';

        this.currentImg++;

        if (this.currentImg >= this.imgIndex.length)
            this.currentImg = 0;

        this.images.childNodes[this.imgIndex[this.currentImg]].style.visibility = 'visible';
    };


    this.prev = function ()
    {
        this.images.childNodes[this.imgIndex[this.currentImg]].style.visibility = 'hidden';

        this.currentImg--;

        if (this.currentImg < 0)
            this.currentImg = this.imgIndex.length-1;

        this.images.childNodes[this.imgIndex[this.currentImg]].style.visibility = 'visible';
    };

    this.hideAll = function ()
    {
        //unhide flash elements if on media page.
        this.unhideMediaElements();

        $('galleryWrapper').hide();
        for (var i=0; i<this.imgIndex.length; i++)
            this.images.childNodes[this.imgIndex[i]].style.visibility = 'hidden';
    }

    //media elements are flash-based, top z-index...
    this.hideMediaElements = function ()
    {
        if($('avPlayer'))
            $('avPlayer').setStyle({'visibility':'hidden'});
        if($('showIcons'))
            $('showIcons').setStyle({'visibility':'hidden'});
    }

    this.unhideMediaElements = function ()
    {
        if($('avPlayer'))
            $('avPlayer').setStyle({'visibility':'visible'});
        if($('showIcons'))
            $('showIcons').setStyle({'visibility':'visible'});
    }


}

/* -----------------------------------------------------
 tutorat information tooltips
 ----------------------------------------------------- */
var lastAObjTitle;

function showTutorSessionInformation(options)
{
    if ( empty(options.aObj) )
        return;

    eval('var textObj = $H({' +$(options.aObj).title+ '})');

    var formRow     = '<div class="formRow"><label for="{fieldID}">{labelText}:</label><div class="formRowContent">{data}</div></div>';
    var tooltip     = $('tooltip');
    var pos         = Position.cumulativeOffset(options.aObj)
    var dims        = $(options.aObj).getDimensions();
    
    if ( !tooltip ) //create it.
    {
        var t           = document.createElement('DIV');
        t.id            = 'tooltip';
        t.className     = 'ifForm';
        
        var b = document.getElementsByTagName('body').item(0);
        b.appendChild(t);
        
        tooltip = $('tooltip'); //IE needs it appended first.
        
        var h   = document.createElement('H1');
        h.id    = 'tooltipHeading';
        
        tooltip.appendChild(h);
        
        $(h).setStyle({
            width:      '100%',
            margin:     '.2em .4em',
            padding:    0,
            fontWeight: 'bold',
            textAlign:  'left'
        });
        
        var d       = document.createElement('DIV');
        d.id        = 'tooltipText';
        d.className = 'formContent';
        
        $(t).appendChild(d);
        
        $(d).setStyle({
            textAlign:  'left',
            background: 'none'
        });
    }
    
    $('tooltipHeading').update(options.heading);
    
    var text = '';

    textObj.each(
        function(s)
        {
             if (s != 'undefined')
             {
                 tmp = formRow.split('{fieldID}').join(s[0]);
                 tmp = tmp.split('{labelText}').join(s[0]);
                 tmp = tmp.split('{data}').join(s[1]);
                 text += tmp;
                 tmp = null;
             }
        }
    );

    
    $('tooltipText').update(text);
    
    //unset the title attribute, and store it for the hide() method
    lastAObjTitle       = options.aObj.title; 
    options.aObj.title  = null;
    
    tooltip.setStyle({
            position:   'absolute',
            display:    'none',
            width:      '350px',
            height:     'auto',
            background: '#fee370',
            padding:    '.4em',
            border:     '1px solid #000',
            top:        pos[1]+dims.height+ 'px',
            left:       pos[0]+dims.width+ 'px'
        });
        
    tooltip.show();
}


function hideTutorSessionInformation(options)
{
    if ( typeof options == 'undefined' )
        return;
        
    $('tooltip').hide();
    options.aObj.title  = lastAObjTitle;  
    lastAObjTitle       = null;
      
}

//-->