]> git.sur5r.net Git - bacula/bacula/commitdiff
ebl fix pool view with more than one media type
authorEric Bollengier <eric@eb.homelinux.org>
Fri, 29 Jun 2007 15:20:44 +0000 (15:20 +0000)
committerEric Bollengier <eric@eb.homelinux.org>
Fri, 29 Jun 2007 15:20:44 +0000 (15:20 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@5115 91ce42f0-d328-0410-95d8-f526ca767f89

gui/bweb/lang/es/tpl/display_pool.tpl
gui/bweb/lang/fr/tpl/display_pool.tpl
gui/bweb/lib/Bweb.pm
gui/bweb/tpl/display_pool.tpl

index e1d3fd74e24d4a35a494ec6fa8650ff3a791f55c..b75a9bfdd8507fd1c9957a1521f535f354eeb1ed 100644 (file)
@@ -17,7 +17,7 @@
 
 <script type="text/javascript" language="JavaScript">
 
-var header = new Array("Nombre","Reciclado","Retención","Use Duration",
+var header = new Array("Nombre","Media Type","Reciclado","Retención","Use Duration",
                        "Máx Jobs/Volumen","Máx Archivos/Volumen", 
                        "Máx Tamaño/Volumen","Nb volumes", "Estado Volumen", "Uso", "Selección");
 
@@ -46,10 +46,16 @@ chkbox.type  = 'radio';
 chkbox.value = '<TMPL_VAR Name>';
 chkbox.name  = 'pool';
 
+chkbox = document.createElement('INPUT');
+chkbox.type  = 'radio';
+chkbox.value = '<TMPL_VAR mediatype>';
+chkbox.name  = 'mediatype';
+
 img2 = percent_usage(<TMPL_VAR poolusage>);
 
 data.push( new Array(
 "<TMPL_VAR Name>",
+"<TMPL_VAR mediatype>",
 "<TMPL_VAR Recycle>",
 human_sec(<TMPL_VAR VolRetention>),
 human_sec(<TMPL_VAR VolUseDuration>),
index fc5c5e5c99850614b37d5cc9c1fc2839ce324279..c53a55218275002859abbdeed43e4e5a9b8e3334 100644 (file)
@@ -17,9 +17,9 @@
 
 <script type="text/javascript" language="JavaScript">
 
-var header = new Array("Nom","Recyclage","Rétention","Durée d'utilisation",
-                      "Nb job maxi par média","Nb fichier maxi par média", 
-                       "Taille maxi d'un média","Nb volumes", "Statut", "Utilisation", "Sélection");
+var header = new Array("Nom","Type","Recyclage","Rétention","Durée d'utilisation",
+//                    "Nb job maxi par média","Nb fichier maxi par média","Taille maxi d'un média",
+                      "Nb volumes", "Statut", "Utilisation", "Sélection");
 
 var data = new Array();
 var chkbox;
@@ -46,16 +46,22 @@ chkbox.type  = 'radio';
 chkbox.value = '<TMPL_VAR Name>';
 chkbox.name  = 'pool';
 
+chkbox = document.createElement('INPUT');
+chkbox.type  = 'radio';
+chkbox.value = '<TMPL_VAR mediatype>';
+chkbox.name  = 'mediatype';
+
 img2 = percent_usage(<TMPL_VAR poolusage>);
 
 data.push( new Array(
 "<TMPL_VAR Name>",
+"<TMPL_VAR mediatype>",
 "<TMPL_VAR Recycle>",
 human_sec(<TMPL_VAR VolRetention>),
 human_sec(<TMPL_VAR VolUseDuration>),
-"<TMPL_VAR MaxVolJobs>",
-"<TMPL_VAR MaxVolFiles>",
-human_size(<TMPL_VAR MaxVolBytes>),
+//"<TMPL_VAR MaxVolJobs>",
+//"<TMPL_VAR MaxVolFiles>",
+//human_size(<TMPL_VAR MaxVolBytes>),
 "<TMPL_VAR VolNum>",
 img,
 img2,
index c22078a9368907b99ebf1088d56d2b0262c4c7d7..85d34144311a52daec3b204ed7e7c4d25cb96015 100644 (file)
@@ -1050,6 +1050,7 @@ our %sql_func = (
              STARTTIME_PDAY => " date_part('day', Job.StartTime) ",
              STARTTIME_PMONTH => " date_part('month', Job.StartTime) ",
              DB_SIZE => " SELECT pg_database_size(current_database()) ",
+             CAT_POOL_TYPE => " MediaType || '_' || Pool.Name ",
          },
          mysql => {
              UNIX_TIMESTAMP => 'UNIX_TIMESTAMP',
@@ -1068,6 +1069,7 @@ our %sql_func = (
              DB_SIZE => " SELECT 0 ",
              # works only with mysql 5
              # DB_SIZE => " SELECT sum(DATA_LENGTH) FROM INFORMATION_SCHEMA.TABLES ",
+             CAT_POOL_TYPE => " CONCAT(MediaType,'_',Pool.Name) ",
          },
         );
 
@@ -2798,7 +2800,9 @@ SELECT subq.volmax        AS volmax,
        Pool.MaxVolJobs    AS maxvoljobs,
        Pool.MaxVolFiles   AS maxvolfiles,
        Pool.MaxVolBytes   AS maxvolbytes,
-       subq.PoolId        AS PoolId
+       subq.PoolId        AS PoolId,
+       subq.MediaType     AS mediatype,
+       $self->{sql}->{CAT_POOL_TYPE}  AS uniq
 FROM
   (
     SELECT COALESCE(media_avg_size.volavg,0) * count(Media.MediaId) AS volmax,
@@ -2819,7 +2823,7 @@ LEFT JOIN Pool ON (Pool.PoolId = subq.PoolId)
 $whereW
 ";
 
-    my $all = $self->dbh_selectall_hashref($query, 'name') ;
+    my $all = $self->dbh_selectall_hashref($query, 'uniq') ;
 
     $query = "
 SELECT Pool.Name AS name,
@@ -2845,7 +2849,8 @@ GROUP BY Pool.Name;
        $query = "
   SELECT VolStatus AS volstatus, count(MediaId) AS nb
     FROM Media 
-   WHERE PoolId=$p->{poolid} 
+   WHERE PoolId=$p->{poolid}
+     AND Media.MediaType = '$p->{mediatype}'
          $whereA
 GROUP BY VolStatus
 ";
index 9891c837152a2dd54b2ae39fa78a3e8a5ed66413..4f8e01feddc6bb6f1d0b29f926690619a44f2975 100644 (file)
@@ -17,7 +17,7 @@
 
 <script type="text/javascript" language="JavaScript">
 
-var header = new Array("Name","Recycle","Retention","Use Duration",
+var header = new Array("Name","Media Type", "Recycle","Retention","Use Duration",
                        "Max jobs per volume","Max files per volume", 
                        "Max volume size","Nb volumes", "Vol Status", "Usage", "Select");
 
@@ -46,10 +46,16 @@ chkbox.type  = 'radio';
 chkbox.value = '<TMPL_VAR Name>';
 chkbox.name  = 'pool';
 
+chkbox = document.createElement('INPUT');
+chkbox.type  = 'radio';
+chkbox.value = '<TMPL_VAR mediatype>';
+chkbox.name  = 'mediatype';
+
 img2 = percent_usage(<TMPL_VAR poolusage>);
 
 data.push( new Array(
 "<TMPL_VAR Name>",
+"<TMPL_VAR mediatype>",
 "<TMPL_VAR Recycle>",
 human_sec(<TMPL_VAR VolRetention>),
 human_sec(<TMPL_VAR VolUseDuration>),