]> git.sur5r.net Git - bacula/bacula/commitdiff
ebl Tweak progress bar and add Backuped files count to job status
authorEric Bollengier <eric@eb.homelinux.org>
Thu, 3 Apr 2008 08:54:12 +0000 (08:54 +0000)
committerEric Bollengier <eric@eb.homelinux.org>
Thu, 3 Apr 2008 08:54:12 +0000 (08:54 +0000)
ebl  Add group stats

git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@6731 91ce42f0-d328-0410-95d8-f526ca767f89

13 files changed:
gui/bweb/cgi/bweb.pl
gui/bweb/lang/en/tpl/client_job_status.tpl
gui/bweb/lang/en/tpl/display_form_job.tpl
gui/bweb/lang/en/tpl/display_stats.tpl
gui/bweb/lang/es/tpl/client_job_status.tpl
gui/bweb/lang/es/tpl/display_form_job.tpl
gui/bweb/lang/fr/tpl/client_job_status.tpl
gui/bweb/lang/fr/tpl/display_form_job.tpl
gui/bweb/lib/Bweb.pm
gui/bweb/technotes-2.3
gui/bweb/tpl/client_job_status.tpl
gui/bweb/tpl/display_form_job.tpl
gui/bweb/tpl/display_stats.tpl

index 1f0eab14e48467fc76da0f1d2b25e217d53437ac..a6a14f6c624b408e173f2148a206748fadd490f8 100755 (executable)
@@ -379,10 +379,21 @@ if ($action eq 'begin') {         # main display
        }
     }
 } elsif ($action eq 'group_stats') {
+    $bweb->can_do('r_view_stat');
+    print "<div><table border='0'><tr><td valign='top'>\n";
+    my $fields = $bweb->get_form(qw/since age 
+                                    db_client_groups qclient_groups/); # drop this to hide 
+    $fields->{action}='group_stats';
+    $fields->{hide_level}=1;
+    $fields->{hide_type}=1;
+    $fields->{hide_status}=1;
+
+    $bweb->display($fields, "display_form_job.tpl");
+
+    print "</td><td valign='top'>";
     $bweb->display_group_stats();
 
-} elsif ($action eq 'group_stats') {
-    $bweb->display_group_stats(age => $arg->{age});
+    print "</td></tr></table></div>"
 
 } elsif ($action eq 'running') {
     $bweb->display_running_jobs(1);
index f87a3fa1024308ba0f81ebb54d1d7d091f0fe631..e3b6e71af32577912d09369fe56e5a3b1802cd94 100644 (file)
@@ -19,6 +19,9 @@
  <tr>
   <td> <b> Files Examined: </b> </td> <td> <TMPL_VAR "files examined"></td>
  </tr>
+ <tr>
+  <td> <b> Files Backuped: </b> </td> <td> <TMPL_VAR files></td>
+ </tr>
  <tr>
   <td> <b> Bytes: </b> </td> <td> <TMPL_VAR bytes></td>
  </tr>
index 21dcf24f0ed7860e0563ee57a4a656984f95cd4f..f0f11e320b7bfdeef6f86bc37ccd08ec43ad5ee6 100644 (file)
@@ -5,6 +5,7 @@
 <div class="otherbox">
 <form name='form1' action='?' method='GET'>
 <table border='0'>
+<TMPL_UNLESS hide_level>
 <tr>
   <td valign='top'>
     <h2>Level</h2>
@@ -16,6 +17,7 @@
     </select>     
   </td>
 </tr>
+</TMPL_UNLESS>
 <TMPL_UNLESS hide_status>
 <tr>
  <td valign='top'>
@@ -47,7 +49,7 @@
 <tr>
   <td valign='top'>
     <h2>Since</h2>
-    <input type='text' id='since' name='since' size='17' title='YYYY-MM-DD'
+    <input type='text' id='since' name='since' size='22' title='YYYY-MM-DD'
      value='<TMPL_VAR since>' class='formulaire'>
   </td>
  </tr>
@@ -55,6 +57,8 @@
   <td valign='top'>
     <h2>Age</h2>
     <select name='age' class='formulaire' onclick='document.getElementById("since").value="";'>
+      <option id='age_86400'   value='86400'>1 day</option>
+      <option id='age_172800'   value='172800'>2 days</option>
       <option id='age_604800'   value='604800'>1 week</option>
       <option id='age_2678400'  value='2678400'>30 days</option>
       <option id='age_15552000' value='15552000'>6 months</option>
@@ -66,6 +70,8 @@
   <td valign='top'>
     <h2>Age</h2>
     <select name='age' class='formulaire'>
+      <option id='age_86400'   value='86400'>Last 24h</option>
+      <option id='age_172800'   value='172800'>This weekend</option>
       <option id='age_604800'   value='604800'>This week</option>
       <option id='age_2678400'  value='2678400'>Last 30 days</option>
       <option id='age_15552000' value='15552000'>Last 6 months</option>
index 2077a31d5230baf19b3e9b144e8806ed11d9c890..b6cdd435044fc1731feb80bdb75b429d9e636499 100644 (file)
@@ -1,4 +1,3 @@
-<br/>
  <div class='titlediv'>
   <h1 class='newstitle'> Statistics (<TMPL_VAR label>)</h1>
  </div>
index f0739f13743adc21b3fd24960ab962ee4cbe815f..d8b7f55e766348717457ab201fb79c421eb4334c 100644 (file)
@@ -19,6 +19,9 @@
  <tr>
   <td> <b> Archivos Examinados: </b> </td> <td> <TMPL_VAR "files examined"></td>
  </tr>
+ <tr>
+  <td> <b> Files Backuped: </b> </td> <td> <TMPL_VAR files></td>
+ </tr>
  <tr>
   <td> <b> Bytes: </b> </td> <td> <TMPL_VAR bytes></td>
  </tr>
index 8d1143a28458fd1472e837bd9518561decbe471a..1b1ff2619ff378e3777b51bab2ca4ccb79752ca8 100644 (file)
@@ -1,10 +1,10 @@
-<br/>
 <div class="otherboxtitle">
   Filter &nbsp;
 </div>
 <div class="otherbox">
 <form name='form1' action='?' method='GET'>
 <table border='0'>
+<TMPL_UNLESS hide_level>
 <tr>
   <td valign='top'>
     <h2>Nivel</h2>
@@ -16,6 +16,7 @@
     </select>     
   </td>
 </tr>
+</TMPL_UNLESS>
 <TMPL_UNLESS hide_status>
 <tr>
  <td valign='top'>
@@ -47,7 +48,7 @@
 <tr>
   <td valign='top'>
     <h2>Tiempo</h2>
-    <input type='text' id='since' name='since' size='17' title='YYYY-MM-DD'
+    <input type='text' id='since' name='since' size='22' title='YYYY-MM-DD'
      value='<TMPL_VAR since>' class='formulaire'>
   </td>
  </tr>
   <td valign='top'>
     <h2>Tiempo</h2>
     <select name='age' class='formulaire' onclick='document.getElementById("since").value="";'>
+      <option id='age_86400'   value='86400'>1 day</option>
+      <option id='age_172800'   value='172800'>2 days</option>
       <option id='age_604800'   value='604800'>Esta semana</option>
-      <option id='age_2678400'  value='2678400'>Últimos 30 dias</option>
-      <option id='age_15552000' value='15552000'>Últimos 6 meses</option>
+      <option id='age_2678400'  value='2678400'>Últimos 30 dias</option>
+      <option id='age_15552000' value='15552000'>Últimos 6 meses</option>
     </select>     
   </td>
  </tr>
   <td valign='top'>
     <h2>Tiempo</h2>
     <select name='age' class='formulaire'>
+      <option id='age_86400'   value='86400'>Last 24h</option>
+      <option id='age_172800'   value='172800'>This weekend</option>
       <option id='age_604800'   value='604800'>Esta Semana</option>
-      <option id='age_2678400'  value='2678400'>Últimos 30 días</option>
-      <option id='age_15552000' value='15552000'>Últimos 6 meses</option>
+      <option id='age_2678400'  value='2678400'>Últimos 30 días</option>
+      <option id='age_15552000' value='15552000'>Últimos 6 meses</option>
     </select>     
   </td>
  </tr>
@@ -87,7 +92,7 @@
 </TMPL_IF>
  <tr>
   <td valign='bottom'> 
-    <h2>Número de items</h2>
+    <h2>Número de items</h2>
     <input type='text' name='limit' value='<TMPL_VAR limit>' 
        class='formulaire' size='4'>
   </td>
     <select name='jobtype' class='formulaire'>
       <option id='jobtype_any' value='all type'>Cualquiera</option>
       <option id='jobtype_B' value='B'>Backup</option>
-      <option id='jobtype_R' value='R'>Recuperación</option>
+      <option id='jobtype_R' value='R'>Recuperación</option>
     </select>
   </td>
 </tr>
index 65c3e334c8c1c8e13fae8018a485cd2c52f3a870..6c4b7b58b4534bef5128fcd0ae541b2ad60d54f1 100644 (file)
@@ -19,6 +19,9 @@
  <tr>
   <td> <b> Fichiers vus : </b> </td> <td> <TMPL_VAR "files examined"></td>
  </tr>
+ <tr>
+  <td> <b> Files Backuped: </b> </td> <td> <TMPL_VAR files></td>
+ </tr>
  <tr>
   <td> <b> Taille : </b> </td> <td> <TMPL_VAR bytes></td>
  </tr>
@@ -35,7 +38,7 @@
 </table>
 <form name='form1' action='?' method='GET'>
 <button type="submit" class="bp" name='action' value='dsp_cur_job' 
-> <img src='/bweb/update.png' title='Rafraîchir' alt=''>Rafraîchir</button>
+> <img src='/bweb/update.png' title='Rafraîchir' alt=''>Rafra&icirc;chir</button>
 <input type='hidden' name='client' value='<TMPL_VAR Client>'>
 <input type='hidden' name='jobid' value='<TMPL_VAR JobId>'>
 <button type="submit" class="bp" name='action' value='cancel_job'
index cf4fdf4c3c256b073fc7c5ec48a9916cc247d5fd..1178807fc96a22c809c5ffe7a8003d92e6bb422b 100644 (file)
@@ -1,10 +1,10 @@
-<br/>
 <div class="otherboxtitle">
   Filtre &nbsp;
 </div>
 <div class="otherbox">
 <form name='form1' action='?' method='GET'>
 <table border='0'>
+<TMPL_UNLESS hide_level>
 <tr>
   <td valign='top'>
     <h2>Niveau</h2>
@@ -16,6 +16,7 @@
     </select>     
   </td>
 </tr>
+</TMPL_UNLESS>
 <TMPL_UNLESS hide_status>
 <tr>
  <td valign='top'>
 <TMPL_UNLESS hide_since>
 <tr>
   <td valign='top'>
-    <h2>Hier</h2>
-    <input type='text' id='since' name='since' size='17' title='YYYY-MM-DD'
+    <h2>Depuis</h2>
+    <input type='text' id='since' name='since' size='22' title='YYYY-MM-DD'
      value='<TMPL_VAR since>' class='formulaire'>
   </td>
  </tr>
 <tr>
   <td valign='top'>
-    <h2>Période</h2>
+    <h2>Période</h2>
     <select name='age' class='formulaire' onclick='document.getElementById("since").value="";'>
+      <option id='age_86400'   value='86400'>1 day</option>
+      <option id='age_172800'   value='172800'>2 days</option>
       <option id='age_604800'   value='604800'>Cette semaine</option>
       <option id='age_2678400'  value='2678400'>30 derniers jours</option>
       <option id='age_15552000' value='15552000'>6 derniers mois</option>
 <TMPL_ELSE>
 <tr>
   <td valign='top'>
-    <h2>Période</h2>
+    <h2>Période</h2>
     <select name='age' class='formulaire'>
+      <option id='age_86400'   value='86400'>Last 24h</option>
+      <option id='age_172800'   value='172800'>This weekend</option>
       <option id='age_604800'   value='604800'>Cette semaine</option>
       <option id='age_2678400'  value='2678400'>30 derniers jours</option>
       <option id='age_15552000' value='15552000'>Last 6 months</option>
@@ -78,9 +83,9 @@
   <td valign='top'>
     <h2>Time slice</h2>
     <select name='type' class='formulaire'>
-      <option id='slice_day'   value='day'>Per days</option>
-      <option id='slice_week'  value='week'>Per weeks</option>
-      <option id='slice_month' value='month'>Per months</option>
+      <option id='slice_day'   value='day'>Par jour</option>
+      <option id='slice_week'  value='week'>Par semaine</option>
+      <option id='slice_month' value='month'>Par mois</option>
     </select>     
   </td>
  </tr>
index 0041285033090d6679519db17d9948e7a7e40cd5..d72333b35767c1c949c341bd910d066d1f3cf18e 100644 (file)
@@ -435,7 +435,7 @@ sub display_running_job
            $status->{corr_jobfiles} = $infos->{corr_jobfiles};
            $status->{jobbytes}=$status->{Bytes}; 
            $status->{jobbytes} =~ s![^\d]!!g;
-           $status->{jobfiles}=$status->{Files}; 
+           $status->{jobfiles}=$status->{'Files Examined'}; 
            $status->{jobfiles} =~ s/,//g;
            $bweb->display($status, "client_job_status.tpl");
        }
@@ -3905,6 +3905,26 @@ SELECT temp.jobname AS jobname,
          + REGR_INTERCEPT(jobbytes,jobtdate)) AS jobbytes,
        COUNT(1) AS nb_jobbytes ";
     }
+    # if it's a differential, we need to compare since the last full
+    # 
+    #   F D D D F D D D      F I I I I D I I I
+    # | #     # #     #    | #         #
+    # | #   # # #   # #    | #         #
+    # | # # # # # # # #    | # # # # # # # # #
+    # +-----------------   +-------------------
+    my $filter2='';
+    if ($level eq 'D') {
+       $filter2 = "
+AND Job.StartTime > (
+ SELECT StartTime 
+   FROM Job 
+  WHERE Job.Name = '$job' 
+    AND Job.Level = 'F' 
+    AND Job.JobStatus = 'T' 
+ORDER BY Job.StartTime DESC LIMIT 1
+) ";
+    }
+    
     $query .= 
 "
 FROM (
@@ -3915,6 +3935,7 @@ FROM (
    WHERE Job.Name = '$job'
      AND Job.Level = '$level'
      AND Job.JobStatus = 'T'
+     $filter2
    ORDER BY StartTime DESC
    LIMIT 4
 ) AS temp GROUP BY temp.jobname
@@ -4014,6 +4035,7 @@ sub display_group_stats
     my ($self) = @_;
     my $arg = $self->get_form('age', 'since');
     return if $self->cant_do('r_view_stat');
+
     my $filter = $self->get_client_group_filter();
 
     my ($limit, $label) = $self->get_limit(%$arg);
index 8efc4fbcf01525779c20c37b9b00396c0f3c08b2..bc325b11194f11cd6abd6625a64c1cfe89f5376f 100644 (file)
@@ -1,3 +1,6 @@
+03Apr08
+ebl  Tweak progress bar and add Backuped files count to job status
+
 02Apr08
 ebl  Add group statistics page
 
index 0351cd39aef2fd85a625f51357c1e0bc0964e13d..4a5434e528aba2eb9ff9f2a5f73311d666ac308d 100644 (file)
@@ -19,6 +19,9 @@
  <tr>
   <td> <b> __Files Examined:__ </b> </td> <td> <TMPL_VAR "files examined"></td>
  </tr>
+ <tr>
+  <td> <b> __Files Backuped:__ </b> </td> <td> <TMPL_VAR files></td>
+ </tr>
  <tr>
   <td> <b> __Bytes:__ </b> </td> <td> <TMPL_VAR bytes></td>
  </tr>
index 97b298033299f74cf9e6352dfbef4bb25f0f51ea..04fb5de18b66a71d3ed4c88362dbff0fdc69cf5c 100644 (file)
@@ -5,6 +5,7 @@
 <div class="otherbox">
 <form name='form1' action='?' method='GET'>
 <table border='0'>
+<TMPL_UNLESS hide_level>
 <tr>
   <td valign='top'>
     <h2>__Level__</h2>
@@ -16,6 +17,7 @@
     </select>     
   </td>
 </tr>
+</TMPL_UNLESS>
 <TMPL_UNLESS hide_status>
 <tr>
  <td valign='top'>
@@ -47,7 +49,7 @@
 <tr>
   <td valign='top'>
     <h2>__Since__</h2>
-    <input type='text' id='since' name='since' size='17' title='YYYY-MM-DD'
+    <input type='text' id='since' name='since' size='22' title='YYYY-MM-DD'
      value='<TMPL_VAR since>' class='formulaire'>
   </td>
  </tr>
index 1481bd73ed1a063f9db0c0fa9962605f628c24d8..74df15817d082f3fa753fb84b0bcc066862f0764 100644 (file)
@@ -1,4 +1,3 @@
-<br/>
  <div class='titlediv'>
   <h1 class='newstitle'> __Statistics__ (<TMPL_VAR label>)</h1>
  </div>