X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;ds=sidebyside;f=gui%2Fbacula-web%2Findex.php;h=3b086eddb2230d7889b489206aac9319239376d7;hb=06063462d2af98e46f74de7814c4c2cf081a710e;hp=cc13c78b4b9c0f31f7b788a5a86e5e23cb12fa82;hpb=4b25a1fd6dd6021b1f843bd89f93144cd7a81229;p=bacula%2Fbacula diff --git a/gui/bacula-web/index.php b/gui/bacula-web/index.php index cc13c78b4b..3b086eddb2 100644 --- a/gui/bacula-web/index.php +++ b/gui/bacula-web/index.php @@ -1,4 +1,4 @@ -compile_check = true; -//$smarty->debugging = true; +require("lang.php"); + +$mode = ""; + +$smarty->compile_check = true; +$smarty->debugging = false; +$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 ); -// 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"); +// Determine which template to show +$indexreport = $dbSql->get_config_param( "IndexReport" ); -$smarty->assign('database_size', $dbSql->GetDbSize()); -$smarty->assign('bytes_stored',$bytes_stored); +if( $indexreport == 0 ) { + $smarty->assign( "last_report", "last_run_report.tpl" ); +}else { + $smarty->assign( "last_report", "report_select.tpl" ); +} -$tmp = $client->fetchRow(); -$smarty->assign('clientes_totales',$tmp[0]); +// Assign to template catalogs number +$smarty->assign( "dbs", $dbSql->Get_Nb_Catalogs() ); -$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" ); - if ( $dbSql->driver == "pgsql") - $last24bytes = $dbSql->link->query("select sum(JobBytes) from Job where Endtime <= NOW() and EndTime > NOW()-172800" ); - $smarty->assign('when',"yesterday"); +//Assign dbs +/* +if ( count($dbSql->dbs) >1 ) { + $smarty->assign("dbs", $dbSql->dbs); + $smarty->assign("dbs_now", $_SESSION['DATABASE']); } -$smarty->assign('bytes_totales',$tmp[0]); -$smarty->assign('total_jobs', $tmp[1]); +*/ -$tmp = $totalfiles->fetchRow(); -$smarty->assign('files_totales',$tmp[0]); +// 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()); -$client->free(); -$totalfiles->free(); -$last24bytes->free(); +// 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"] ); + +/*if ( empty($tmp[0]) ) { // No data for last 24, search last 48 + if ( $dbSql->driver == "mysql" ) + $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->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(); +}*/ // 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]); @@ -81,22 +141,40 @@ $smarty->assign('total_name_jobs',$a_jobs); $smarty->assign('time2',( (time())-2678400) ); // Current time - 1 month.