home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 2003 August / VPR0308.ISO / ANTI_VIR / NAV2003 / NVJP30TD.EXE / NAV / SWPlugin.dll / HTML / SCANNERS.JS < prev    next >
Text File  |  2001-08-13  |  14KB  |  338 lines

  1. /*********************************************************************************/
  2. // message maps
  3. window.onload=OnResizeBody;
  4.  
  5. /*********************************************************************************/
  6. // Element positioning and sizing constants
  7. var ScannerTableToBodyHeightDiff = 50;
  8. var bWinNT  = false;
  9.  
  10. function GetOS()
  11. {
  12.     var ua = navigator.userAgent;
  13.        if(ua.indexOf("Windows NT") >= 1)
  14.         bWinNT =  true;
  15.        if(bWinNT)
  16.            parent.NumberOfScanners = MAXIMUM_Scanners - 3;
  17.     else
  18.         parent.NumberOfScanners = MAXIMUM_Scanners;
  19. }
  20.  
  21. /*********************************************************************************/
  22. // Change the description of scanner
  23.  
  24. function Update_Description(Index, NewDescription)
  25. {
  26.     var DescriptionElementID = "Scanner" + Index + "_Description";
  27.     var DescriptionElement = document.body.all.item(DescriptionElementID, 0);
  28.     if (DescriptionElement)
  29.         DescriptionElement.innerHTML = NewDescription;
  30. //        DescriptionElement.innerHTML = '<I>' + NewDescription + '</I>';
  31. // sshirai
  32. }
  33. /*********************************************************************************/
  34. // THIS FUNCTIONS IS USED TO CHANGE THE IMAGE IN THE PAGE BEFORE,DURING AND AFTER SCANNING
  35.  
  36. function Update_Image(Index,Gif_Number )
  37. {
  38.   if (parent.images_coll.length>0)
  39.     parent.images_coll(parent.Images[Index]).src= parent.pict[Gif_Number];
  40. }
  41. /*********************************************************************************/
  42. // THIS FUNCTION IS USED TO FORMAT THE DYNAMIC ERROR 
  43.  
  44. function Update_Error(Index,ErrorString,ColorName,IsBold)
  45. {
  46.   ErrorID = parent.ScannerErrors[Index];
  47.   ToolTipString = parent.GetString("TOOLTIP_MESSAGE", "", "");
  48.   if (IsBold)
  49.     document.body.all(ErrorID).innerHTML =  "<B>" + ErrorString + "</B>";
  50.   else
  51.     document.body.all(ErrorID).innerHTML =  ErrorString;
  52.   FontColorID =  parent.ErrorColors[Index];
  53.   parent.font_coll(FontColorID).color = ColorName;
  54. }
  55.  
  56. function LaunchPointProduct(WrapperIndex,ThisElement)
  57. {
  58.  parent.object_coll(parent.Wrappers[WrapperIndex]).RunPointProduct();
  59.  ThisElement.className = 'classLink';
  60. }
  61.  
  62. /*********************************************************************************/
  63. // THIS FUNCTION IS USED TO DISPLAY ERROR COLOR, ERROR AND CHANGE IMAGE, UPDATE PROGRESSBAR
  64.  
  65. function Update_UI(bSuccessful)
  66. {
  67.     var NewDescription = "";
  68.     var ErrorString;
  69.     var ImageNum;
  70.     var IsBold = false;
  71.     var Scanner_numErrors = parent.object_coll(parent.Wrappers[parent.ScannerNumber]).numErrors;
  72.     if (!bSuccessful)
  73.     {
  74.         // scan did not run (different from scan ran but errors were found!)
  75.         if ( parent.GetProductInstalledError(parent.ScannerNumber) )
  76.             NewDescription = parent.GetNoPointProductMsg(parent.ScannerNumber);
  77.         ErrorString = parent.GetString("SCAN_FAILED", "", "");
  78.         ErrorColor = "Red";
  79.         IsBold = true;
  80.         ImageNum = 0;
  81.     }
  82.     else if(Scanner_numErrors > 0)
  83.     { 
  84.        if(Scanner_numErrors == 1) 
  85.             ErrorString =  Scanner_numErrors + parent.GetString("SINGLE_ERROR_FOUND", "", "");
  86.        else
  87.             ErrorString =  Scanner_numErrors + parent.GetString("ERRORS_FOUND", "", "");
  88.           parent.Scanner_With_Errors[parent.TotalScanners_With_Errors++]= parent.ScannerNumber;
  89.        parent.TotalNumErrors += Scanner_numErrors;
  90.        IsBold = true;
  91.        ErrorColor = "Red";
  92.        ImageNum = 2;
  93.         
  94.     }
  95.     else
  96.     {
  97.         ErrorString = parent.GetString("NO_ERRORS_FOUND", "", "");
  98.         ErrorColor = "Green";
  99.         ImageNum = 2;
  100.     }
  101.     
  102.     Update_Image(parent.ScannerNumber, ImageNum);  
  103.     Update_Error(parent.ScannerNumber,ErrorString,ErrorColor,IsBold);  
  104.     if (NewDescription != "")
  105.         Update_Description(parent.ScannerNumber, NewDescription);
  106.     
  107.     //parent.images_coll(parent.Images[parent.ScannerNumber]).scrollIntoView(true);
  108.     var ScannerTableRowID = "ScannerTableRow" + parent.ScannerNumber;
  109.     document.body.all.item(ScannerTableRowID).scrollIntoView(true);
  110.   }
  111.  
  112. /*********************************************************************************/
  113. // THIS FUNCTION IS CALLED TO SET THE PAGE TO DEFAULTS
  114.  
  115. function Set_Defaults()
  116. {
  117.   // set all images to defaults
  118.  
  119.   for(i=0;i<parent.images_coll.length;i++)
  120.      Update_Image(i,0);
  121.   
  122.   // set all errors strings to empty
  123.   
  124.   for(i=0;i< parent.NumberOfScanners;i++)
  125.      Update_Error(i," ","Black",false);
  126.  
  127.   for(i=0;i< parent.NumberOfScanners;i++)
  128.         parent.Scanner_With_Errors[i] = 0;
  129.   
  130.   parent.TotalScanners_With_Error = 0;
  131.   parent.ScannersFixed = 0;
  132.   parent.TotalNumErrors = 0;
  133.   parent.NumFixedErrors = 0;
  134.   parent.Errors_before_another_scan = 0;
  135.   parent.ScannerIndex = 0;
  136.   parent.ScannerNumber = 0;
  137.   parent.IsOBCFinished = false;
  138.  
  139.   parent.Update_ProgressBar(SCAN_Idle);
  140. }
  141.  
  142. function WriteScannerTableRow(ScannerIndex, ScannerName, ScannerTip, ScannerDescription)
  143. {
  144.     var i = ScannerIndex;
  145.     document.writeln('<TR ID=ScannerTableRow' + i + '>');
  146.     document.writeln('    <TD WIDTH="14" VALIGN="top"><IMG ID="Image' + i + '" BORDER="0" SRC="scanner.gif" WIDTH="14" HEIGHT="14"></TD>');
  147.     document.writeln('    <TD WIDTH="350" VALIGN="top">');
  148.     document.writeln('        <SPAN CLASS="classScannerName" TOOLTIP="' + ScannerTip + '" ONCLICK="ShowToolTip(this)" ONMOUSEOUT="HideToolTip(this)">' + ScannerName + '</SPAN><BR>');
  149.     document.writeln('        <SPAN ID="Scanner' + i + '_Description" CLASS="classScannerDescription">'+ ScannerDescription + '</SPAN>');
  150.     document.writeln('    </TD>');
  151.     document.writeln('    <TD WIDTH="179" VALIGN="top">');
  152.     document.writeln('        <FONT ID="ErrorColor' + i + '"><SPAN ID="Scanner' + i + '_Error"></SPAN></FONT>');
  153.     document.writeln('    </TD>');
  154.     document.writeln('</TR>');
  155. }
  156.  
  157. function OnResizeBody()
  158. {
  159.     // adjust height of the scanner table to maximum possible height
  160.     var ScannerTableHeight;
  161.     ScannerTableHeight = document.body.clientHeight - ScannerTableToBodyHeightDiff;
  162.     if (ScannerTableHeight < 0)
  163.         ScannerTableHeight = 0;
  164.     document.body.all.scanners_list.style.height = ScannerTableHeight;
  165. }
  166.  
  167. // fire off or stop the visual cues that indicate OBC is busy
  168. function SetBusy(bBusy)
  169. {
  170.     var BackgroundImage;
  171.     if (bBusy)
  172.         BackgroundImage = parent.GetImage("BACKGROUND_BUSY", "");
  173.     else
  174.         BackgroundImage = parent.GetImage("BACKGROUND_IDLE", "");
  175.     document.body.style.backgroundImage = "url(" + BackgroundImage + ")";
  176. }
  177.  
  178. /*********************************************************************************/
  179. // Tool Tips
  180.  
  181. // Set the text, size and position of the tool tip and make it visible
  182. // Note: A SPAN element was placed into the DIV block because in IE4
  183. //       the DIV tag does not automatically adjust to the content's
  184. //       size (but rather something ridiculously wide).  The SPAN
  185. //       element will, however, size automatically and in effect we use
  186. //       it to figure out the size of the DIV.  In IE5, the SPAN tag
  187. //       is not needed at all.
  188. // Note: The custom attribute TOOLTIP stores the tooltip's text
  189. // Note: After setting the text into the SPAN tag we need to give IE4
  190. //       a chance to calculate the size, thus we use set a timer to
  191. //       call the 2nd part of ShowToolTip.
  192. function ShowToolTip(ThisElement)
  193. {
  194.     // make sure no tool tip is already showing as we adjust it
  195.     HideToolTip(ThisElement);
  196.  
  197.     // get the tool tip text from the custom TOOLTIP attribute
  198.     var ToolTipText = ThisElement.getAttribute("TOOLTIP");
  199.     if (ToolTipText == null)
  200.         return;
  201.  
  202.     // get the tool tip elements
  203.     var ToolTipBoxElement = document.all.ToolTipDiv;
  204.     var ToolTipTextElement = document.all.ToolTipTextBox;
  205.  
  206.     // set the text.. 
  207.     // but first reset the text height and width so they will be
  208.     // automatically calculated; the box must also be wide enough
  209.     // or else the text will wrap
  210.     ToolTipBoxElement.style.width = document.body.clientWidth;
  211.     ToolTipTextElement.style.height = "";
  212.     ToolTipTextElement.style.width = "";
  213.     ToolTipTextElement.innerHTML = ToolTipText;
  214.  
  215.     // give a chance for IE4 to calculate text height and width
  216.     // then call second part of ShowToolTip
  217.     var x = event.clientX;
  218.     var y = event.clientY + 20;
  219.     var params = x + "," + y;
  220.     setTimeout("ShowToolTipPart2(" + params + ")", 1);  // time out as fast as possible
  221. }
  222.  
  223. function ShowToolTipPart2(x, y)
  224. {
  225.     // get the tool tip elements
  226.     var ToolTipBoxElement = document.all.ToolTipDiv;
  227.     var ToolTipTextElement = document.all.ToolTipTextBox;
  228.  
  229.     // calculate tool tip box position and size
  230.     var TotalWidthBorder   = parseInt(ToolTipBoxElement.style.borderLeftWidth)
  231.                            + parseInt(ToolTipBoxElement.style.borderRightWidth);
  232.     var TotalWidthPadding  = parseInt(ToolTipBoxElement.style.paddingLeft)
  233.                            + parseInt(ToolTipBoxElement.style.paddingRight);
  234.     var TotalHeightBorder  = parseInt(ToolTipBoxElement.style.borderTopWidth)
  235.                            + parseInt(ToolTipBoxElement.style.borderBottomWidth);
  236.     var TotalHeightPadding = parseInt(ToolTipBoxElement.style.paddingTop)
  237.                            + parseInt(ToolTipBoxElement.style.paddingBottom);
  238.     var ToolTipHeight = ToolTipTextElement.offsetHeight + TotalHeightBorder + TotalHeightPadding;
  239.     var ToolTipWidth  = ToolTipTextElement.offsetWidth + TotalWidthBorder + TotalWidthPadding;
  240.     var ToolTipTop = y;
  241.     var ToolTipLeft = x;
  242.  
  243.     // adjust vertical position so it won't be off the client area
  244.     var tmpToolTipBottom = ToolTipTop + ToolTipHeight;
  245.  
  246.     // STS 342381...Move the tooltip above the hand cursor instead
  247.     // if (tmpToolTipBottom > document.body.clientHeight)
  248.     //     ToolTipTop = document.body.clientHeight - ToolTipHeight - 1;
  249.  
  250.     if (tmpToolTipBottom > document.body.clientHeight)
  251.         ToolTipTop = y - 20 - ToolTipHeight - 1;
  252.     if (ToolTipTop < 0)
  253.         ToolTipTop = 0;
  254.  
  255.     // adjust horizontal position so it won't be off the client area
  256.     var tmpToolTipRight = ToolTipLeft + ToolTipWidth;
  257.     if (tmpToolTipRight > document.body.clientWidth)
  258.         ToolTipLeft = document.body.clientWidth - ToolTipWidth - 1;
  259.     if (ToolTipLeft < 0)
  260.         ToolTipLeft = 0;
  261.         
  262.     // set the position then size then visibility
  263.     ToolTipBoxElement.style.height = ToolTipHeight;
  264.     ToolTipBoxElement.style.width = ToolTipWidth;
  265.     ToolTipBoxElement.style.top = ToolTipTop;
  266.     ToolTipBoxElement.style.left = ToolTipLeft; 
  267.     ToolTipBoxElement.style.visibility = "visible";
  268. }
  269.  
  270. function HideToolTip(ThisElement)
  271. {
  272.     var ToolTipElement = document.all.ToolTipDiv;
  273.     ToolTipElement.style.visibility = "hidden";
  274.     ToolTipElement.style.top = 0;
  275.     ToolTipElement.style.left = 0; 
  276. }
  277. function LoadScanners()
  278. {
  279.   var Index=0;
  280.   var ScannerName,ScanDesc,Tooltip;
  281.   
  282.   parent.LoadResourceDoc();
  283.   GetOS();
  284.    
  285.   ScannerName = parent.GetString("WIN_REG_SCAN", "", "");
  286.   ScanDesc = parent.GetString("WIN_REG_SCAN_DESC", "", "");
  287.   Tooltip = parent.GetString("WIN_REG_SCAN_TOOLTIP", "", "");
  288.   WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  289.             
  290.   ScannerName = parent.GetString("PROGRAM_INTEGRITY_SCAN", "", "");
  291.   ScanDesc = parent.GetString("PROGRAM_INTEGRITY_SCAN_DESC", "", "");
  292.   Tooltip = parent.GetString("PROGRAM_INTEGRITY_SCAN_TOOLTIP", "", "");
  293.   WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  294.             
  295.   ScannerName = parent.GetString("FREE_SPACE_CHECK", "", "");
  296.   ScanDesc = parent.GetString("FREE_SPACE_CHECK_DESC", "", "");
  297.   Tooltip = parent.GetString("FREE_SPACE_CHECK_TOOLTIP", "", "");
  298.   WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  299.             
  300.   ScannerName = parent.GetString("VIRUS_PROTECT_CHECK", "", "");
  301.   ScanDesc = parent.GetString("VIRUS_PROTECT_CHECK_DESC", "", "");
  302.   Tooltip = parent.GetString("VIRUS_PROTECT_CHECK_TOOLTIP", "", "");
  303.   WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  304.             
  305.   ScannerName = parent.GetString("AUTO_PROTECT_CHECK", "", "");
  306.   ScanDesc = parent.GetString("AUTO_PROTECT_CHECK_DESC", "", "");
  307.   Tooltip = parent.GetString("AUTO_PROTECT_CHECK_TOOLTIP", "", "");
  308.   WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  309.             
  310.   ScannerName = parent.GetString("LAST_VIRUS_SCAN", "", "");
  311.   ScanDesc = parent.GetString("LAST_VIRUS_SCAN_DESC", "", "");
  312.   Tooltip = parent.GetString("LAST_VIRUS_SCAN_TOOLTIP", "", "");
  313.   WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  314.             
  315.   ScannerName = parent.GetString("SHORTCUT_SCAN", "", "");
  316.   ScanDesc = parent.GetString("SHORTCUT_SCAN_DESC", "", "");
  317.   Tooltip = parent.GetString("SHORTCUT_SCAN_TOOLTIP", "", "");
  318.   WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  319.             
  320.   if(!bWinNT)
  321.   {
  322.    ScannerName = parent.GetString("DISK_DOCTOR", "", "");
  323.    ScanDesc = parent.GetString("DISK_DOCTOR_DESC", "", "");
  324.    Tooltip = parent.GetString("DISK_DOCTOR_TOOLTIP", "", "");
  325.    WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  326.                 
  327.    ScannerName = parent.GetString("REG_DOCTOR", "", "");
  328.    ScanDesc = parent.GetString("REG_DOCTOR_DESC", "", "");
  329.    Tooltip = parent.GetString("REG_DOCTOR_TOOLTIP", "", "");
  330.    WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  331.                
  332.    ScannerName = parent.GetString("DISK_FRAG_SCAN", "", "");
  333.    ScanDesc = parent.GetString("DISK_FRAG_SCAN_DESC", "", "");
  334.    Tooltip = parent.GetString("DISK_FRAG_SCAN_TOOLTIP", "", "");                
  335.    WriteScannerTableRow(Index++, ScannerName,Tooltip,ScanDesc);
  336.   }
  337. }
  338.