]> git.sur5r.net Git - bacula/bacula/commitdiff
ebl Add LocationLog view
authorEric Bollengier <eric@eb.homelinux.org>
Thu, 24 Aug 2006 20:29:42 +0000 (20:29 +0000)
committerEric Bollengier <eric@eb.homelinux.org>
Thu, 24 Aug 2006 20:29:42 +0000 (20:29 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@3364 91ce42f0-d328-0410-95d8-f526ca767f89

gui/bweb/lib/Bweb.pm
gui/bweb/tpl/display_media_zoom.tpl

index 90ab2f9a654b0528653154de4ad8b600e64337bc..8fabed1b8045140674ef6879b62e48b18b337f18 100644 (file)
@@ -2104,7 +2104,23 @@ SELECT DISTINCT Job.JobId AS jobid,
            $_->{bytes} = human_size($_->{bytes}) ;
        }
 
+       $query = "
+SELECT LocationLog.Date    AS date,
+       Location.Location   AS location,
+       LocationLog.Comment AS comment
+ FROM Media,LocationLog INNER JOIN Location ON (LocationLog.LocationId = Location.LocationId)
+ WHERE Media.MediaId = LocationLog.MediaId
+   AND Media.VolumeName = $mq
+";
+
+       my $logtxt = '';
+       my $log = $self->dbh_selectall_arrayref($query) ;
+       if ($log) {
+           $logtxt = join("\n", map { ($_->[0] . ' ' . $_->[1] . ' ' . $_->[2])} @$log ) ;
+       }
+
        $self->display({ jobs => [ values %$jobs ],
+                        LocationLog => $logtxt,
                         %$media },
                       "display_media_zoom.tpl");
     }
@@ -2977,7 +2993,7 @@ sub run_job_select
     my ($self) = @_;
     $b = new Bconsole(pref => $self->{info});
 
-    my $joblist = [ map { { name => $_ } } split(/\r\n/, $b->send_cmd(".job")) ];
+    my $joblist = [ map { { name => $_ } } $b->list_job() ];
 
     $self->display({ Jobs => $joblist }, "run_job.tpl");
 }
@@ -3017,12 +3033,12 @@ sub run_job_mod
     my $info = $b->send_cmd("show job=\"$job\"");
     my $attr = $self->run_parse_job($info);
     
-    my $jobs   = [ map {{ name => $_ }} split(/\r\n/, $b->send_cmd(".job")) ];
+    my $jobs   = [ map {{ name => $_ }} $b->list_job() ];
 
-    my $pools  = [ map { { name => $_ } } split(/\r\n/, $b->send_cmd(".pool")) ];
-    my $clients = [ map { { name => $_ } } split(/\r\n/, $b->send_cmd(".client")) ];
-    my $filesets= [ map { { name => $_ } } split(/\r\n/, $b->send_cmd(".fileset")) ];
-    my $storages= [ map { { name => $_ } } split(/\r\n/, $b->send_cmd(".storage")) ];
+    my $pools  = [ map { { name => $_ } } $b->list_pool() ];
+    my $clients = [ map { { name => $_ } }$b->list_client()];
+    my $filesets= [ map { { name => $_ } }$b->list_fileset() ];
+    my $storages= [ map { { name => $_ } }$b->list_storage()];
 
     $self->display({
        jobs     => $jobs,
@@ -3039,7 +3055,7 @@ sub run_job
     my ($self) = @_;
     $b = new Bconsole(pref => $self->{info});
     
-    my $jobs   = [ map {{ name => $_ }} split(/\r\n/, $b->send_cmd(".job")) ];
+    my $jobs   = [ map {{ name => $_ }} $b->list_job() ];
 
     $self->display({
        jobs     => $jobs,
index 765954fa4334d2b0fa8d45fc479b500c5ca63116..83b9e6496b1f5f8111063aaf16b09fe17e563fec 100644 (file)
@@ -1,4 +1,5 @@
-<br/>
+<table>
+<td valign='top'>
  <div class='titlediv'>
   <h1 class='newstitle'> Media : <TMPL_VAR volumename></h1>
  </div>
 </TMPL_IF>
       <input type="image" name='action' value='update_media' title='Update' src='/bweb/edit.png'>&nbsp;
       <input type="image" name='action' value='purge' title='Purge' src='/bweb/purge.png'>&nbsp;
-      <input type="image" name='action' value='prune' title='Prune' src='/bweb/prune.png'>
+      <input type="image" name='action' value='prune' title='Prune' src='/bweb/prune.png'>&nbsp;
+<TMPL_IF Locationlog>
+      <a href='#' onclick='document.getElementById("locationlog").style.visibility="visible";'><img title='View location log' src='/bweb/zoom.png'></a>
+</TMPL_IF>
    </form>
  </div>
-
-
-
+</td>
+<td valign='top'style="visibility:hidden;" id='locationlog'>
+ <div class='titlediv'>
+  <h1 class='newstitle'> Location log </h1>
+ </div>
+ <div class='bodydiv'>
+<pre>
+ <TMPL_VAR LocationLog>
+</pre>
+ </div>
+</td>
+</table>
 <script type="text/javascript" language="JavaScript">
 
 var header = new Array("Pool","Online","Location","Vol Status", "Vol Bytes", "Expire",