r590@athlon: dpavlin | 2006-04-26 13:10:07 +0200
[BackupPC.git] / lib / BackupPC / CGI / SearchArchives.pm
index 2ecb773..3e1ce0a 100644 (file)
@@ -9,157 +9,88 @@ use strict;
 use BackupPC::CGI::Lib qw(:all);
 use BackupPC::SearchLib;
 use Data::Dumper;
+use HTML::FillInForm;
 use vars qw($Cgi %In $MyURL $User %Conf $TopDir $BinDir $bpc);
 
 sub action() {
-    my $cont = "";
-    my $host;
-    my @hosts;
-    my $hosts_html = "";
+       my $hosts_html = "";
 
     
-    BackupPC::CGI::Lib::NewRequest();
-
-    @hosts = BackupPC::SearchLib::getUnits();
-    if ( !defined($In{search_results}) ) {
-        foreach $host (@hosts) {
-            $hosts_html .=
-                "<option value="
-              . $host->{'ID'} . "> "
-              . $host->{'name'}
-              . " </option>\n";
+       BackupPC::CGI::Lib::NewRequest();
+       my @hosts = BackupPC::SearchLib::getUnits();
+
+       foreach my $host (@hosts) {
+               $hosts_html .= "<option value=" . $host->{'id'} . "> " . $host->{'share'} . " </option>\n";
         }
-       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>
+
+       sub date_from_to_html {
+               my $name = shift || return;
+               return qq{
+                       <input type="text" name="${name}_year_from" size="4">
+                       <input type="text" name="${name}_month_from" size="2">
+                       <input type="text" name="${name}_day_from" size="2">
+                       -
+                       <input type="text" name="${name}_year_to" size="4">
+                       <input type="text" name="${name}_month_to" size="2">
+                       <input type="text" name="${name}_day_to" size="2">
+               };
+       }
+
+        my $form .= qq{
+<form name="searchForm" method="GET" action="$MyURL">
+<p>
+       Filename:
+       <input type="text" name="search_filename" size="50">
+       &nbsp;
+       on share
+       &nbsp;
+       <select name="search_share">$hosts_html</select>
+       &nbsp;show&nbsp;
+       <select name="burned">
+       <option value="">all</a>
+       <option value="burned">burned</a>
+       <option value="pending">pending</a>
+       </select>
+       files
+       &nbsp;&nbsp;&nbsp;
        <input type="submit" value="Search">
-       <input type="hidden" value="search" name="action">
-       <input type="hidden" value="results" name="search_results">
-      </form>      
-ENDSTR
-    }
-    else {
-       $cont = eval(q{ ${h1("Search")}});
-       $cont .= eval(q{ ${h2("Search results")}});
-       my $result;
-       my $rows = "";
-
-       my $grid = BackupPC::SearchLib::displayGrid( BackupPC::SearchLib::getWhere(\%In), 0);
-       $cont .= $grid;                 
-    }
-    Header( eval("qq{$Lang->{Search_archive}}"), "", 1, "", $cont );
-    Trailer();
+</p>
+
+<p style="color:gray;">
+       file(s) between:
+       } . date_from_to_html('search') . qq{
+       &nbsp;&nbsp;
+       backups between:
+       } . date_from_to_html('search_backup') . qq{
+       (yyyy-mm-dd)
+</p>
+
+<p style="color: gray;">
+       <input type="checkbox" name="use_hest"> use faster full-text search engine
+</p>
+
+<input type="hidden" value="search" name="action">
+<input type="hidden" value="results" name="search_results">
+</form>
+       };
+
+       my $html = eval(q{ ${h1("Search")}});
+
+       if ( !defined($In{search_results}) ) {
+               $html .= eval(q{ ${h2("Search criteria")}});
+
+               $html .= $form;
+       } else {
+               $html .= eval(q{ ${h2("Search results")}});
+
+               my $fif = new HTML::FillInForm;
+               $html .= $fif->fill(scalarref => \$form, fdat => \%In);
+
+               $html .= BackupPC::SearchLib::displayGrid( \%In );
+       }
+
+       Header( eval("qq{$Lang->{Search_archive}}"), "", 1, "", $html );
+       Trailer();
 }
 
 1;