home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 June / PCWorld_1998-06_cd.bin / komunike / browser / ie40_32 / ie4shl95.CAB / folder.htt < prev    next >
Text File  |  1997-12-11  |  12KB  |  357 lines

  1. <!-- 
  2.  * This file was automatically generated by Microsoft Internet Explorer 4.0 
  3.  * using the file %THISDIRPATH%\folder.htt (if customized) or
  4.  * %TEMPLATEDIR%\folder.htt (if not customized).
  5.  -->
  6.  
  7. <html>
  8.     <style>
  9.         body        {font: 8pt/10pt verdana; margin: 0}
  10.         #Banner        {position: absolute; width: 100%; height: 88px; background: URL(res://webvw.dll/folder.gif) no-repeat top left}
  11.         #MiniBanner    {position: absolute; width: 100%; height: 32px; background: window}
  12.         #Icon        {position: absolute; left: 11px; top: 12px; width: 64px; height: 64px}
  13.         #FileList    {position: absolute; left: 30%; top: 88px; width: 1px; height: 1px}
  14.         #Media        {margin-left: 20px; margin-top: 10px}
  15.         #Panel        {position: absolute; top: 88px; width: 30%; background: window; overflow: auto}
  16.         #PieChart    {width: 100px; height: 50px; margin-top: 10px}
  17.         #Thumbnail    {width: 160px; height: 160px; margin-top: 0px}
  18.         #Status        {margin-left: 20px}
  19.         p        {margin-left: 20px; margin-right: 8px}
  20.         p.Title        {font: 16pt/16pt verdana; font-weight: bold; color: #0099FF}
  21.         p.Warning    {font-weight: bold; color: red}
  22.         p.Links        {margin-top: 4px}
  23.         a:link        {color: #FF6633}
  24.         a:visited    {color: #0099FF}
  25.         a:active     {color: black}
  26.     </style>
  27.  
  28.     <head>
  29. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1250">
  30.         <!-- allow references to any resources you might add to the folder -->
  31.         <!-- (a "webbot" is a special wrapper for FrontPage compatibility) -->
  32.         <!-- webbot bot="HTMLMarkup" tag="base" startspan -->
  33.         <base href="%THISDIRPATH%\">
  34.         <!-- webbot bot="HTMLMarkup" endspan -->
  35.  
  36.         <script language="JavaScript">
  37.             var L_Intro_Text    = "Vyberte ikonu, jejφ₧ popis chcete zobrazit.";
  38.             var L_Multiple_Text    = " objekt∙ vybrßno.";
  39.             var L_Size_Text        = "Velikost: ";
  40.             var L_FileSize_Text    = "Celkovß velikost souboru: ";
  41.             var L_Delimiter_Text    = ",";
  42.             var L_Bytes_Text    = " bajt∙";
  43.             var L_Attributes_Text    = "Atributy";
  44.             var L_Codes_Text    = "RHSACE";
  45.             var L_ReadOnly_Text     = "Jen pro Φtenφ";
  46.             var L_Hidden_Text    = "Skryt²";
  47.             var L_System_Text    = "SystΘmov²";
  48.             var L_Archive_Text    = "Archivovat";
  49.             var L_Compressed_Text    = "Zkomprimovan²";
  50.             var L_Encrypted_Text    = "ZaÜifrovan²";
  51.             var L_NoAttributes_Text = "(Nenφ nastaveno)";
  52.             var timer        = 0;
  53.             var wantMedia        = false; // cool, but may hinder media file manipulation
  54.  
  55.             function FixSize() {
  56.                 // this function handles fixed panel sizing and collapsing when the window resizes
  57.                 var hideTop    = 200;
  58.                 var hideLeft    = 400;
  59.                 var miniHeight    = 32;
  60.                 var ch        = document.body.clientHeight;
  61.                 var cw        = document.body.clientWidth;
  62.  
  63.                 if (hideTop > ch) {
  64.                     document.all.Banner.style.visibility = "hidden";
  65.                     document.all.MiniBanner.style.visibility = "visible";
  66.                     document.all.FileList.style.top = miniHeight;
  67.                     document.all.Panel.style.top = miniHeight;
  68.                 } else {
  69.                     document.all.Banner.style.visibility = "visible";
  70.                     document.all.MiniBanner.style.visibility = "hidden";
  71.                     document.all.FileList.style.top = (document.all.Banner.offsetHeight - 32) + "px";
  72.                     document.all.Panel.style.top = (document.all.Banner.offsetHeight) + "px";
  73.                     document.all.Rule.style.width = (cw > 84 ? cw - 84 : 0) + "px";      
  74.                 }
  75.                 if (hideLeft > cw) {
  76.                     document.all.Panel.style.visibility = "hidden";
  77.                     document.all.FileList.style.pixelLeft = 0;
  78.                     document.all.FileList.style.pixelTop = document.all.Panel.style.pixelTop;
  79.                 } else {
  80.                     document.all.Panel.style.visibility = "visible";
  81.                     document.all.FileList.style.pixelLeft = document.all.Panel.style.pixelWidth;
  82.                 }
  83.                 document.all.FileList.style.pixelWidth = cw - document.all.FileList.style.pixelLeft;
  84.                 document.all.FileList.style.pixelHeight = ch - document.all.FileList.style.pixelTop;
  85.                 document.all.Panel.style.pixelHeight = ch - document.all.Panel.style.pixelTop;
  86.             }
  87.  
  88.             function FormatNumber(n) {
  89.                 var t = "";
  90.                 var i, j = 0;
  91.                 for (i = n.length - 1; i >= 0; i--) {
  92.                     t = n.charAt(i) + t;
  93.                     if (i && ((++j % 3) == 0))
  94.                         t = L_Delimiter_Text + t;
  95.                 }
  96.                 return t;
  97.             }
  98.  
  99.             function Init() {
  100.                 // call our FixSize() function whenever the window gets resized
  101.                 window.onresize = FixSize;
  102.                 FixSize();
  103.                 Info.innerHTML = L_Intro_Text;
  104.             }
  105.         </script>
  106.  
  107.         <script language="JavaScript" for="FileList" event="SelectionChanged">
  108.             // this script updates the left info Panel when you select icons
  109.             var items    = FileList.FocusedItem;
  110.             var fldr    = FileList.Folder;
  111.             var name;
  112.             var data;
  113.             var text;
  114.             var title;
  115.             var size = 0;
  116.             var i;
  117.  
  118.             // cancel any pending status message
  119.             if (timer) {
  120.                 window.clearTimeout(timer);
  121.                 timer = 0;
  122.             }
  123.  
  124.             // erase any visible thumbnail since the selection changed
  125.             document.all.Thumbnail.style.display = "none";
  126.             document.all.Status.style.display = "none";
  127.  
  128.             // stop & destroy any media player
  129.             if (wantMedia)
  130.                 document.all.Media.innerHTML = "";
  131.  
  132.             data = FileList.SelectedItems().Count;
  133.             if (data == 0) {
  134.                 // nothing selected?
  135.                 Info.innerHTML = L_Intro_Text;
  136.                 return;
  137.             }
  138.             else if (data > 1) {
  139.                 // more than one item selected?
  140.                 text = data + L_Multiple_Text + "<br>";
  141.                 if (data <= 100) {
  142.                     for (i = 0; i < data; i++)
  143.                         size += FileList.SelectedItems().Item(i).Size;
  144.                     if (size)
  145.                         text += "<br>" + L_FileSize_Text + FormatNumber(size.toString()) + L_Bytes_Text + "<br>";
  146.                     if (data <= 16)
  147.                         for (i = 0; i < data; i++)
  148.                             text += "<br>" + FileList.SelectedItems().Item(i).Name;
  149.                 }
  150.                 Info.innerHTML = text;
  151.                 return;
  152.             }
  153.  
  154.             // name
  155.             name = fldr.GetDetailsOf(items, 0);
  156.             text = "<b>" + name + "</b>";
  157.  
  158.             // type
  159.             data = fldr.GetDetailsOf(items, 2);
  160.             if (data)
  161.                 text += "<br>" + data;
  162.  
  163.             // date
  164.             data = fldr.GetDetailsOf(items, 3);
  165.             if (data)
  166.                 text += "<br><br>" + fldr.GetDetailsOf(null, 3) + ":<br>" + data;
  167.  
  168.             // size?
  169.             size = FileList.SelectedItems().Item(0).Size;
  170.             if (size)
  171.                 if (size < 1000)
  172.                     text += "<br><br>" + L_Size_Text + size + L_Bytes_Text;
  173.                 else {
  174.                     data = fldr.GetDetailsOf(items, 1);
  175.                     if (data)
  176.                         text += "<br><br>" + fldr.GetDetailsOf(null, 1) + ": " + data;
  177.                     else
  178.                         text += "<br><br>" + L_Size_Text + FormatNumber(size.toString()) + L_Bytes_Text;
  179.                 }
  180.  
  181.             // extra details?
  182.             for (i = 4; i < 10; i++) {
  183.                 title = fldr.GetDetailsOf(null, i);
  184.                 if (!title)
  185.                     break;
  186.                 data = fldr.GetDetailsOf(items, i);
  187.                 if (title == L_Attributes_Text) {
  188.                     var code;
  189.                     var s = "";
  190.  
  191.                     text += "<br><br>" + title + ": ";
  192.                     for (i = 0; i < 6; i++) {
  193.                         code = L_Codes_Text.charAt(i);
  194.                         if (data.indexOf(code) > -1) {
  195.                             if (s)
  196.                                 s += ", ";
  197.                             if (i == 0)
  198.                                 s += L_ReadOnly_Text;
  199.                             else if (i == 1)
  200.                                 s += L_Hidden_Text;
  201.                             else if (i == 2)
  202.                                 s += L_System_Text;
  203.                             else if (i == 3)
  204.                                 s += L_Archive_Text;
  205.                             else if (i == 4)
  206.                                 s += L_Compressed_Text;
  207.                             else if (i == 5)
  208.                                 s += L_Encrypted_Text;
  209.                         }
  210.                     }
  211.                     if (!s)
  212.                         s = L_NoAttributes_Text;
  213.                     text += s;
  214.                 }
  215.                 else if (data)
  216.                     text += "<br><br>" + title + ":<br>" + data;
  217.             }
  218.  
  219.             // tip?
  220.             data = fldr.GetDetailsOf(items, -1);
  221.             if (data && data != name) {
  222.                 var start;
  223.                 var end;
  224.                 var theLink;
  225.                 var a;
  226.  
  227.                 // parse lines for Office files without breaking links below
  228.                 a = data.split("\n");
  229.                 data = a.join("<br>\n");
  230.  
  231.                 // look for embedded links
  232.                 text += "<br><br>";
  233.                 start = data.indexOf("http://");
  234.                 if (start < 0)
  235.                     start = data.indexOf("file://");
  236.                 if (start < 0)
  237.                     text += data;
  238.                 else {
  239.                     end = data.indexOf(" ", start);
  240.                     if (end < 0)
  241.                         end = data.length;
  242.                     if (start > 0)
  243.                         text += data.substring(0, start - 1);
  244.                     theLink = data.substring(start, end);
  245.                     text += theLink.link(theLink);
  246.                     if (end < data.length)
  247.                         text += data.substring(end + 1, data.length);
  248.                 }
  249.             }
  250.  
  251.             // replace Info with the new text
  252.             Info.innerHTML = text;
  253.  
  254.             if (wantMedia) {
  255.                 // show media preview or thumbnail based on file extension
  256.                 var ext = name.substring(name.lastIndexOf(".") + 1, name.length);
  257.                 ext = ext.toLowerCase();        
  258.                 if (ext == 'avi' || ext == 'mov' || ext == 'mpe' || ext == 'mpeg' || ext == 'mpg') {
  259.                     // show a movie player
  260.                     document.all.Media.innerHTML = '<object id="Player" style="width: 160px; height: 148px" classid=clsid:05589FA1-C356-11CE-BF01-00AA0055595A><param name="FileName" value="' + items.Path + '"><param name=ShowDisplay value=0><param name=BorderStyle value=0></object>'
  261.                     return;
  262.                 } else if (ext == 'aif' || ext == 'aifc' || ext == 'aiff' || ext == 'au' || ext == 'mid' || ext == 'rmi' || ext == 'snd' || ext == 'wav') {
  263.                     // show a sound player
  264.                     document.all.Media.innerHTML = '<object id="Player" style="width: 160px; height: 28px" classid=clsid:05589FA1-C356-11CE-BF01-00AA0055595A><param name="FileName" value="' + items.Path + '"><param name=ShowDisplay value=0></object>'
  265.                     return;
  266.                 }
  267.             }
  268.  
  269.             // try to generate a new thumbnail asynchronously, and delay the status message one second
  270.             if (Thumbnail.displayFile(items.Path))
  271.                 timer = window.setTimeout('document.all.Status.style.display = ""', 1000);
  272.         </script>
  273.  
  274.         <script language="JavaScript" for="Thumbnail" event="OnThumbnailReady">
  275.             // when a valid thumbnail has been generated, display it
  276.             window.clearTimeout(timer);
  277.             timer = 0;
  278.             document.all.Status.style.display = "none";
  279.             if (document.all.Thumbnail.haveThumbnail() && document.all.Media.innerHTML == "")
  280.                 document.all.Thumbnail.style.display = "";
  281.         </script>
  282.  
  283.     </head>
  284.  
  285.     <body scroll=no onload="Init()">
  286.  
  287.         <!-- start normal banner -->
  288.         <div id="Banner" style="visibility: hidden">
  289.             <!-- using a table with nowrap to prevent word wrapping -->
  290.             <table><tr><td nowrap>
  291.                 <p class=Title style="margin-left: 104px; margin-top: 16px">
  292.                 <!--webbot bot="HTMLMarkup" startspan alt="<B><I>Web View Folder Title</I></B> " -->
  293.                 %THISDIRNAME%
  294.                 <!--webbot bot="HTMLMarkup" endspan -->
  295.             </td></tr></table>
  296.             <!-- this is more efficient than a long graphic, but we have to adjust it in FixSize() -->
  297.             <hr id="Rule" size=1px color=black style="position: absolute; top: 44px; left: 84px">
  298.             <!-- this is our awesome icon extractor -->
  299.             <object id=Icon classid="clsid:E5DF9D10-3B52-11D1-83E8-00A0C90DC849">
  300.                 <param name="scale" value="200">
  301.             </object>
  302.         </div>
  303.         <!-- end normal banner -->
  304.  
  305.         <!-- start mini banner -->
  306.         <div id="MiniBanner" style="visibility: hidden">
  307.             <!-- using a table with nowrap to prevent word wrapping -->
  308.             <table><tr><td nowrap>
  309.                 <p class=Title style="margin-left: 16px; margin-top: 4px">
  310.                 <!--webbot bot="HTMLMarkup" startspan alt="<B><I>Web View Folder Title</I></B> " -->
  311.                 %THISDIRNAME%
  312.                 <!--webbot bot="HTMLMarkup" endspan -->
  313.             </td></tr></table>
  314.         </div>
  315.         <!-- end mini banner -->
  316.  
  317.         <!-- start left info panel -->
  318.         <div id="Panel">
  319.             <p style="margin-top: 16px");
  320.             <span id="Info">
  321.             </span>
  322.  
  323.             <!-- HERE'S A GOOD PLACE TO ADD A FEW LINKS OF YOUR OWN -->
  324.             <!-- (examples commented out)
  325.             <p>
  326.             <a href="http://www.mylink1.com/">Custom Link 1</a>
  327.             <p class=Links>
  328.             <a href="http://www.mylink2.com/">Custom Link 2</a>
  329.             -->
  330.  
  331.             <p>
  332.             <!-- this is the thumbnail viewer control -->
  333.             <object id=Thumbnail classid="clsid:1D2B4F40-1F10-11D1-9E88-00C04FDCAB92" style="display: none">
  334.             </object>
  335.  
  336.             <!-- this is the status message that pops up during thumbnail generation -->
  337.             <div id="Status" style="display: none">
  338.                 Probφhß generovßnφ miniatury...
  339.             </div>
  340.  
  341.             <!-- this contains the ActiveMovie control for later instantiation -->
  342.             <div id="Media">
  343.             </div>
  344.             
  345.         </div>
  346.         <!-- end left info panel -->
  347.  
  348.         <!-- this is the standard file list control -->
  349.         <!-- webbot bot="HTMLMarkup" startspan u-src="file:///C:\Program Files\Microsoft FrontPage Express\Data\FoldData.gif" -->
  350.         <object id="FileList" border=0 tabindex=1 classid="clsid:1820FED0-473E-11D0-A96C-00C04FD705A2"
  351.         </object>
  352.         <!-- webbot bot="HTMLMarkup" endspan -->
  353.  
  354.     </body>
  355. </html>
  356.  
  357.