
// Global settings.
////////////////////////////////////////////////////////////////////////////

//
// We use a two-dimensional array of links to point to the install points for
// the various flavours of MSN Explorer. Only the install points for the default
// MSN flavour can be changed at runtime via the SetMSNExplorerData() API. All other
// flavours are hardcoded below.
// The order of links in each "flavour" group is (Min, Min-Dun, Full, Full-Dun)
//

var G_MIN_INDEX     = 0;
var G_MINDUN_INDEX  = 1;
var G_FULL_INDEX    = 2;
var G_FULLDUN_INDEX = 3;

//<!-- Bug 563073 # hardcoded link to glink -->
var L_MINURL_TEXT     = "http://g.msn.com/1cl7xExpl/setup_ptbr";
var L_MINDUNURL_TEXT  = "http://g.msn.com/1cl7xExpl/setup_ptbr_dun";
var L_FULLURL_TEXT    = "http://g.msn.com/1cl7xExpl/setup_ptbr_full";
var L_FULLDUNURL_TEXT = "http://g.msn.com/1cl7xExpl/setup_ptbr_full_dun";

var MSN_FLAVOUR = 0;
var arrayMSNLinks = new Array   (
                        L_MINURL_TEXT,
                        L_MINDUNURL_TEXT,
                        L_FULLURL_TEXT,
                        L_FULLDUNURL_TEXT
                                );
                            
var COMPAQ_FLAVOUR = 1;
var arrayCompaqLinks = new Array (
                        "Compaq_MinPackage.htm",
                        "Compaq_MinDunPackage.htm",
                        "Compaq_FullPackage.htm",
                        "Compaq_FullDunPackage.htm"
                                 );
                                 
var DELL_FLAVOUR = 2;
var arrayDellLinks = new Array (
                        "Dell_MinPackage.htm",
                        "Dell_MinDunPackage.htm",
                        "Dell_FullPackage.htm",
                        "Dell_FullDunPackage.htm"
                                 );

var BESTBUY_FLAVOUR = 3;
var arrayBestbuyLinks = new Array (
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/bbyz/1.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/bbyz/2.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/bbyz/3.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/bbyz/4.asp"
                                 );
var BROADBAND_FLAVOUR = 4;
var arrayBroadbandLinks = new Array (
                        "Broadband_MinPackage.htm",
                        "Broadband_MinDunPackage.htm",
                        "Broadband_FullPackage.htm",
                        "Broadband_FullDunPackage.htm"
                                 );
var NEXTEL_FLAVOUR = 5;
var arrayNextelLinks = new Array (
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/nxtl/1.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/nxtl/2.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/nxtl/3.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/nxtl/4.asp"
                                 );
var STAPLES_FLAVOUR = 6;
var arrayStaplesLinks = new Array (
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/spls/1.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/spls/2.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/spls/3.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/spls/4.asp"
                                 );
var RADIOSHACK_FLAVOUR = 7;
var arrayRadioshackLinks = new Array (
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/tanz/1.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/tanz/2.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/tanz/3.asp",
                        "http://switch.avenuea.com/action/msn_explorer_install_button?href=http://go.msn.com/svcs/tanz/4.asp"
                                 );

// !! NOTE NOTE !! Make sure the order of the links in here match the FLAVOUR "value" defined above.
var g_rPackages = new Array ( arrayMSNLinks,
                              arrayCompaqLinks,
                              arrayDellLinks,
                              arrayBestbuyLinks,
                              arrayBroadbandLinks,
                              arrayNextelLinks,
                              arrayStaplesLinks,
                              arrayRadioshackLinks
                            );
                          
var L_sLanguage_TEXT = "br";
var g_sInstallImage = "img/button_install.jpg";
var g_sRootMSNLinks = "./";
var g_bShowToolTip = false;

// Localizable/Changable settings
/////////////////////////////////////////////
var L_ALTTAG_TEXT = 'Instalar o MSN Explorer';
var L_SIZELABEL1_TEXT = 'Tamanho do download: ';   // The message is created as: LABEL1 + xxx + LABEL2
var L_SIZELABEL2_TEXT = 'MB';
var L_TIMELABEL1_TEXT = 'Tempo de download: ';
var L_TIMELABEL2_TEXT = ' minutos (com um modem de 56K)';
var L_INSTALLINFO_TEXT = 'Informações de instalação e requisitos do sistema';
var L_IELEGALNOTE_TEXT = '<BR><B>Observação:</B> esta versão do MSN contém Internet Explorer 5.5.<BR>O Internet Explorer 5.5 ae Ferramentas para Internet pode ser exportado dos EUA para todos os clientes do mundo todo, exceto para destinos com embargo dos EUA. As informações sobre a exportação de produtos Microsoft estão disponíveis em <A HREF="http://www.microsoft.com/exporting/" TARGET="_new">www.microsoft.com/exporting/</A>.<BR>';
var L_OSNOTSUPPORTED_TEXT = 'Desculpe, esta versão do MSN só está disponível para Windows 95, Windows 98, Windows ME e Windows 2000.<BR>';
var L_BIDIOSNOTSUPPORTED_TEXT = '<b>O MSN Explorer ainda não é compatível com as versões do Windows em árabe ou hebreu.</b><BR>';

var L_MINDUNSIZE_TEXT   = '8';   // Download size(in MB) for minimum package with DUN
var L_MINDUNTIME_TEXT   = '24';  // Download time(in minutes) for minimum package with DUN
var L_MINSIZE_TEXT      = '5';   // Download size(in MB) for minimum package
var L_MINTIME_TEXT      = '16';  // Download time(in minutes) for minimum package
var L_FULLDUNSIZE_TEXT  = '22.5';  // Download size(in MB) for full package with DUN
var L_FULLDUNTIME_TEXT  = '68';    // Download time(in minutes) for full package with DUN
var L_FULLSIZE_TEXT     = '19.4';  // Download size(in MB) for full package
var L_FULLTIME_TEXT     = '60';    // Download time(in minutes) for full package

/*====================================================
 Initialize the STYLE and DIV needed for the tooltip.
 ====================================================*/
var L_TOOLTIP_TEXT  = "Depois de clicar neste botão de instalação, você poderá escolher executar o programa ou salvá-lo no disco. Escolha a primeira opção- Executar este programa a partir do seu local atual."; 

function InitToolTip()
{
    document.write("<STYLE TYPE='text/css'>" +
                    ".reminderTooltip { "    +
                        "position: absolute;" +
                        "top: 0px; "   +
                        "left: 0px;"   +
                        "z-index: 2;"  +
                        "width: 200px;" +
                        "visibility: hidden;" +
                        "font: 10pt MS Comic Sans,arial,sans-serif;" +
                        "background-color: #000000;" +
                        "padding-bottom: 1px;" +
                        "padding-left: 1px;" +
                        "padding-right: 1px;" +
                        "padding-top: 1px;" +
                        "border: 1px solid black;" +
                        "border-bottom: black 1px solid;" +
                        "border-left: black 1px solid;" +
                        "border-right: black 1px solid;" +
                        "border-top: black 1px solid;" +
                        "}" +
                    "</STYLE>");
                    
    document.write("<DIV CLASS=reminderTooltip ID='tt2'>" +
                    "<IMG SRC='img/popup.gif' WIDTH='294' HEIGHT='221' ALT='' BORDER='0'>" +
                    "</DIV>");
    
    g_bShowToolTip = true;  
}
                

/*=================================================================
Function: ShowTooltip
Purpose:  position, draw, and display tooltip element 
Input:    fArg - indexes text array to display
Returns:  undefined
==================================================================*/
function ShowTooltip(fArg)
{
    if (g_bShowToolTip)
    {
        // Get a reference to the button (srcElement) and the tooltip
        // If we don't have a tooltip, bail!

        var eSrc = window.event.srcElement;
        var eTip = document.all['tt' + fArg];
        if ('object' != typeof(eTip)) return;

        // Get the top and left coordinates to place the tip
        // It goes at the top left corner of the button
        // Walk eSrc.offsetParent to get the cumulative offset

        var iTipLeft = eSrc.offsetLeft / 2;
        var iTipTop = (eSrc.offsetTop - eTip.offsetHeight);
        while (eSrc.offsetParent)
        {
            eSrc = eSrc.offsetParent;
            iTipLeft += (eSrc.offsetLeft);
            iTipTop += (eSrc.offsetTop);
        }

        // If we don't fit at the top, position below the button

        if (iTipTop < document.body.scrollTop)
        {
            eSrc = window.event.srcElement;
            iTipTop += (eTip.offsetHeight + eSrc.offsetHeight);
        }

        // Set the tip's position and turn visibility on

        eTip.style.posLeft = iTipLeft;
        eTip.style.posTop = iTipTop;
        eTip.style.visibility = "visible";
    }
}

/*=================================================================
Function: HideTooltip
Purpose:  set visibility attribute of tooltip to hidden
Input:    none
Returns:  undefined
==================================================================*/
function HideTooltip(fArg)
{
    if (g_bShowToolTip)
    {
        // Get a reference to the button (srcElement) and the tooltip
        // If we don't have a tooltip, bail!

        var eTip = document.all['tt' + fArg];
        if ('object' != typeof(eTip)) return;

        // Turn the tooltip's visbibility off

        eTip.style.visibility = "hidden";
    }
}

/*==========================================
 Looks for the "mh=" crumb in the cookie
 ===========================================*/
function GetCookieCrumb(sMatch)
{
    var sReturn = "";
    var sCookie = document.cookie;
    var nCrumbStart = sCookie.indexOf(sMatch);

    if (nCrumbStart != -1)
    {
        var nCrumbEnd = sCookie.indexOf(";", nCrumbStart);
        if (nCrumbEnd == -1)
            nCrumbEnd = sCookie.length;
        sReturn = sCookie.substring(nCrumbStart+sMatch.length+1, nCrumbEnd);
    }

    return sReturn;
}

/*=======================================================
 Sniffs the UserAgent string for various parameters
 =======================================================*/
function Caps()
{
    var sAgent = navigator.userAgent

    // Initialize the members to default values.
    this.bIE = false;
    this.nIEMajorVer = 0;
    this.bMSNIA = false;
    this.bW95 = false;
    this.bW98 = false;
    this.bWNT5 = false;
    this.bMill = false;
    this.bSupported = false;
    this.sSysLang = "";
    
    if (sAgent.indexOf("MSIE")!= -1)
    {
        this.bIE = true;
        this.nIEMajorVer = sAgent.charAt(sAgent.indexOf("MSIE")+5);
    }
    if ((sAgent.indexOf("Windows 95")!=-1) || (sAgent.indexOf("Win95")!=-1))
        this.bW95 = true;
    if ((sAgent.indexOf("Windows 98")!=-1) || (sAgent.indexOf("Win98")!=-1))
        this.bW98 = true;
    if ((sAgent.indexOf("Windows 2000.")!=-1) || (sAgent.indexOf("Windows NT 5")!=-1))
        this.bWNT5 = true;
    if (sAgent.indexOf("Win 9x 4.90")!=-1)
        this.bMill = true;

    this.bMSNIA = (GetCookieCrumb("mh") == "MSNI");
        
    if ((this.bW95) || (this.bWNT5) || (this.bW98) || (this.bMill))
        this.bSupported = true;
    if (this.bIE && this.nIEMajorVer >=4)
        this.sSysLang = navigator.systemLanguage;
}

/*====================================================================================
 nSysComponent - number that identifies what warning prompt to show.
    1 -> need to install new IE bits
    2 -> need to install new WMP bits
 dwFlags - see DownloadMSNExplorer for details about the dwFlags
 ====================================================================================*/
function OutputInstallLink(bMinPackage, nSysComponent, oScriptCaps, dwFlags)
{
    var sPackage = '';
    var sDownloadSize = '';
    var sDownloadTime = '';
    var bShowLegalNotice = false;
    var nFlavourIndex = MSN_FLAVOUR;
    
    // If the user does not want to suppress flavour checking, try to get the correct flavour
    if ((dwFlags & 0x00000100) != 0x00000100)  
    {
        var sCookieValue = GetCookieCrumb("mh");

        if (sCookieValue == "BBYZ")
            nFlavourIndex = BESTBUY_FLAVOUR;
        else if (sCookieValue == "NXTL")
            nFlavourIndex = NEXTEL_FLAVOUR;
        else if (sCookieValue == "SPLS")
            nFlavourIndex = STAPLES_FLAVOUR;
        else if (sCookieValue == "TANZ")
            nFlavourIndex = RADIOSHACK_FLAVOUR;
        else
            nFlavourIndex = MSN_FLAVOUR;
        
        if (nFlavourIndex >= g_rPackages.length)
        {        
            // Ummm... we do not support this flavour any more. Default to MSN.
            nFlavourIndex = MSN_FLAVOUR;
        }
    }
    
    if (bMinPackage)
    {
        if (oScriptCaps.bW95) 
        { 
            sPackage =  g_rPackages[nFlavourIndex][G_MINDUN_INDEX];
            sDownloadSize = L_MINDUNSIZE_TEXT;
            sDownloadTime = L_MINDUNTIME_TEXT;
        }       
        else
        {
            sPackage =  g_rPackages[nFlavourIndex][G_MIN_INDEX];
            sDownloadSize = L_MINSIZE_TEXT;
            sDownloadTime = L_MINTIME_TEXT;
        }
    }
    else
    {
        bShowLegalNotice = true;
        if (oScriptCaps.bW95) 
        {
            sPackage = g_rPackages[nFlavourIndex][G_FULLDUN_INDEX];
            sDownloadSize = L_FULLDUNSIZE_TEXT;
            sDownloadTime = L_FULLDUNTIME_TEXT;
        }             
        else 
        {
            sPackage = g_rPackages[nFlavourIndex][G_FULL_INDEX];
            sDownloadSize = L_FULLSIZE_TEXT;
            sDownloadTime = L_FULLTIME_TEXT;
        }   
    }

    if (    nSysComponent != 0 
        &&  (oScriptCaps.sSysLang.indexOf(L_sLanguage_TEXT) == -1)
        &&  (dwFlags & 0x00000001) != 0)
    {
        // Customer has a non-English platform and needs some system components like IE, WMP etc.
        // Need to make the install button popup a window that explains this to the user and then
        // gives him the chance to still go ahead with the install.
        document.write('<BR><CENTER><A HREF="#" TITLE="' + L_ALTTAG_TEXT + '" ID="idLangWarn" onClick=window.open("' + g_sRootMSNLinks + 'langwarn.htm?prompt=' + nSysComponent 
                    + '","Warning","height=550,width=480,status=no,toolbar=no,menubar=no,scrollbars=yes");>'
                    + '<IMG NAME="' + L_ALTTAG_TEXT + '" SRC="' + g_sInstallImage + '" ALT="' + L_ALTTAG_TEXT +
                    '" BORDER="0" WIDTH="150" HEIGHT="66"></A></CENTER><BR>');
    }
    else
    {
        // Everything is OK. Do the actual install.     
        if (    oScriptCaps.bIE 
            &&  oScriptCaps.nIEMajorVer >=4
            &&  (dwFlags & 0x00000010) != 0)
        {
            InitToolTip();
        }
        document.write('<BR><CENTER><A ID="idPackageLink" HREF="' + sPackage + '" TITLE="' + L_ALTTAG_TEXT + '" onmouseover="ShowTooltip(2);" onmouseout="HideTooltip(2);">' +
                        '<IMG NAME="' + L_ALTTAG_TEXT + '" SRC="' + g_sInstallImage + '" ALT="' + L_ALTTAG_TEXT + '" BORDER="0" WIDTH="150" HEIGHT="66"></A></CENTER>');      
    }

    document.write('<CENTER><FONT SIZE="1" face="Verdana">' + L_SIZELABEL1_TEXT + sDownloadSize + L_SIZELABEL2_TEXT +
                    '&nbsp; &nbsp;' + L_TIMELABEL1_TEXT + sDownloadTime + L_TIMELABEL2_TEXT + '</FONT></CENTER>');

    if ((dwFlags & 0x00000004) != 0)
    {
        // Show the "Install Info" link.    
        document.write('<CENTER><FONT SIZE="1" FACE="Verdana"><A HREF="' + g_sRootMSNLinks + 'install.htm">' + L_INSTALLINFO_TEXT + '</A></FONT></CENTER><BR>');
    }
    else
    {
        // If the user does not want the "Install Info" link, then we will show the legal notice about IE (if required).
        if (bShowLegalNotice)
        {
            document.write(L_IELEGALNOTE_TEXT);
        }
    }
    
}

/*=========================================================================================================
 External API - SetMSNExplorerData
    Sets the parameters that are used to output the "Install" link. **NOTE**: The Package URLs supplied here
    are applied to "default MSN" flavour. URLs to other flavours cannot be changed thru' this API.
 ==========================================================================================================
    sLanguage - language of the MSN Explorer bits available on this site (eg. en-us)
    sLinkImage - URL to the image that is to be associated with the "Install" link
    sRootMSNLinks - URL to the root of the official MSN Explorer site. This will be used redirect 
        for any additional info pages that need to be shown (eg. language mismatch, MSNIA warning)
    sMinPackage - URL to the Minimum install package.
    sMinDUNPackage - URL to the Minimum+DUN install package
    sFullPackage - URL to the Full install package
    sFullDUNPackage - URL to the Full+DUN install package
 =========================================================================================================*/
function SetMSNExplorerData(sLanguage, sInstallImage, sRootMSNLinks, sMinPackage, sMinDUNPackage, sFullPackage, sFullDUNPackage)
{
    L_sLanguage_TEXT = sLanguage;  // Note: Helium will error here, please ignore.
    g_sInstallImage = sInstallImage;
    g_sRootMSNLinks = sRootMSNLinks;
    
    g_rPackages[MSN_FLAVOUR][G_MIN_INDEX]     = sMinPackage;
    g_rPackages[MSN_FLAVOUR][G_MINDUN_INDEX]  = sMinDUNPackage;
    g_rPackages[MSN_FLAVOUR][G_FULL_INDEX]    = sFullPackage;
    g_rPackages[MSN_FLAVOUR][G_FULLDUN_INDEX] = sFullDUNPackage;
}

/*========================================================================================================
 External API - DownloadMSNExplorer
    Writes out the "Install" link, pointing it to the correct package based on the user's configuration
 =========================================================================================================
 dwFlags:
    0x00000001 ==> the caller wants us to check for  non-system language
                   and pop up the warning window.
    0x00000002 ==> the caller wants us to check for MSNIA users and redirect
                   them to the warning page.
    0x00000004 ==> the caller wants us to show the "Install Info" link below the
                   Install button.
    0x00000010 ==> the caller wants us to show the tool tip for the "Install" link
            
    0x00000100 ==> the caller DOES NOT want us to check for "flavour"s ie. the caller wants us to dish out
                   the default MSN flavour.
 =========================================================================================================*/    
function DownloadMSNExplorer(dwFlags)
{       
    var oScriptCaps = new Caps();   
            
    if (oScriptCaps.bIE && oScriptCaps.nIEMajorVer >=5 && oScriptCaps.bSupported)
    {
        document.write("<DIV ID='oClientCaps' STYLE='behavior:url(#default#clientcaps)'></DIV>");
    }
    
    // If existing MSNIA user, need to take them to the MSNIA page.
    if (   oScriptCaps.bMSNIA 
        && ((dwFlags & 0x00000002) != 0)) 
    {
        var sPath = '<CENTER>' + 
                    '<A HREF="' + g_sRootMSNLinks + 'msnia.htm" TITLE="' + L_ALTTAG_TEXT + '">' +
                    '<IMG NAME="' + L_ALTTAG_TEXT + '" SRC="' + g_sInstallImage + '" ALT="' + L_ALTTAG_TEXT + '" BORDER="0" c"160" HEIGHT="66">' + 
                    '</A>' +
                    '</CENTER>';

        document.write(sPath);   
    }
    else
    {   
        // Get component versions                         
        if (oScriptCaps.bIE && oScriptCaps.nIEMajorVer >=5 && oScriptCaps.bSupported)
        {
            sWMPVersion = oClientCaps.getComponentVersion("{22D6F312-B0F6-11D0-94AB-0080C74C7E95}","componentid");
            sVBSVersion = oClientCaps.getComponentVersion("{4f645220-306d-11d2-995d-00c04f98bbc9}","componentid");
            sOBPVersion = oClientCaps.getComponentVersion("{3af36230-a269-11d1-b5bf-0000f8051515}","componentID");
            sIEVersion = oClientCaps.getComponentVersion("{89820200-ECBD-11cf-8B85-00AA005B4383}","componentID");       
        }
            
       // Check for non-IE browsers, and IE3 or less
       if ((!oScriptCaps.bIE) || (oScriptCaps.nIEMajorVer <=3))
       {
	   OutputInstallLink(false, 1, oScriptCaps, dwFlags);
       }       
       else 
       {
	   // NOTE: These are constant Version strings. These are NOT to be Localized.
	   // DO NOT LOCALIZE THESE.
	   var s_IE50            = "5,0,2014,216";
	   var s_IE50_VBScript   = "5,0,3,10";
	   var s_IE50_WMP        = "6,1,5,130";
	   var s_IE501           = "5,0,2919,6307";
	   var s_IE501_VBScript  = "5,0,3,18";
	   var s_IE501_WMP       = "6,4,7,1028";
	   var s_IE55_MS            = "5,50,0,0";
	   var s_IE55SP2            = "5,50,4807,2300";
	   var s_IE55SP2_MobilePack = "5,50,4807,2300";
	   var s_IE55SP2_VBScript   = "5,5,0,6330";
	   var s_IE55SP2_VBScript_MS = "5,5,0,0";
	   var s_IE60_MS         = "6,0,0,0";

	   var s_Reqd_IE       = s_IE501;
	   var s_Reqd_VBScript = s_IE501_VBScript;
	   var s_Reqd_WMP      = s_IE501_WMP;

	   // Check for a supported platform
	   if (!oScriptCaps.bSupported) 
	   {
	       document.write (L_OSNOTSUPPORTED_TEXT);
	   }
	   else // Check for BiDi systems
	   if ((oScriptCaps.sSysLang.indexOf("ar-")!=-1) ||  (oScriptCaps.sSysLang.indexOf("he")!=-1))
	   {
	       document.write (L_BIDIOSNOTSUPPORTED_TEXT);
	   }
	   else // Check for WinME or Windows 2000
	   if (oScriptCaps.bWNT5 || oScriptCaps.bMill)
	   {
	       OutputInstallLink(true, 0, oScriptCaps, dwFlags);
	   }
	   else   // Check for IE 5
	   if (oScriptCaps.nIEMajorVer < 5)
	   {
	       OutputInstallLink(false, 1, oScriptCaps, dwFlags);
	   }	            	   
	   // ***** beyond this point, it is assured that the user has IE50 or higher *****
	   // ***** So we can make use of ClientCap feature                           *****
	   else   // Check for baseline IE           
	   if (-1 == oClientCaps.compareVersions(sIEVersion, s_Reqd_IE))
	   {
	       OutputInstallLink(false, 1, oScriptCaps, dwFlags);
	   }            
	   else    // If running IE 5.5 SP2, the Offline Browsing Pack must match exactly
	   if (   (0 == oClientCaps.compareVersions(sIEVersion, s_IE55SP2))
	       && (-1 == oClientCaps.compareVersions(sOBPVersion, s_IE55SP2_MobilePack))
	      )
	   {
	       OutputInstallLink(false, 1, oScriptCaps, dwFlags);
	   }
	   // If user has any IE5.5 version, need to have some matching 5.5 VBScript
	   // Or need atleast the baseline VBScript
	   else
	   if (   (   (0 <= oClientCaps.compareVersions(sIEVersion, s_IE55_MS))
		   && (-1 == oClientCaps.compareVersions(sIEVersion, s_IE60_MS))
		   && (-1 == oClientCaps.compareVersions(sVBSVersion, s_IE55SP2_VBScript_MS))
		  )
	       || (-1 == oClientCaps.compareVersions(sVBSVersion, s_Reqd_VBScript))
	      )
	   {
	       OutputInstallLink(false, 1, oScriptCaps, dwFlags);
	   }
	   else   // Check for baseline Windows Media Player           
	   if (-1 == oClientCaps.compareVersions(sWMPVersion, s_Reqd_WMP))
	   {
	       OutputInstallLink(false, 2, oScriptCaps, dwFlags);
	   }
	   else
	   {           
	       // Customer has IE 5 and all reqd. components. Can install the min. package         
	       OutputInstallLink(true, 0, oScriptCaps, dwFlags);
	   }           
       }
   }
}



