ISPConfig – add backup size to web backups 8


To view the size of the backups of a domain in the interface, just a few minor changes are needed. The modified files are available for download here.

filesize

Add one line to interface/web/sites/lib/lang/en_web_backup_list.lng:

$wb['filesize_txt'] = 'Filesize';

Extend interface/web/sites/templates/web_backup_list.htm by two lines:

<th class="tbl_col_filename" scope="col"><tmpl_var name="filename_txt"></th>
<th class="tbl_col_filename" scope="col"><tmpl_var name="filesize_txt"></th>
<th class="tbl_col_limit" scope="col">{tmpl_var name='search_limit'}</th>

[...]

<td class="tbl_col_filename">{tmpl_var name="filename"}</td>
<td class="tbl_col_filesize">{tmpl_var name="filesize"}</td>
<td class="tbl_col_buttons">

Make some changes to /usr/local/ispconfig/server/cron_daily.php (line 741):


######################################################################
// Create website backups
######################################################################
function formatBytes($size, $precision = 2) {
$base=log($size)/log(1024);
$suffixes=array('','k','M','G','T');
return round(pow(1024, $base-floor($base)), $precision) . $suffixes[floor($base)];
}

Change line 806:
$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (" . $conf['server_id'] . "," . $web_id . ",'web','" . $backup_mode . "',".time() . ",'" . $app->db->quote($web_backup_file) . "')";

to

$sql = "INSERT INTO web_backup (server_id,parent_domain_id, backup_type, backup_mode, tstamp, filename, filesize) VALUES (" . $conf['server_id'] . "," . $web_id . ",'web','" . $backup_mode . "',".time() . ",'" . $app->db->quote($web_backup_file) . "','" . formatBytes(filesize($web_backup_dir . '/' . $web_backup_file)) . "')";

and line 932 from:
$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (" . $conf['server_id'] . ,$web_id,'mysql','sqlgz'," . time() . ",'" . $app->db->quote($db_backup_file) . " . gz')";

to

$sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename,filesize) VALUES (" . $conf['server_id'] . ",$web_id,'mysql','sqlgz'," . time() . ",'" . $app->db->quote($db_backup_file) . ".gz','" . formatBytes(filesize($db_backup_dir . '/' . $db_backup_file)) . "')";

Finally in the database the table web_backup must be expanded (i.e. with phpMyAdmin).

ALTER TABLE `web_backup` ADD `filesize` VARCHAR(10) NOT NULL AFTER `filename`;


Leave a comment

Your email address will not be published. Required fields are marked *

8 thoughts on “ISPConfig – add backup size to web backups