/***********************************************************************
 @ filename            : /global/TW/includes/tw-common.js 
 @ author              : Ken Wang (ken.wang@iwant-in.net)
 @ description         : Cisco TW common JavaScript functions
 @ created             : 2006-07-31
 @ modified            : 2006-07-31
 ***********************************************************************/

/***** GenerateRHSBanners *****/
/*
public string (html)
requires rhs_banners array
sample format rhs_banners = new Array();
rhs_banners[rhs_banners.length] = [banner_url,link_url,width,height,priority,target];
    priority = 1 (always show)
    priority = 2 (randomly displayed)
*/
function generateRHSBanners( max_banner_count )
{
    if( rhs_banners == 'undefined' || !rhs_banners )
    { alert('Must define rhs_banner array!'); return; }
    var used_banner_count = 0;
    var banners = new Array(); // banners to be displayed
    var low_banners = new Array(); // low priority banners
    if( typeof max_banner_count != 'number' )
    { max_banner_count = 5; }
    // get high priority banners
    for( var i=0; i<rhs_banners.length; i++ )
    {
        var banner_url = rhs_banners[i][0];
        var link_url = rhs_banners[i][1];
        var banner_width = rhs_banners[i][2];
        var banner_height = rhs_banners[i][3];
        var banner_priority = rhs_banners[i][4];
        var banner_target = (typeof rhs_banners[i][5] == 'boolean' && rhs_banners[i][5]==true)? '_blank':'';
        if( banner_priority == 1 && used_banner_count < max_banner_count )
        { 
            banners[banners.length] = '<a href="' +link_url+ '" class="rhs-banner" target="'+banner_target+'"><img src="' +banner_url+ '" width="' +banner_width+ '" height="' +banner_height+ '" alt="" border="0" /></a>'; 
            used_banner_count++;
        }
        else
        { low_banners[low_banners.length] = '<a href="' +link_url+ '" class="rhs-banner" target="'+banner_target+'"><img src="' +banner_url+ '" width="' +banner_width+ '" height="' +banner_height+ '" alt="" border="0" /></a>'; }
    }
    if( banners.length < max_banner_count && low_banners.length > 0 )
    {   // add low priority banners
        if( ( max_banner_count - banners.length ) > low_banners.length )
        {   // add all low priority banners
            for( var i=0; i<low_banners.length; i++ )
            {
                banners[banners.length] = low_banners[i];
            }
        }
        else
        {   // randomly choose low_banners
            while( low_banners.length > 0 && banners.length < max_banner_count )
            {
                var random_low_banner_idx = Math.round( Math.random() * (low_banners.length-1) );
                banners[banners.length] = low_banners.splice(random_low_banner_idx,1);
            }
        }
    }
    //alert( banners.join("\n") );
    document.write( banners.join("<br /><br />\n") );
}   // end generateRHSBanners
