improved design
authordpavlin <dpavlin@8392b6e1-25fa-0310-8288-cc32f8e212ea>
Mon, 11 Jul 2005 13:22:38 +0000 (13:22 +0000)
committerdpavlin <dpavlin@8392b6e1-25fa-0310-8288-cc32f8e212ea>
Mon, 11 Jul 2005 13:22:38 +0000 (13:22 +0000)
git-svn-id: svn+ssh://llin/home/dpavlin/private/svn/BackupPC/trunk@17 8392b6e1-25fa-0310-8288-cc32f8e212ea

lib/BackupPC/CGI/SearchArchives.pm
lib/BackupPC/SearchLib.pm

index 5506572..605c1d1 100644 (file)
@@ -32,122 +32,65 @@ sub action() {
        my $title = eval(q{ ${h1("Search")}});
        my $subtitle = eval(q{ ${h2("Search criteria")}});
 
-        $cont .= <<ENDSTR;
-      
-      <form name="searchForm" method="GET" action="$MyURL">
-       $title
-       $subtitle
-       <table border="0">
-        <tr>
-         <td>
-           Share:
-         </td>
-         <td>
-           <select name="search_host">
-             $hosts_html
-            </select>
-         </td>
-        </tr>
-        <tr>
-         <td>
-           All file(s) between:
-         </td>
-         <td>
-           <table>
-             <tr>
-               <td>
-                 Day
-               </td>
-               <td>
-                 <input type="text" name="search_day_from">
-               </td>
-               <td>
-                 Month
-               </td>
-               <td>
-                 <input type="text" name="search_month_from">
-               </td>
-               <td>
-                 Year
-               </td>
-               <td>
-                 <input type="text" name="search_year_from">
-               </td>
-             </tr>
-             <tr>
-               <td>
-                 Day
-               </td>
-               <td>
-                 <input type="text" name="search_day_to">
-               </td>
-               <td>
-                 Month
-               </td>
-               <td>
-                 <input type="text" name="search_month_to">
-               </td>
-               <td>
-                 Year
-               </td>
-               <td>
-                 <input type="text" name="search_year_to">
-               </td>
-             </tr>     
-         
-           </table>      
-         </td>
-        </tr>
-        <tr>
-          <td>
-             All backups between:      
-          </td>
-          <td>
-            <table>
-             <tr>
-              <td>Day</td>
-              <td>Month</td>
-              <td>Year</td>
-             </tr>
-             <tr>
-              <td>
-               <input type="text" name="search_backup_day_from">
-              </td>
-              <td>
-               <input type="text" name="search_backup_month_from">
-              </td>
-              <td>
-               <input type="text" name="search_backup_year_from">
-              </td>     
-             </tr>
-             <tr>
-              <td>
-               <input type="text" name="search_backup_day_to">
-              </td>
-              <td>
-               <input type="text" name="search_backup_month_to">
-              </td>
-              <td>
-               <input type="text" name="search_backup_year_to">
-              </td>     
-              </tr>
-            </table>
-          </td>
-        </tr>
-        <tr>
-         <td>
-           Filename:
-         </td>
-         <td>
-           <input type="text" name="search_filename">
-         </td>
-        </tr>
-       </table>
-       <input type="submit" value="Search">
-       <input type="hidden" value="search" name="action">
-       <input type="hidden" value="results" name="search_results">
-      </form>      
-ENDSTR
+       sub date_from_to_html {
+               my $name = shift || return;
+               return qq{
+<table>
+<tr>
+       <td colspan="3" align="center">from</a>
+       <td>&nbsp;</td>
+       <td colspan="3" align="center">to</a>
+</tr>
+<tr>
+       <td align="center">dd</td>
+       <td align="center">mm</td>
+       <td align="center">yyyy</td>
+       <td align="center">&nbsp;</td>
+       <td align="center">dd</td>
+       <td align="center">mm</td>
+       <td align="center">yyyy</td>
+</tr>
+<tr>
+       <td><input type="text" name="${name}_day_from" size="2"></td>
+       <td><input type="text" name="${name}_month_from" size="2"></td>
+       <td><input type="text" name="${name}_year_from" size="4"></td>
+       <td>&nbsp;-&nbsp;</td>
+       <td><input type="text" name="${name}_day_to" size="2"></td>
+       <td><input type="text" name="${name}_month_to" size="2"></td>
+       <td><input type="text" name="${name}_year_to" size="4"></td>
+</tr>  
+</table>
+               };
+       }
+
+        $cont .= qq{
+<form name="searchForm" method="GET" action="$MyURL">
+$title
+$subtitle
+<table border="0" width="100%">
+<tr>
+       <td>Share:</td>
+       <td><select name="search_host">$hosts_html</select></td>
+</tr>
+<tr class="fviewborder">
+       <td>All file(s) between:</td>
+       <td>} . date_from_to_html('search') . qq{</td>
+</tr>
+<tr>
+       <td>All backups between:</td>
+       <td>} . date_from_to_html('search_backup') . qq{</td>
+</tr>
+<tr class="fviewborder">
+       <td>Filename:</td>
+       <td><input type="text" name="search_filename" size="25"></td>
+</tr>
+</table>
+
+<input type="submit" value="Search">
+<input type="hidden" value="search" name="action">
+<input type="hidden" value="results" name="search_results">
+</form>
+       };
     }
     else {
        $cont = eval(q{ ${h1("Search")}});
@@ -155,8 +98,8 @@ ENDSTR
        my $result;
        my $rows = "";
 
-       my $grid = BackupPC::SearchLib::displayGrid( BackupPC::SearchLib::getWhere(\%In), 1, $In{'offset'});
-       $cont .= $grid;                 
+       my $grid = BackupPC::SearchLib::displayGrid( BackupPC::SearchLib::getWhere(\%In), 1, $In{'offset'}, $In{'search_filename'});
+       $cont .= $grid;
     }
     Header( eval("qq{$Lang->{Search_archive}}"), "", 1, "", $cont );
     Trailer();
index a9cb3cc..5ef0f8a 100644 (file)
@@ -320,66 +320,72 @@ EOF3
   
   }      
 
-sub displayGrid($$$)
-  {
-      my ($where, $addForm, $offset) = @_;
-      my $retHTML = "";
-      
-      if ($addForm)
-       {
-             $retHTML .= q{<form name="forma" method="POST" action="}."$MyURL"."?action=search\"";
-              $retHTML.= q{<input type="hidden" value="search" name="action">};
-              $retHTML .= q{<input type="hidden" value="results" name="search_results">};
+sub displayGrid($$$$) {
+       my ($where, $addForm, $offset, $hilite) = @_;
+       my $retHTML = "";
+       if ($addForm) {
+               $retHTML .= qq{<form name="forma" method="POST" action="}.$MyURL.qq{?action=search">};
+               $retHTML.= qq{<input type="hidden" value="search" name="action">};
+               $retHTML .= qq{<input type="hidden" value="results" name="search_results">};
        }
-      $retHTML .= "<table style=\"fview\">";
-      $retHTML .= "<tr> ";
-      $retHTML .=  "<td class=\"tableheader\">Host</td> <td class=\"tableheader\">Name</td> <td class=\"tableheader\">Type</td> <td class=\"tableheader\">backup no.</td> <td class=\"tableheader\">size</td> <td class=\"tableheader\">date</td>  <td class=\"tableheader\">Media</td></tr>";
-      my @files = getFiles($where, $offset);
-      my $file;
+       $retHTML .= qq{
+       <table style="fview" width="100%">
+               <tr> 
+               <td class="tableheader">Host</td>
+               <td class="tableheader">Type</td>
+               <td class="tableheader">Name</td>
+               <td class="tableheader">backup no.</td>
+               <td class="tableheader">size</td>
+               <td class="tableheader">date</td>
+               <td class="tableheader">Media</td>
+               </tr>
+       };
+       my @files = getFiles($where, $offset);
+       my $file;
 
-      foreach $file(@files)
-       {
-           my $ftype = "";
-           
-           if ($file->{'type'} == BPC_FTYPE_DIR)
-             {
-                 $ftype = "dir";
-             }
-           else
-             {
-                 $ftype = "file";
-             }
-           $retHTML .= "<tr>";
-           $retHTML .= "<td class=\"fviewborder\">" . $file->{'hname'} ."</td>";
-           $retHTML .= "<td class=\"fviewborder\">" . $file->{'fname'} . "</td>";
-           $retHTML .= "<td class=\"fviewborder\">" . $ftype . "</td>";
-           $retHTML .= "<td class=\"fviewborder\">" . $file->{'backupno'} . "</td>";
-           $retHTML .= "<td class=\"fviewborder\">" . $file->{'size'} . "</td>";
-           $retHTML .= "<td class=\"fviewborder\">" . $file->{'date'} . "</td>";
-           $retHTML .= "<td class=\"fviewborder\">" . $file->{'dvd'} . "</td>";
-           $retHTML .= "</tr>";
+       sub hilite_html($$) {
+               my ($html, $search) = @_;
+               $html =~ s#($search)#<b>$1</b>#gis;
+               return $html;
        }
-      $retHTML .= "</table>";
 
-       
+       foreach $file (@files) {
+               my $ftype = "file";
+               $ftype = "dir" if ($file->{'type'} == BPC_FTYPE_DIR);
 
-      $retHTML .= "<INPUT TYPE=\"hidden\" VALUE=\"\" NAME=\"offset\">";
-      for (my $ii = 1; $ii <= $#files; $ii++)
-      {
-         $retHTML .= "<a href = \"#\" onclick=\"document.forma.offset.value=$ii;document.forma.submit();\">$ii</a>";
-         if ($ii < $#files)
-           {
-               $retHTML .= " | ";
-           }
-      }
+               $retHTML .= "<tr>";
 
+               foreach my $v ((
+                       $file->{'hname'},
+                       $ftype,
+                       hilite_html( $file->{'fpath'}, $hilite ),
+                       $file->{'backupno'},
+                       $file->{'size'},
+                       $file->{'date'},
+                       $file->{'dvd'}
+               )) {
+                       $retHTML .= qq{<td class="fviewborder">$v</td>};
+               }
 
-       if ($addForm)
-       {
-          $retHTML .= "</form>";
-       }
+               $retHTML .= "</tr>";
+       }
+       $retHTML .= "</table>";
+
+       # skip pager
+       return $retHTML;
+
+       $retHTML .= "<INPUT TYPE=\"hidden\" VALUE=\"\" NAME=\"offset\">";
+       for (my $ii = 1; $ii <= $#files; $ii++) {
+               $retHTML .= "<a href = \"#\" onclick=\"document.forma.offset.value=$ii;document.forma.submit();\">$ii</a>";
+               if ($ii < $#files) {
+                       $retHTML .= " | ";
+               }
+       }
+
+       $retHTML .= "</form>" if ($addForm);
       
-      return $retHTML;
-  }
+       return $retHTML;
+}
 
 1;