Phr0zen_Penguin

Formatted CGI Environment Variables

Oct 15th, 2014
375
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 2.64 KB | None | 0 0
  1. #!e:\dev\Perl\bin\perl.exe -w
  2. #!/usr/bin/perl -w
  3. ##
  4. ## [env.cgi]
  5. ## Formatted environment variables.
  6. ##
  7. ##      (c) Damion 'Phr0z3n.dev' Tapper, 2014.
  8. ##      Email: [email protected]
  9. ##      Website: http://L337Stuff.Blogspot.com
  10. ##
  11.  
  12. use strict;
  13. use warnings;
  14. use CGI;
  15. use v5.14;
  16. use utf8;
  17.  
  18. my $cgiObject = CGI->new;
  19.  
  20. print $cgiObject->header(-type => 'text/html');
  21.  
  22. my $docHead =
  23. <<HEAD;
  24. <!DOCTYPE html>
  25.  
  26. <html>
  27.     <head>
  28.         <title>Environment Variables</title>
  29.  
  30.         <style type="text/CSS">
  31.             body{
  32.                 background-color: rgb(51, 51, 51);
  33.             }
  34.  
  35.             table{
  36.                 width: 600px;
  37.                 margin 0;
  38.                 margin-left: auto;
  39.                 margin-right: auto;
  40.            
  41.                 border-collapse: separate;
  42.                 border-spacing: 0;
  43.                 border: 1px solid rgb(0, 0, 0);
  44.                 background-color: rgb(238, 238, 238);
  45.             }
  46.             td, tbody th{
  47.                 padding: 10px;
  48.             }
  49.             thead th{
  50.                 font-family: Verdana;
  51.                 font-size: 18px;
  52.                 font-weight: bold;
  53.                 color: rgb(255, 255, 196);
  54.                 border: 5px double rgb(0, 0, 128);
  55.  
  56.                 background-color: rgb(32, 196, 196);
  57.                 text-align: center;
  58.                 padding: 4px;
  59.             }
  60.             thead th:hover{
  61.                 background-color: rgb(0, 0, 60);
  62.                 color: rgb(245, 245, 224);
  63.                 border: 5px double rgb(32, 196, 196);
  64.             }
  65.             .odd{
  66.                 background-color: rgb(170, 255, 255);
  67.             }
  68.             .even{
  69.                 background-color: rgb(224, 255, 255);
  70.             }
  71.             tbody tr:hover{
  72.                 background-color: rgb(245, 245, 220);
  73.             }
  74.             tbody td, th{
  75.                 font-size: 12px;
  76.                 text-align: left;
  77.             }
  78.  
  79.             .var{
  80.                 font-family: Arial, Verdana, sans-serif;
  81.                 color: rgb(0, 0, 32);
  82.                 font-weight: 900;
  83.                 vertical-align: middle;
  84.             }
  85.             .val{
  86.                 font-family: Arial, Verdana, sans-serif;
  87.                 font-size: 12px;
  88.                 color: rgb(0, 64, 0);
  89.                 vertical-align: top;
  90.             }
  91.         </style>
  92.  
  93.     </head>
  94.     <body>
  95.         <table>
  96.             <thead>
  97.                 <tr>
  98.                     <th colspan="2">Environment Variables</th>
  99.                 </tr>
  100.             </thead>
  101. HEAD
  102.  
  103. my $docFoot =
  104. <<FOOT;
  105.         </table>
  106.     </body>
  107. </html>
  108. FOOT
  109.  
  110. print $docHead;
  111.  
  112. my $i = 0;
  113.  
  114.     foreach (sort keys %ENV)
  115.     {
  116.         my $key = $_;
  117.         my $val = $ENV{$_};
  118.         #$val =~ s/,/,\n/g if((length $val) > 20);
  119.         #$val =~ s/,/,<br \/>/g if((length $val) > 20);
  120.  
  121.         $val =~ s/;/<br \/>/g if($key eq 'PATH');
  122.         my $row = '';
  123.  
  124.             if(($i % 2) != 0)
  125.             {
  126.                 $row = <<ROW;
  127.                         <tbody>
  128.                             <tr class="odd">
  129.                                 <th class="var">$key</th>
  130.                                 <td class="val">$val</td>
  131.                             </tr>
  132.                         </tbody>
  133. ROW
  134.             }
  135.             else
  136.             {
  137.                 $row = <<ROW;
  138.                         <tbody>
  139.                             <tr class="even">
  140.                                 <th class="var">$key</th>
  141.                                 <td class="val">$val</td>
  142.                             </tr>
  143.                         </tbody>
  144. ROW
  145.             }
  146.  
  147.         print $row;
  148.  
  149.         $i++;
  150.     }
  151.  
  152. print $docFoot;
  153.  
  154. exit;
Advertisement
Add Comment
Please, Sign In to add comment