1 ####################################################################
2 # SearchArchives.pm - module for searching through archived files #
3 # via a sqlite database #
4 ####################################################################
5 package BackupPC::CGI::SearchArchives;
9 use BackupPC::CGI::Lib qw(:all);
10 use BackupPC::SearchLib;
13 use vars qw($Cgi %In $MyURL $User %Conf $TopDir $BinDir $bpc);
19 BackupPC::CGI::Lib::NewRequest();
20 my @hosts = BackupPC::SearchLib::getUnits();
22 foreach my $host (@hosts) {
23 $hosts_html .= "<option value=" . $host->{'id'} . "> " . $host->{'share'} . " </option>\n";
26 sub date_from_to_html {
27 my $name = shift || return;
29 <input type="text" name="${name}_year_from" size="4">
30 <input type="text" name="${name}_month_from" size="2">
31 <input type="text" name="${name}_day_from" size="2">
33 <input type="text" name="${name}_year_to" size="4">
34 <input type="text" name="${name}_month_to" size="2">
35 <input type="text" name="${name}_day_to" size="2">
40 <form name="searchForm" method="GET" action="$MyURL">
43 <input type="text" name="search_filename" size="50">
47 <select name="search_share">$hosts_html</select>
49 <input type="submit" value="Search">
52 <p style="color:gray;">
54 } . date_from_to_html('search') . qq{
57 } . date_from_to_html('search_backup') . qq{
61 <input type="hidden" value="search" name="action">
62 <input type="hidden" value="results" name="search_results">
66 my $html = eval(q{ ${h1("Search")}});
68 if ( !defined($In{search_results}) ) {
69 $html .= eval(q{ ${h2("Search criteria")}});
72 $html .= eval(q{ ${h2("Search results")}});
73 my $fif = new HTML::FillInForm;
74 $html .= $fif->fill(scalarref => \$form, fdat => \%In);
76 my ($where, $from_f, $to_f, $from_b, $to_b) = BackupPC::SearchLib::getWhere(\%In);
78 my $q = $In{'search_filename'};
82 #$html .= "Filename filter: $q</br>" if ($q);
83 #$html .= "Files date limit: $from_f - $to_f</br>" if ($from_f || $to_f);
84 #$html .= "Backup date limit: $from_b - $to_b</br>" if ($from_b || $to_b);
87 $html .= BackupPC::SearchLib::displayGrid( $where, 1, $In{'offset'}, $q);
90 Header( eval("qq{$Lang->{Search_archive}}"), "", 1, "", $html );