From a03a840bfd8bb1743a9e75b934b1ce9f6505f80d Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Tue, 06 May 2014 13:38:59 -0400
Subject: [PATCH] Implemented ftp user auto-expire

---
 interface/lib/classes/quota_lib.inc.php |   68 +++++++++++++++-------------------
 1 files changed, 30 insertions(+), 38 deletions(-)

diff --git a/interface/lib/classes/quota_lib.inc.php b/interface/lib/classes/quota_lib.inc.php
index 1031cdc..b9ef6aa 100644
--- a/interface/lib/classes/quota_lib.inc.php
+++ b/interface/lib/classes/quota_lib.inc.php
@@ -1,7 +1,7 @@
 <?php
 
 class quota_lib {
-	public function get_quota_data($groupid = null, $readable = true) {
+	public function get_quota_data($clientid = null, $readable = true) {
 		global $app; 
 		
 		$tmp_rec =  $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'harddisk_quota' ORDER BY created DESC");
@@ -13,12 +13,9 @@
 		}
 		//print_r($monitor_data);
 		
-		if($groupid != null){
-			$sql_where = " AND sys_groupid = ".$groupid;
-		}
+		// select all websites or websites belonging to client
+		$sites = $app->db->queryAllRecords("SELECT * FROM web_domain WHERE active = 'y' AND type = 'vhost'".(($clientid != null)?" AND sys_groupid = (SELECT default_group FROM sys_user WHERE client_id=?)":''), $app->functions->intval($client_id));
 		
-		// select websites belonging to client
-		$sites = $app->db->queryAllRecords("SELECT * FROM web_domain WHERE active = 'y' AND type = 'vhost'".$sql_where);
 		//print_r($sites);
 		if(is_array($sites) && !empty($sites)){
 			for($i=0;$i<sizeof($sites);$i++){
@@ -93,7 +90,7 @@
 		return $sites;
 	}
 
-	public function get_mailquota_data($groupid = null, $readable = true) {
+	public function get_mailquota_data($clientid = null, $readable = true) {
 		global $app;
 		
 		$tmp_rec =  $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'email_quota' ORDER BY created DESC");
@@ -110,17 +107,10 @@
 			}
 		}
 		//print_r($monitor_data);
-		if($_SESSION["s"]["user"]["typ"] != 'admin'){
-			$sql_where = " AND sys_groupid = ".intval($_SESSION['s']['user']['default_group']);
-		}
 		
-		if($groupid != null){
-			$sql_where = " AND sys_groupid = ".$groupid;
-		}
+		// select all email accounts or email accounts belonging to client
+		$emails = $app->db->queryAllRecords("SELECT * FROM mail_user".(($clientid != null)? " WHERE sys_groupid = (SELECT default_group FROM sys_user WHERE client_id=?)" : ''), $app->functions->intval($client_id));
 		
-		
-		// select email accounts belonging to client
-		$emails = $app->db->queryAllRecords("SELECT * FROM mail_user WHERE 1".$sql_where);
 		//print_r($emails);
 		if(is_array($emails) && !empty($emails)){
 			for($i=0;$i<sizeof($emails);$i++){
@@ -129,28 +119,30 @@
 				$emails[$i]['used'] = isset($monitor_data[$email]['used']) ? $monitor_data[$email]['used'] : array(1 => 0);
 		
 				if (!is_numeric($emails[$i]['used'])) $emails[$i]['used']=$emails[$i]['used'][1];
-		
-				// colours
-				$emails[$i]['display_colour'] = '#000000';
-				if($emails[$i]['quota'] > 0){
-					$used_ratio = $emails[$i]['used']/$emails[$i]['quota'];
-				} else {
-					$used_ratio = 0;
-				}
-				if($used_ratio >= 0.8) $emails[$i]['display_colour'] = '#fd934f';
-				if($used_ratio >= 1) $emails[$i]['display_colour'] = '#cc0000';
-		
-				if($emails[$i]['quota'] == 0){
-					$emails[$i]['quota'] = $app->lng('unlimited');
-				} else {
-					$emails[$i]['quota'] = round($emails[$i]['quota'] / 1048576, 4).' MB';
-				}
-		
-		
-				if($emails[$i]['used'] < 1544000) {
-					$emails[$i]['used'] = round($emails[$i]['used'] / 1024, 4).' KB';
-				} else {
-					$emails[$i]['used'] = round($emails[$i]['used'] / 1048576, 4).' MB';
+				
+				if ($readable) {
+					// colours
+					$emails[$i]['display_colour'] = '#000000';
+					if($emails[$i]['quota'] > 0){
+						$used_ratio = $emails[$i]['used']/$emails[$i]['quota'];
+					} else {
+						$used_ratio = 0;
+					}
+					if($used_ratio >= 0.8) $emails[$i]['display_colour'] = '#fd934f';
+					if($used_ratio >= 1) $emails[$i]['display_colour'] = '#cc0000';
+			
+					if($emails[$i]['quota'] == 0){
+						$emails[$i]['quota'] = $app->lng('unlimited');
+					} else {
+						$emails[$i]['quota'] = round($emails[$i]['quota'] / 1048576, 4).' MB';
+					}
+			
+			
+					if($emails[$i]['used'] < 1544000) {
+						$emails[$i]['used'] = round($emails[$i]['used'] / 1024, 4).' KB';
+					} else {
+						$emails[$i]['used'] = round($emails[$i]['used'] / 1048576, 4).' MB';
+					}
 				}
 			}
 		}

--
Gitblit v1.9.1