| | |
| | | |
| | | //** Email Quota |
| | | public function monitorEmailQuota() { |
| | | global $conf; |
| | | global $conf, $app; |
| | | |
| | | //* Initialize data array |
| | | $data = array(); |
| | |
| | | |
| | | //* The state of the email_quota. |
| | | $state = 'ok'; |
| | | |
| | | $mailboxes = $app->db->queryAllRecords("SELECT email FROM mail_user WHERE server_id = $server_id"); |
| | | if(is_array($mailboxes)) { |
| | | foreach($mailboxes as $mb) { |
| | | $email = $mb['email']; |
| | | $email_parts = explode('@',$mb['email']); |
| | | $filename = '/var/vmail/'.$email_parts[1].'/'.$email_parts[0].'/.quotausage'; |
| | | if(file_exists($filename)) { |
| | | $quotafile = file($filename); |
| | | $data[$email]['used'] = trim($quotafile['1']); |
| | | unset($quotafile); |
| | | } |
| | | } |
| | | } |
| | | |
| | | unset($mailboxes); |
| | | |
| | | //* Dovecot quota check Courier in progress lathama@gmail.com |
| | | /* |
| | | if($dir = opendir("/var/vmail")){ |
| | | while (($quotafiles = readdir($dir)) !== false){ |
| | | if(preg_match('/.\_quota$/', $quotafiles)){ |
| | |
| | | } |
| | | closedir($dir); |
| | | } |
| | | */ |
| | | $res['server_id'] = $server_id; |
| | | $res['type'] = $type; |
| | | $res['data'] = $data; |
| | |
| | | $state = 'no_state'; |
| | | $data['output'] = ''; |
| | | } |
| | | |
| | | //* Encode data |
| | | $data['output'] = htmlentities($data['output']); |
| | | |
| | | /* |
| | | * Return the Result |
| | |
| | | system('which iptables', $retval); // Debian, Ubuntu, Fedora |
| | | if ($retval === 0) { |
| | | /* Get the data of the log */ |
| | | $data['output'] = shell_exec('iptables -S'); |
| | | $data['output'] = '<h2>iptables -S (ipv4)</h2>'.shell_exec('iptables -S'); |
| | | |
| | | /* |
| | | * At this moment, there is no state (maybe later) |
| | | */ |
| | | $state = 'no_state'; |
| | | } else { |
| | | $state = 'no_state'; |
| | | $data = ''; |
| | | } |
| | | |
| | | |
| | | /* This monitoring is only available if fail2ban is installed */ |
| | | system('which ip6tables', $retval); // Debian, Ubuntu, Fedora |
| | | if ($retval === 0) { |
| | | /* Get the data of the log */ |
| | | $data['output'] .= '<br><h2>ip6tables -S (ipv6)</h2>'.shell_exec('ip6tables -S'); |
| | | |
| | | /* |
| | | * At this moment, there is no state (maybe later) |