/[BackupPC]/trunk/lib/BackupPC/SearchLib.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/BackupPC/SearchLib.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 122 by dpavlin, Fri Sep 16 14:11:00 2005 UTC revision 127 by dpavlin, Thu Sep 22 09:27:17 2005 UTC
# Line 15  my $pager_pages = 10; Line 15  my $pager_pages = 10;
15  my $dsn = $Conf{SearchDSN};  my $dsn = $Conf{SearchDSN};
16  my $db_user = $Conf{SearchUser} || '';  my $db_user = $Conf{SearchUser} || '';
17    
18  my $index_path = $Conf{HyperEstraierIndex};  my $hest_index_path = $Conf{HyperEstraierIndex};
 if ($index_path) {  
         $index_path = $TopDir . '/' . $index_path;  
         $index_path =~ s#//#/#g;  
 }  
19    
20  my $dbh;  my $dbh;
21    
# Line 198  sub getFilesHyperEstraier($) { Line 194  sub getFilesHyperEstraier($) {
194          my $offset = $param->{'offset'} || 0;          my $offset = $param->{'offset'} || 0;
195          $offset *= $on_page;          $offset *= $on_page;
196    
197          die "no index_path?" unless ($index_path);          die "no index_path?" unless ($hest_index_path);
198    
199          use HyperEstraier;          use HyperEstraier;
200    
201          my ($index_path, $index_node_url) = getHyperEstraier_url($index_path);          my ($index_path, $index_node_url) = getHyperEstraier_url($hest_index_path);
202    
203          # open the database          # open the database
204          my $db;          my $db;
# Line 344  sub getBackupsNotBurned() { Line 340  sub getBackupsNotBurned() {
340          return @ret;                return @ret;      
341  }  }
342    
343  sub displayBackupsGrid()  sub displayBackupsGrid() {
344    {  
345        my $retHTML = "";          my $retHTML .= q{
346                          <form id="forma" method="POST" action=};
347          $retHTML .= <<EOF3;                  $retHTML .= "\"".$MyURL."\"";
348  <script language="javascript" type="text/javascript">                  $retHTML .= q{?action=burn>
349            };
350    
351            $retHTML .= <<'EOF3';
352    <style>
353  <!--  <!--
354    
355      function checkAll(location)  div#fixedBox
356      {
357      position: absolute;
358      bottom: 1em;
359      left: 0.5em;
360      padding: 0.5em;
361      width: 10em;
362      background: #e0f0e0;
363      border: 1px solid #00ff00;
364      }
365    @media screen
366      {
367      div#fixedBox
368      {      {
369        for (var i=0;i<document.forma.elements.length;i++)      position: fixed;
       {  
         var e = document.forma.elements[i];  
         if ((e.checked || !e.checked) && e.name != \'all\') {  
             if (eval("document.forma."+location+".checked")) {  
                 e.checked = true;  
             } else {  
                 e.checked = false;  
             }  
         }  
       }  
370      }      }
371          /* Don't do this at home */
372      function sumiraj()    * html
373      {      {
374          var suma = 0;      overflow-y: hidden;
375          for (var i = 0; i < document.forma.elements.length; i++)          }
376                  {    * html body
377                          var e = document.forma.elements[i];      {
378                          if ((e.checked || !e.checked) && e.name != \'all\')      overflow-y: auto;
379                          {      height: 100%;
380                                  if (e.checked)      padding: 0 1em 0 12em;
381                                  {      font-size: 100%;
                                         var ret = e.name.match("fcb(.*)");  
                                         suma += parseInt(eval("document.forma.fss"+ret[1]+".value"));  
                                           
                                 }  
                         }  
         }  
         document.forma.totalsize.value = suma;  
         return suma;  
382      }      }
383      * html div#fixedBox
384        {
385        position: absolute;  
386        }
387      /* All done. */
388      }
389    
390    -->
391    </style>
392    <script language="javascript" type="text/javascript">
393    <!--
394    
395    var debug_div = null;
396    
397    function debug(msg) {
398    //      return; // Disable debugging
399    
400            if (! debug_div) debug_div = document.getElementById('debug');
401    
402            // this will create debug div if it doesn't exist.
403            if (! debug_div) {
404                    debug_div = document.createElement('div');
405                    if (document.body) document.body.appendChild(debug_div);
406                    else debug_div = null;
407            }
408            if (debug_div) {
409                    debug_div.appendChild(document.createTextNode(msg));
410                    debug_div.appendChild(document.createElement("br"));
411            }
412    }
413    
414    
415    var element_id_cache = Array();
416    
417    function element_id(name,element) {
418            if (! element_id_cache[name]) {
419                    element_id_cache[name] = self.document.getElementById(name);
420            }
421            return element_id_cache[name];
422    }
423    
424    function checkAll(location) {
425            var len = element_id('forma').elements.length;
426            var check_all = element_id('allFiles');
427    
428            for (var i = 0; i < len; i++) {
429    
430                    var e = element_id('forma').elements[i];
431                    if ((e.checked || !e.checked) && e.name != 'all') {
432                            if (check_all.checked) {
433                                    e.checked = true;
434                            } else {
435                                    e.checked = false;
436                            }
437                    }
438            }
439    
440            sumiraj();
441    }
442        
443    function sumiraj(e) {
444            var suma = parseInt(element_id('forma').totalsize.value) || 0;
445            var len = element_id('forma').elements.length;
446            if (e) {
447                    var size = parseInt( element_id("fss" + e.name.substr(3)).value );
448                    if (e.checked) {
449                            suma += size;
450                    } else {
451                            suma -= size;
452                    }
453            } else {
454                    suma = 0;
455                    for (var i = 0; i < len; i++) {
456                            var e = element_id('forma').elements[i];
457                            if (e.name != 'all' && e.checked && e.name.substr(0,3) == 'fcb') {
458                                    var el = element_id("fss" + e.name.substr(3));
459                                    if (el && el.value) suma += parseInt(el.value) || 0;
460                            }
461                    }
462            }
463            element_id('forma').totalsize.value = suma;
464            debug('total size: '+suma);
465            return suma;
466    }
467    
468    if (!self.body) self.body = new Object();
469    self.onload = self.document.onload = self.body.onload = function() {
470            sumiraj();
471    }
472    
473  //-->  //-->
474  </script>        </script>
475    <div id="fixedBox">
476    
477    Size:
478    <input type="text" name="totalsize" size="7" readonly>
479    <br/>
480    Note:
481    <br/>
482    <textarea name="note" cols="10" rows="5">
483    </textarea>
484    <br/>
485    <input type="submit" value="Burn selected" name="submitBurner">
486    
487    </div>
488    <div id="debug" style="float: right; width: 10em; border: 1px #ff0000 solid; background-color: #ffe0e0; -moz-opacity: 0.7;">
489    no debug output yet
490    </div>
491  EOF3  EOF3
492          $retHTML .= q{          $retHTML .= q{
                 <form name="forma" method="GET" action=};  
                 $retHTML .= "\"".$MyURL."\"";  
                 $retHTML .= q{?action=burn>  
493                          <input type="hidden" value="burn" name="action">                          <input type="hidden" value="burn" name="action">
494                          <input type="hidden" value="results" name="search_results">                          <input type="hidden" value="results" name="search_results">
495                          <table style="fview" border="0" cellspacing="0" cellpadding="2">                          <table style="fview" border="0" cellspacing="0" cellpadding="2">
496                          <tr class="tableheader">                          <tr class="tableheader">
497                          <td class="tableheader">                          <td class="tableheader">
498                                  <input type="checkbox" name="allFiles" onClick="checkAll('allFiles');">                                  <input type="checkbox" name="allFiles" id="allFiles" onClick="checkAll('allFiles');">
499                          </td>                          </td>
500                          <td align="center">Share</td>                          <td align="center">Share</td>
501                          <td align="center">Backup no</td>                          <td align="center">Backup no</td>
# Line 409  EOF3 Line 506  EOF3
506                          <td align="center">gzip size</td>                          <td align="center">gzip size</td>
507                          </tr>                          </tr>
508    
                         <tr><td colspan=7 style="tableheader">  
                         <input type="submit" value="Burn selected backups on medium" name="submitBurner">  
                         </td></tr>  
509          };          };
510    
511          my @color = (' bgcolor="#e0e0e0"', '');          my @color = (' bgcolor="#e0e0e0"', '');
# Line 426  EOF3 Line 520  EOF3
520                          $host = $backup->{'host'};                          $host = $backup->{'host'};
521                  }                  }
522                  my $ftype = "";                  my $ftype = "";
523                
524                  $retHTML .= "<tr" . $color[$i %2 ] . ">";                  $retHTML .=
525                  $retHTML .= '<td class="fview"><input type="checkbox" name="fcb' .                          '<tr' . $color[$i %2 ] . '>
526                                                                                          $backup->{'hostid'}.'_'.$backup->{'backupnum'} .                          <td class="fview">';
527                                                                                          '" value="' . $backup->{'hostid'}.'_'.$backup->{'backupnum'} .                  # FIXME
528                                                                                          '" onClick="sumiraj();"></td>';                  #$backup->{'fs_size'} = int($backup->{'size'} * 1024);
529                                if (($backup->{'fs_size'} || 0) > 0) {
530                            $retHTML .= '
531                            <input type="checkbox" name="fcb' .
532                            $backup->{'hostid'}.'_'.$backup->{'backupnum'} .
533                            '" value="' . $backup->{'hostid'}.'_'.$backup->{'backupnum'} .
534                            '" onClick="sumiraj(this);">';
535                    }
536                  $retHTML .=                  $retHTML .=
537                            '</td>' .
538                          '<td align="right">' . $backup->{'host'} . ':' . $backup->{'share'} . '</td>' .                          '<td align="right">' . $backup->{'host'} . ':' . $backup->{'share'} . '</td>' .
539                          '<td align="center">' . $backup->{'backupnum'} . '</td>' .                          '<td align="center">' . $backup->{'backupnum'} . '</td>' .
540                          '<td align="center">' . $backup->{'type'} . '</td>' .                          '<td align="center">' . $backup->{'type'} . '</td>' .
# Line 441  EOF3 Line 542  EOF3
542                          '<td align="center">' . $backup->{'age'} . '</td>' .                          '<td align="center">' . $backup->{'age'} . '</td>' .
543                          '<td align="right">' . $backup->{'size'} . '</td>' .                          '<td align="right">' . $backup->{'size'} . '</td>' .
544                          '<td align="right">' . $backup->{'fs_size'} .                          '<td align="right">' . $backup->{'fs_size'} .
545                          '<input type="hidden" name="fss'.$backup->{'hostid'}.'_'.$backup->{'backupnum'} . '"'.                          '<input type="hidden" iD="fss'.$backup->{'hostid'}.'_'.$backup->{'backupnum'} . '" value="'. $backup->{'fs_size'} .'"></td>' .
                         'value="'. $backup->{'fs_size'} .'"'.'</td>' .  
                         "</tr>\n";  
   
546    
547                            "</tr>\n";
548          }          }
549    
550          $retHTML .= "</table>";          $retHTML .= "</table>";
         $retHTML .= "total gzip size:<input type=\"text\" name=\"totalsize\"><br>";  
         $retHTML .= "Note:<input type=\"text\" name=\"note\">";  
551          $retHTML .= "</form>";          $retHTML .= "</form>";
552                
553          return $retHTML;          return $retHTML;

Legend:
Removed from v.122  
changed lines
  Added in v.127

  ViewVC Help
Powered by ViewVC 1.1.26