home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 2004 December / PCpro_2004_12.ISO / files / webserver / tsw / TSW_3.4.0.exe / Apache2 / asp / top.inc < prev    next >
Encoding:
Text File  |  2003-09-03  |  2.9 KB  |  132 lines

  1. <%
  2.  
  3.  
  4.  
  5. use File::Basename;
  6.  
  7. my $basename = basename($0);
  8.  
  9. ($basename) = split(/\./, $basename);
  10.  
  11. my $section = $FILES{$basename} || die("no section for $basename");
  12.  
  13. my ($data) = grep($_->{name} eq $section, @{$ASP->{stack}});
  14.  
  15.  
  16.  
  17. my ($copy) = grep($_->{name} eq 'COPYRIGHT', @{$ASP->{stack}});
  18.  
  19. $copy->{body} =~ s/\n\n.*$//sg;
  20.  
  21.  
  22.  
  23. $data || die("can't get data for $section");
  24.  
  25. my $module = "Apache :: ASP";
  26.  
  27. my $title = "$module :: ".uc(lc $data->{name});
  28.  
  29.  
  30.  
  31. %>
  32.  
  33.  
  34.  
  35. <html>
  36.  
  37. <head>
  38.  
  39. <title><%=$title%></title>
  40.  
  41. </head>
  42.  
  43. <body bgcolor=white link=#3355cc alink=#ff5599 vlink=#993399>
  44.  
  45.  
  46.  
  47. <table border=0 cellpadding=5 cellspacing=0 height=95% width=100%>
  48.  
  49. <tr><td colspan=2 bgcolor=#ff4488><img src=apache_asp.gif alt="<%=$module%>"></td></tr>
  50.  
  51. <tr>
  52.  
  53.  
  54.  
  55. <td valign=top bgcolor=#ffcccc>
  56.  
  57.     <table border=0 cellpadding=0 cellspacing=0>
  58.  
  59.     <tr><td align=center><hr size=1></td></tr>
  60.  
  61.  
  62.  
  63.     <% 
  64.  
  65.     for $top (@{$ASP->{stack}}, '', { name=> EXAMPLES, file => 'eg/index'}) { 
  66.  
  67.         unless($top) {
  68.  
  69.             %><tr><td><hr size=1></td></tr><%
  70.  
  71.             next;
  72.  
  73.         }
  74.  
  75.  
  76.  
  77.         my $file;
  78.  
  79.         if($top->{file}) {    
  80.  
  81.             $file = $top->{file};
  82.  
  83.         } else {
  84.  
  85.             ($file) = grep($top->{name} eq $FILES{$_}, keys %FILES); 
  86.  
  87.         }
  88.  
  89.         $file = "$file.html";
  90.  
  91.         next unless (-e $file);
  92.  
  93.  
  94.  
  95.         %>
  96.  
  97.         <tr>
  98.  
  99.         <td><a href=<%=$file%>><font face=verdana size=-1 color=#3355cc><%=$top->{name}%></font></a></td>
  100.  
  101.         </tr>
  102.  
  103.         <%
  104.  
  105.     }
  106.  
  107.     %>
  108.  
  109.     <tr>
  110.  
  111.         <td align=center>
  112.  
  113.         <hr size=1>
  114.  
  115.         <a href=http://perl.apache.org><img 
  116.  
  117.             src=modperl.gif border=0
  118.  
  119.             alt="Powered by ModPerl & Apache"
  120.  
  121.             ></a>
  122.  
  123.         <hr size=1>
  124.  
  125.         </td>
  126.  
  127.     </tr>
  128.  
  129.     </table>
  130.  
  131. </td>
  132.  
  133.  
  134.  
  135. <td valign=top>
  136.  
  137. <%
  138.  
  139. my @stack;
  140.  
  141. my @order;
  142.  
  143. push(@stack, $data);
  144.  
  145. while(@stack) {
  146.  
  147.     my $data = shift @stack;
  148.  
  149.     unshift(@stack, @{$data->{stack}});
  150.  
  151.     push(@order, $data);    
  152.  
  153. }
  154.  
  155.  
  156.  
  157. print pod2html($data->{body}, $data->{name}, $data->{level});
  158.  
  159.  
  160.  
  161. my @links;
  162.  
  163. $data = shift @order;
  164.  
  165. if(@order > 2) {
  166.  
  167.     my $last_level = $order[0]->{level};
  168.  
  169.     for $data (@order) {
  170.  
  171.         if($last_level != $data->{level}) {
  172.  
  173.             push(@links, '');
  174.  
  175.             $last_level = $data->{level};
  176.  
  177.         }        
  178.  
  179.         push(@links, "<a href=#".$Server->URLEncode($data->{name})."><font color=#3355cc>$data->{name}</font></a>");
  180.  
  181.     }
  182.  
  183.     %>
  184.  
  185.  
  186.  
  187.     <hr size=1>
  188.  
  189.     <table width=100% border=0 cellpadding=5><tr><td valign=top><font face=verdana size=-1>
  190.  
  191.     <% 
  192.  
  193.     for($i=0; $i<@links; $i++) { 
  194.  
  195.         if($i == (int((@links+1) / 2))) {
  196.  
  197.             print "</font></td><td valign=top><font face=verdana size=-1>";
  198.  
  199.         }
  200.  
  201.         print $links[$i] . "<br>";    
  202.  
  203.     } 
  204.  
  205.     %>    
  206.  
  207.     </font>
  208.  
  209.     </td>
  210.  
  211.     </tr>
  212.  
  213.     </table>
  214.  
  215.     <hr size=1>
  216.  
  217.     <p>
  218.  
  219. <%
  220.  
  221. }
  222.  
  223.  
  224.  
  225. for $data (@order) { 
  226.  
  227.     %>
  228.  
  229.     <p>
  230.  
  231.     <a name=<%=$Server->URLEncode($data->{name})%>></a>
  232.  
  233.     <%=pod2html($data->{body}, $data->{name}, $data->{level})%>
  234.  
  235.     <%
  236.  
  237. }
  238.  
  239. %>
  240.  
  241.  
  242.  
  243. </td>
  244.  
  245. </tr>
  246.  
  247. <tr bgcolor=#555555>
  248.  
  249.     <td colspan=2 align=center width=80%>
  250.  
  251.     <font face=verdana color=white size=-1><%=$copy->{body}%></font>
  252.  
  253.     </td>
  254.  
  255. </tr>
  256.  
  257. </table>
  258.  
  259. </body>
  260.  
  261. </html>
  262.  
  263.