Marius Cramer
2015-01-21 c0138f5488dc19898c9e6c2df6c6264ee618e77c
Merge branch 'master' into 'master'

Master

See merge request !157
27 files modified
84 ■■■■■ changed files
interface/web/sites/database_quota_stats.php 29 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ar_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/bg_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/br_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/de_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/el_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/en_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/es_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/fi_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/fr_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/hr_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/hu_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/id_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/it_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ja_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/nl_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/pl_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/pt_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ro_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ru_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/se_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/sk_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/tr_database_quota_stats_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/list/database_quota_stats.list.php 1 ●●●● patch | view | raw | blame | history
interface/web/sites/templates/database_quota_stats_list.htm 2 ●●●●● patch | view | raw | blame | history
server/plugins-available/mail_plugin.inc.php 29 ●●●● patch | view | raw | blame | history
interface/web/sites/database_quota_stats.php
@@ -13,9 +13,11 @@
******************************************/
//* Check permissions for module
$app->auth->check_module_permissions('mail');
$app->auth->check_module_permissions('sites');
$app->load('listform_actions','functions');
$app->uses('functions');
$app->load('listform_actions');
$tmp_rec =  $app->db->queryOneRecord("SELECT data from monitor_data WHERE type = 'database_size' ORDER BY created DESC");
$monitor_data = array();
@@ -24,12 +26,12 @@
foreach($tmp_array as $database_name => $data) {
    $db_name = $data['database_name'];
    $temp = $app->db->queryOneRecord("SELECT client.username, web_database.database_quota FROM web_database, sys_group, client WHERE web_database.sys_groupid = sys_group.groupid AND sys_group.client_id = client.client_id AND web_database.database_name = ?'", $db_name);
    $temp = $app->db->queryOneRecord("SELECT client.username, web_database.database_quota FROM web_database, sys_group, client WHERE web_database.sys_groupid = sys_group.groupid AND sys_group.client_id = client.client_id AND web_database.database_name = ?", $db_name);
    $monitor_data[$db_name]['database_name'] = $data['database_name'];
    $monitor_data[$db_name]['client']=$temp['username'];
    $monitor_data[$db_name]['used'] = $data['size'];
    $monitor_data[$db_name]['quota']=$temp['database_quota'];
    $monitor_data[$db_name]['client'] = isset($temp['username']) ? $temp['username'] : '';
    $monitor_data[$db_name]['used'] = isset($data['size']) ? $data['size'] : 0;
    $monitor_data[$db_name]['quota'] = isset($temp['database_quota']) ? $temp['database_quota'] : 0;
    unset($temp);
}
@@ -47,18 +49,17 @@
        $database_name = $rec['database_name'];
        $rec['database'] = isset($monitor_data[$database_name]['database_name']) ? $monitor_data[$database_name]['database_name'] : array(1 => 0);
        $rec['client'] = isset($monitor_data[$database_name]['client']) ? $monitor_data[$database_name]['client'] : array(1 => 0);
        $rec['used'] = isset($monitor_data[$database_name]['used']) ? $monitor_data[$database_name]['used'] : array(1 => 0);
        $rec['quota'] = isset($monitor_data[$database_name]['quota']) ? $monitor_data[$database_name]['quota'] : array(1 => 0);
        if (!is_numeric($rec['used'])) $rec['used']=$rec['used'][1];
        $rec['database'] = $monitor_data[$database_name]['database_name'];
        $rec['client'] = $monitor_data[$database_name]['client'];
        $rec['server_name'] = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $rec['server_id'])['server_name'];
        $rec['used'] = $monitor_data[$database_name]['used'];
        $rec['quota'] = $monitor_data[$database_name]['quota'];
        if($rec['quota'] == 0){
            $rec['quota'] = $app->lng('unlimited');
            $rec['percentage'] = '';
        } else {
            $rec['percentage'] = round(100 * $rec['used'] / ( $rec['quota']*1024*1024) ).'%';
            if ($rec['used'] > 0 ) $rec['percentage'] = round(100 * intval($rec['used']) / ( intval($rec['quota'])*1024*1024) ).'%';
            $rec['quota'] .= ' MB';
        }
@@ -73,7 +74,7 @@
$list = new list_action;
$list->SQLExtWhere = "";
$list->SQLOrderBy = "";
$list->onLoad();
?>
interface/web/sites/lib/lang/ar_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/bg_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/br_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/cz_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/de_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Datenbank';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Kunde';
$wb["used_txt"] = 'Verwendeter Speicherplatz';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/el_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/en_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/es_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/fi_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/fr_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/hr_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/hu_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/id_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/it_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/ja_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/nl_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/pl_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/pt_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/ro_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/ru_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/se_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/sk_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/lib/lang/tr_database_quota_stats_list.lng
@@ -1,5 +1,6 @@
<?php
$wb["database_txt"] = 'Database';
$wb["server_name_txt"] = 'Server';
$wb["client_txt"] = 'Client';
$wb["used_txt"] = 'Used space';
$wb["quota_txt"] = 'Quota';
interface/web/sites/list/database_quota_stats.list.php
@@ -35,7 +35,6 @@
* Suchfelder
*****************************************************/
//$liste["item"][] = array( 'field'  => "domain",
$liste["item"][] = array( 'field'  => "database_name",
    'datatype' => "VARCHAR",
    'filters'   => array( 0 => array( 'event' => 'SHOW',
interface/web/sites/templates/database_quota_stats_list.htm
@@ -9,6 +9,7 @@
                <thead class="dark form-group-sm">
                <tr>
                    <th data-column="database"><tmpl_var name="database_txt"></th>
                    <th data-column="server_name"><tmpl_var name="server_name_txt"></th>
                    <th data-column="client"><tmpl_var name="client_txt"></th>
                    <th data-column="used"><tmpl_var name="used_txt"></th>
                    <th data-column="quota"><tmpl_var name="quota_txt"></th>
@@ -30,6 +31,7 @@
                    <tmpl_loop name="records">
                        <tr>
                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="database"}</a></td>
                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_name"}</a></td>
                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="client"}</a></td>
                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="used"}</a></td>
                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="quota"}</a></td>
server/plugins-available/mail_plugin.inc.php
@@ -403,17 +403,19 @@
            //* mount backup directory, if necessary
            if( $server_config['backup_dir_is_mount'] == 'y' && !$app->system->mount_backup_dir($backup_dir) ) $mount_backup = false;
            if($mount_backup){
                $sql = "SELECT * FROM mail_domain WHERE domain = '".explode("@",$data['old']['email'])[1]."'";
                $domain_rec = $app->db->queryOneRecord($sql);
                $mail_backup_dir = $backup_dir.'/mail'.$domain_rec['domain_id'];
                $mail_backup_files = 'mail'.$data['old']['mailuser_id'];
                exec(escapeshellcmd('rm -f '.$mail_backup_dir.'/'.$mail_backup_files).'*');
                //* cleanup database
                $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ? AND mailuser_id = ?";
                $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
                if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
                $sql = "SELECT * FROM mail_domain WHERE domain = ?";
                $domain_rec = $app->db->queryOneRecord($sql, explode("@",$data['old']['email'])[1]);
                if (is_array($domain_rec)) {
                    $mail_backup_dir = $backup_dir.'/mail'.$domain_rec['domain_id'];
                    $mail_backup_files = 'mail'.$data['old']['mailuser_id'];
                    exec(escapeshellcmd('rm -f '.$mail_backup_dir.'/'.$mail_backup_files).'*');
                    //* cleanup database
                    $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ? AND mailuser_id = ?";
                    $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
                    if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
                $app->log('Deleted the mail backups for: '.$data['old']['email'], LOGLEVEL_DEBUG);
                    $app->log('Deleted the mail backups for: '.$data['old']['email'], LOGLEVEL_DEBUG);
                }
            }
        }
    }
@@ -421,7 +423,6 @@
    function domain_delete($event_name, $data) {
        global $app, $conf;
        // get the config
        $app->uses("getconf");
        $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail');
@@ -456,9 +457,9 @@
                $mail_backup_dir = $backup_dir.'/mail'.$data['old']['domain_id'];
                exec(escapeshellcmd('rm -rf '.$mail_backup_dir));
                //* cleanup database
                $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ? AND mailuser_id = ?";
                $app->db->query($sql, $conf['server_id'], $data['old']['domain_id'], $data['old']['mailuser_id']);
                if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
                $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ?";
                $app->db->query($sql, $conf['server_id'], $data['old']['domain_id']);
                if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id']);
                $app->log('Deleted the mail backup directory: '.$mail_backup_dir, LOGLEVEL_DEBUG);
            }