X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=gui%2Fbacula-web%2Findex.php;h=3b086eddb2230d7889b489206aac9319239376d7;hb=06063462d2af98e46f74de7814c4c2cf081a710e;hp=96fe053f23d6418c695c09239396843ff9945b80;hpb=1e57dccd107dc1633b8301050d9446700fe23a17;p=bacula%2Fbacula diff --git a/gui/bacula-web/index.php b/gui/bacula-web/index.php index 96fe053f23..3b086eddb2 100644 --- a/gui/bacula-web/index.php +++ b/gui/bacula-web/index.php @@ -14,15 +14,18 @@ | GNU General Public License for more details. | +-------------------------------------------------------------------------+ */ -// Last Err: session_start(); require ("paths.php"); require($smarty_path."Smarty.class.php"); include "classes.inc"; -$smarty = new Smarty; // Template engine +$smarty = new Smarty; $dbSql = new Bweb(); +require("lang.php"); + +$mode = ""; + $smarty->compile_check = true; $smarty->debugging = false; $smarty->force_compile = true; @@ -30,62 +33,107 @@ $smarty->force_compile = true; $smarty->template_dir = "./templates"; $smarty->compile_dir = "./templates_c"; $smarty->config_dir = "./configs"; + +/* $smarty->config_load("bacula.conf"); // Load config file -$mode = $smarty->get_config_vars("mode"); // Lite o Extend? +$mode = $smarty->get_config_vars("mode"); +*/ // Lite o Extend? -require("lang.php"); +// Getting mode from config file +$mode = $dbSql->get_config_param("mode"); +if( $mode == false ) + $mode = "Lite"; + +$smarty->assign( "mode", $mode ); + +// Determine which template to show +$indexreport = $dbSql->get_config_param( "IndexReport" ); + +if( $indexreport == 0 ) { + $smarty->assign( "last_report", "last_run_report.tpl" ); +}else { + $smarty->assign( "last_report", "report_select.tpl" ); +} + +// Assign to template catalogs number +$smarty->assign( "dbs", $dbSql->Get_Nb_Catalogs() ); //Assign dbs +/* if ( count($dbSql->dbs) >1 ) { $smarty->assign("dbs", $dbSql->dbs); $smarty->assign("dbs_now", $_SESSION['DATABASE']); } +*/ -// generaldata.tpl & last_run_report.tpl (last24bytes) -$client = $dbSql->link->query("select count(*) from Client") - or die ("Error query: 1"); -$totalfiles = $dbSql->link->query("select count(FilenameId) from Filename") - or die ("Error query: 2"); -if ( $dbSql->driver == "mysql") - $last24bytes = $dbSql->link->query("select sum(JobBytes),count(*) from Job where Endtime <= NOW() and UNIX_TIMESTAMP(EndTime) > UNIX_TIMESTAMP(NOW())-86400") - or die ("Error query: 3"); -if ( $dbSql->driver == "pgsql") - $last24bytes = $dbSql->link->query("select sum(JobBytes),count(*) from Job where Endtime <= NOW() and EndTime > NOW() - 86400 * interval '1 second'") - or die ("Error query: 3"); -$bytes_stored =& $dbSql->link->getOne("select SUM(VolBytes) from Media") - or die ("Error query: 4"); - +// generaldata.tpl & last_run_report.tpl ( Last 24 hours report ) +$last24bytes = ""; +$query = ""; + +/*$client = $dbSql->db_link->query("select count(*) from Client") + or die ("Error query: 1");*/ + $totalfiles = $dbSql->db_link->query("select count(FilenameId) from Filename") or die ("Error query: 2"); + + if ( PEAR::isError( $totalfiles ) ) { + die( "Unable to get Total Files information from catalog" . $totalfiles->getMessage() ); + }else { + $tmp = $totalfiles->fetchRow(); + $smarty->assign('files_totales',$tmp[0]); + } + $totalfiles->free(); + + switch( $dbSql->driver ) + { + case 'mysql': + $query = "select sum(JobBytes),count(*) from Job where Endtime <= NOW() and UNIX_TIMESTAMP(EndTime) > UNIX_TIMESTAMP(NOW())-86400"; + break; + case 'pgsql': + $query = "select sum(JobBytes),count(*) from Job where Endtime <= NOW() and EndTime > NOW() - 86400 * interval '1 second'"; + break; + default: + $query = "select sum(JobBytes),count(*) from Job where Endtime <= NOW() and UNIX_TIMESTAMP(EndTime) > UNIX_TIMESTAMP(NOW())-86400"; + break; + } + + $last24bytes = $dbSql->db_link->query( $query ) or die ("Failed to get Total Job Bytes from catalog"); + + if ( PEAR::isError( $last24bytes ) ) { + die( "Unable to get Total Job Bytes from catalog" . $last24bytes->getMessage() ); + }else { + $tmp = $last24bytes->fetchRow(); + var_dump( $tmp ); + // Transfered bytes since last 24 hours + $smarty->assign('bytes_totales', $dbSql->human_file_size( $tmp[0] ) ); + + $smarty->assign('total_jobs', $tmp[1]); + + $last24bytes->free(); + } + +// Database size $smarty->assign('database_size', $dbSql->GetDbSize()); -$smarty->assign('bytes_stored',$bytes_stored); -$tmp = $client->fetchRow(); -$smarty->assign('clientes_totales',$tmp[0]); +// Total bytes stored +$bytes_stored = $dbSql->db_link->getOne("select SUM(VolBytes) from Media") or die ("Failed to get Total stored Bytes from catalog"); +$smarty->assign('bytes_stored', $dbSql->human_file_size($bytes_stored) ); + +// Number of clients +$nb_clients = $dbSql->Get_Nb_Clients(); +$smarty->assign('clientes_totales',$nb_clients["nb_client"] ); -$tmp = $last24bytes->fetchRow(); /*if ( empty($tmp[0]) ) { // No data for last 24, search last 48 if ( $dbSql->driver == "mysql" ) - $last24bytes = $dbSql->link->query("select sum(JobBytes) from Job where Endtime <= NOW() and UNIX_TIMESTAMP(EndTime) > UNIX_TIMESTAMP(NOW())-172800" ); + $last24bytes = $dbSql->db_link->query("select sum(JobBytes) from Job where Endtime <= NOW() and UNIX_TIMESTAMP(EndTime) > UNIX_TIMESTAMP(NOW())-172800" ); if ( $dbSql->driver == "pgsql") - $last24bytes = $dbSql->link->query("select sum(JobBytes) from Job where Endtime <= NOW() and EndTime > NOW()-172800 * interval '1 second'" ) + $last24bytes = $dbSql->db_link->query("select sum(JobBytes) from Job where Endtime <= NOW() and EndTime > NOW()-172800 * interval '1 second'" ) or die ("Error query: 4.1"); $smarty->assign('when',"yesterday"); $tmp = $last24bytes->fetchRow(); }*/ -$smarty->assign('bytes_totales',$tmp[0]); -$smarty->assign('total_jobs', $tmp[1]); - -$tmp = $totalfiles->fetchRow(); -$smarty->assign('files_totales',$tmp[0]); - -$client->free(); -$totalfiles->free(); -$last24bytes->free(); - - - // report_select.tpl & last_run_report.tpl -$res = $dbSql->link->query("select Name from Job group by Name"); +$res = $dbSql->db_link->query("select Name from Job group by Name"); + $a_jobs = array(); while ( $tmp = $res->fetchRow() ) array_push($a_jobs, $tmp[0]); @@ -93,22 +141,40 @@ $smarty->assign('total_name_jobs',$a_jobs); $smarty->assign('time2',( (time())-2678400) ); // Current time - 1 month.