showUpdateStep("Updating from 0.9.12-svn6 to 0.9.12 final"); lastStepStatus(0); updateToVersion('0.9.12'); } if (isFroxlorVersion('0.9.12')) { showUpdateStep("Updating from 0.9.12 to 0.9.13-svn1", false); showUpdateStep("Adding new fields to admin-table"); Database::query("ALTER TABLE `" . TABLE_PANEL_ADMINS . "` ADD `email_autoresponder` int(5) NOT NULL default '0' AFTER `aps_packages_used`;"); Database::query("ALTER TABLE `" . TABLE_PANEL_ADMINS . "` ADD `email_autoresponder_used` int(5) NOT NULL default '0' AFTER `email_autoresponder`;"); lastStepStatus(0); showUpdateStep("Adding new fields to customer-table"); Database::query("ALTER TABLE `" . TABLE_PANEL_CUSTOMERS . "` ADD `email_autoresponder` int(5) NOT NULL default '0' AFTER `perlenabled`;"); Database::query("ALTER TABLE `" . TABLE_PANEL_CUSTOMERS . "` ADD `email_autoresponder_used` int(5) NOT NULL default '0' AFTER `email_autoresponder`;"); lastStepStatus(0); if ((int) Settings::Get('autoresponder.autoresponder_active') == 1) { $update_autoresponder_default = isset($_POST['update_autoresponder_default']) ? intval_ressource($_POST['update_autoresponder_default']) : 0; if (isset($_POST['update_autoresponder_default_ul'])) { $update_autoresponder_default = -1; } } else { $update_autoresponder_default = 0; } showUpdateStep("Setting default amount of autoresponders"); // admin gets unlimited Database::query("UPDATE `" . TABLE_PANEL_ADMINS . "` SET `email_autoresponder`='-1' WHERE `adminid` = '" . (int) $userinfo['adminid'] . "'"); // customers Database::query("UPDATE `" . TABLE_PANEL_CUSTOMERS . "` SET `email_autoresponder`='" . (int) $update_autoresponder_default . "' WHERE `deactivated` = '0'"); lastStepStatus(0); updateToVersion('0.9.13-svn1'); } if (isFroxlorVersion('0.9.13-svn1')) {
$ftps = intval_ressource($_POST['ftps']); } if (isset($_POST['ftps_ul'])) { $ftps = -1; } $tickets = Settings::Get('ticket.enabled') == 1 ? intval_ressource($_POST['tickets']) : 0; if (isset($_POST['tickets_ul']) && Settings::Get('ticket.enabled') == '1') { $tickets = -1; } // gender out of range? [0,2] if ($gender < 0 || $gender > 2) { $gender = 0; } $mysqls = 0; if (isset($_POST['mysqls'])) { $mysqls = intval_ressource($_POST['mysqls']); } if (isset($_POST['mysqls_ul'])) { $mysqls = -1; } $createstdsubdomain = 0; if (isset($_POST['createstdsubdomain'])) { $createstdsubdomain = intval($_POST['createstdsubdomain']); } $deactivated = 0; if (isset($_POST['deactivated'])) { $deactivated = intval($_POST['deactivated']); } $phpenabled = 0; if (isset($_POST['phpenabled'])) { $phpenabled = intval($_POST['phpenabled']);
} $tickets_see_all = 0; if (isset($_POST['tickets_see_all'])) { $tickets_see_all = intval($_POST['tickets_see_all']); } $diskspace = intval($_POST['diskspace']); if (isset($_POST['diskspace_ul'])) { $diskspace = -1; } $traffic = doubleval_ressource($_POST['traffic']); if (isset($_POST['traffic_ul'])) { $traffic = -1; } $diskspace = $diskspace * 1024; $traffic = $traffic * 1024 * 1024; $ipaddress = intval_ressource($_POST['ipaddress']); } if ($name == '') { standard_error(array('stringisempty', 'myname')); } elseif ($email == '') { standard_error(array('stringisempty', 'emailadd')); } elseif (!validateEmail($email)) { standard_error('emailiswrong', $email); } else { if ($password != '') { $password = validatePassword($password); $password = makeCryptPassword($password); } else { $password = $result['password']; } if ($deactivated != '1') {
/** * Function which updates all counters of used ressources in panel_admins and panel_customers * @param bool Set to true to get an array with debug information * @return array Contains debug information if parameter 'returndebuginfo' is set to true * * @author Florian Lippert <*****@*****.**> (2003-2009) * @author Froxlor team <*****@*****.**> (2010-) */ function updateCounters($returndebuginfo = false) { global $db; $returnval = array(); if ($returndebuginfo === true) { $returnval = array('admins' => array(), 'customers' => array()); } $admin_resources = array(); // Customers $customers = $db->query('SELECT * FROM `' . TABLE_PANEL_CUSTOMERS . '` ORDER BY `customerid`'); while ($customer = $db->fetch_array($customers)) { if (!isset($admin_resources[$customer['adminid']])) { $admin_resources[$customer['adminid']] = array(); } if (!isset($admin_resources[$customer['adminid']]['diskspace_used'])) { $admin_resources[$customer['adminid']]['diskspace_used'] = 0; } if ($customer['diskspace'] / 1024 != '-1') { $admin_resources[$customer['adminid']]['diskspace_used'] += intval_ressource($customer['diskspace']); } if (!isset($admin_resources[$customer['adminid']]['traffic_used'])) { $admin_resources[$customer['adminid']]['traffic_used'] = 0; } $admin_resources[$customer['adminid']]['traffic_used'] += $customer['traffic_used']; if (!isset($admin_resources[$customer['adminid']]['mysqls_used'])) { $admin_resources[$customer['adminid']]['mysqls_used'] = 0; } if ($customer['mysqls'] != '-1') { $admin_resources[$customer['adminid']]['mysqls_used'] += intval_ressource($customer['mysqls']); } if (!isset($admin_resources[$customer['adminid']]['ftps_used'])) { $admin_resources[$customer['adminid']]['ftps_used'] = 0; } if ($customer['ftps'] != '-1') { $admin_resources[$customer['adminid']]['ftps_used'] += intval_ressource($customer['ftps']); } if (!isset($admin_resources[$customer['adminid']]['tickets_used'])) { $admin_resources[$customer['adminid']]['tickets_used'] = 0; } if ($customer['tickets'] != '-1') { $admin_resources[$customer['adminid']]['tickets_used'] += intval_ressource($customer['tickets']); } if (!isset($admin_resources[$customer['adminid']]['emails_used'])) { $admin_resources[$customer['adminid']]['emails_used'] = 0; } if ($customer['emails'] != '-1') { $admin_resources[$customer['adminid']]['emails_used'] += intval_ressource($customer['emails']); } if (!isset($admin_resources[$customer['adminid']]['email_accounts_used'])) { $admin_resources[$customer['adminid']]['email_accounts_used'] = 0; } if ($customer['email_accounts'] != '-1') { $admin_resources[$customer['adminid']]['email_accounts_used'] += intval_ressource($customer['email_accounts']); } if (!isset($admin_resources[$customer['adminid']]['email_forwarders_used'])) { $admin_resources[$customer['adminid']]['email_forwarders_used'] = 0; } if ($customer['email_forwarders'] != '-1') { $admin_resources[$customer['adminid']]['email_forwarders_used'] += intval_ressource($customer['email_forwarders']); } if (!isset($admin_resources[$customer['adminid']]['email_quota_used'])) { $admin_resources[$customer['adminid']]['email_quota_used'] = 0; } if ($customer['email_quota'] != '-1') { $admin_resources[$customer['adminid']]['email_quota_used'] += intval_ressource($customer['email_quota']); } if (!isset($admin_resources[$customer['adminid']]['email_autoresponder_used'])) { $admin_resources[$customer['adminid']]['email_autoresponder_used'] = 0; } if ($customer['email_autoresponder'] != '-1') { $admin_resources[$customer['adminid']]['email_autoresponder_used'] += intval_ressource($customer['email_autoresponder']); } if (!isset($admin_resources[$customer['adminid']]['subdomains_used'])) { $admin_resources[$customer['adminid']]['subdomains_used'] = 0; } if ($customer['subdomains'] != '-1') { $admin_resources[$customer['adminid']]['subdomains_used'] += intval_ressource($customer['subdomains']); } if (!isset($admin_resources[$customer['adminid']]['aps_packages_used'])) { $admin_resources[$customer['adminid']]['aps_packages_used'] = 0; } if ($customer['aps_packages'] != '-1') { $admin_resources[$customer['adminid']]['aps_packages_used'] += intval_ressource($customer['aps_packages']); } $customer_mysqls = $db->query_first('SELECT COUNT(*) AS `number_mysqls` FROM `' . TABLE_PANEL_DATABASES . '` WHERE `customerid` = "' . (int) $customer['customerid'] . '"'); $customer['mysqls_used_new'] = (int) $customer_mysqls['number_mysqls']; $customer_emails = $db->query_first('SELECT COUNT(*) AS `number_emails` FROM `' . TABLE_MAIL_VIRTUAL . '` WHERE `customerid` = "' . (int) $customer['customerid'] . '"'); $customer['emails_used_new'] = (int) $customer_emails['number_emails']; $customer_emails_result = $db->query('SELECT `email`, `email_full`, `destination`, `popaccountid` AS `number_email_forwarders` FROM `' . TABLE_MAIL_VIRTUAL . '` WHERE `customerid` = "' . (int) $customer['customerid'] . '" '); $customer_email_forwarders = 0; $customer_email_accounts = 0; while ($customer_emails_row = $db->fetch_array($customer_emails_result)) { if ($customer_emails_row['destination'] != '') { $customer_emails_row['destination'] = explode(' ', makeCorrectDestination($customer_emails_row['destination'])); $customer_email_forwarders += count($customer_emails_row['destination']); if (in_array($customer_emails_row['email_full'], $customer_emails_row['destination'])) { $customer_email_forwarders -= 1; $customer_email_accounts++; } } } $customer['email_accounts_used_new'] = $customer_email_accounts; $customer['email_forwarders_used_new'] = $customer_email_forwarders; $customer_ftps = $db->query_first('SELECT COUNT(*) AS `number_ftps` FROM `' . TABLE_FTP_USERS . '` WHERE `customerid` = "' . (int) $customer['customerid'] . '"'); $customer['ftps_used_new'] = (int) $customer_ftps['number_ftps'] - 1; $customer_tickets = $db->query_first('SELECT COUNT(*) AS `number_tickets` FROM `' . TABLE_PANEL_TICKETS . '` WHERE `answerto` = "0" AND `customerid` = "' . (int) $customer['customerid'] . '"'); $customer['tickets_used_new'] = (int) $customer_tickets['number_tickets']; $customer_subdomains = $db->query_first('SELECT COUNT(*) AS `number_subdomains` FROM `' . TABLE_PANEL_DOMAINS . '` WHERE `customerid` = "' . (int) $customer['customerid'] . '" AND `parentdomainid` <> "0"'); $customer['subdomains_used_new'] = (int) $customer_subdomains['number_subdomains']; $customer_email_quota = $db->query_first('SELECT SUM(`quota`) AS `email_quota` FROM `' . TABLE_MAIL_USERS . '` WHERE `customerid` = "' . (int) $customer['customerid'] . '"'); $customer['email_quota_used_new'] = (int) $customer_email_quota['email_quota']; $customer_email_autoresponder = $db->query_first('SELECT COUNT(*) AS `number_autoresponder` FROM `' . TABLE_MAIL_AUTORESPONDER . '` WHERE `customerid` = "' . (int) $customer['customerid'] . '"'); $customer['email_autoresponder_used_new'] = (int) $customer_email_autoresponder['number_autoresponder']; $customer_aps_packages = $db->query_first('SELECT COUNT(*) AS `number_apspackages` FROM `' . TABLE_APS_INSTANCES . '` WHERE `CustomerID` = "' . (int) $customer['customerid'] . '"'); $customer['aps_packages_used_new'] = (int) $customer_aps_packages['number_apspackages']; $db->query('UPDATE `' . TABLE_PANEL_CUSTOMERS . '` SET `mysqls_used` = "' . (int) $customer['mysqls_used_new'] . '", `emails_used` = "' . (int) $customer['emails_used_new'] . '", `email_accounts_used` = "' . (int) $customer['email_accounts_used_new'] . '", `email_forwarders_used` = "' . (int) $customer['email_forwarders_used_new'] . '", `email_quota_used` = "' . (int) $customer['email_quota_used_new'] . '", `email_autoresponder_used` = "' . (int) $customer['email_autoresponder_used_new'] . '", `ftps_used` = "' . (int) $customer['ftps_used_new'] . '", `tickets_used` = "' . (int) $customer['tickets_used_new'] . '", `subdomains_used` = "' . (int) $customer['subdomains_used_new'] . '", `aps_packages_used` = "' . (int) $customer['aps_packages_used_new'] . '" WHERE `customerid` = "' . (int) $customer['customerid'] . '" '); if ($returndebuginfo === true) { $returnval['customers'][$customer['customerid']] = $customer; } } // Admins $admins = $db->query('SELECT * FROM `' . TABLE_PANEL_ADMINS . '` ORDER BY `adminid`'); while ($admin = $db->fetch_array($admins)) { $admin_customers = $db->query_first('SELECT COUNT(*) AS `number_customers` FROM `' . TABLE_PANEL_CUSTOMERS . '` WHERE `adminid` = "' . (int) $admin['adminid'] . '"'); $admin['customers_used_new'] = $admin_customers['number_customers']; $admin_domains = $db->query_first('SELECT COUNT(*) AS `number_domains` FROM `' . TABLE_PANEL_DOMAINS . '` WHERE `adminid` = "' . (int) $admin['adminid'] . '" AND `isemaildomain` = "1"'); $admin['domains_used_new'] = $admin_domains['number_domains']; if (!isset($admin_resources[$admin['adminid']])) { $admin_resources[$admin['adminid']] = array(); } if (!isset($admin_resources[$admin['adminid']]['diskspace_used'])) { $admin_resources[$admin['adminid']]['diskspace_used'] = 0; } $admin['diskspace_used_new'] = $admin_resources[$admin['adminid']]['diskspace_used']; if (!isset($admin_resources[$admin['adminid']]['traffic_used'])) { $admin_resources[$admin['adminid']]['traffic_used'] = 0; } $admin['traffic_used_new'] = $admin_resources[$admin['adminid']]['traffic_used']; if (!isset($admin_resources[$admin['adminid']]['mysqls_used'])) { $admin_resources[$admin['adminid']]['mysqls_used'] = 0; } $admin['mysqls_used_new'] = $admin_resources[$admin['adminid']]['mysqls_used']; if (!isset($admin_resources[$admin['adminid']]['ftps_used'])) { $admin_resources[$admin['adminid']]['ftps_used'] = 0; } $admin['ftps_used_new'] = $admin_resources[$admin['adminid']]['ftps_used']; if (!isset($admin_resources[$admin['adminid']]['emails_used'])) { $admin_resources[$admin['adminid']]['emails_used'] = 0; } $admin['emails_used_new'] = $admin_resources[$admin['adminid']]['emails_used']; if (!isset($admin_resources[$admin['adminid']]['email_accounts_used'])) { $admin_resources[$admin['adminid']]['email_accounts_used'] = 0; } $admin['email_accounts_used_new'] = $admin_resources[$admin['adminid']]['email_accounts_used']; if (!isset($admin_resources[$admin['adminid']]['tickets_used'])) { $admin_resources[$admin['adminid']]['tickets_used'] = 0; } $admin['tickets_used_new'] = $admin_resources[$admin['adminid']]['tickets_used']; if (!isset($admin_resources[$admin['adminid']]['email_forwarders_used'])) { $admin_resources[$admin['adminid']]['email_forwarders_used'] = 0; } $admin['email_forwarders_used_new'] = $admin_resources[$admin['adminid']]['email_forwarders_used']; if (!isset($admin_resources[$admin['adminid']]['email_quota_used'])) { $admin_resources[$admin['adminid']]['email_quota_used'] = 0; } $admin['email_quota_used_new'] = $admin_resources[$admin['adminid']]['email_quota_used']; if (!isset($admin_resources[$admin['adminid']]['email_autoresponder_used'])) { $admin_resources[$admin['adminid']]['email_autoresponder_used'] = 0; } if (!isset($admin_resources[$admin['adminid']]['email_autoresponder_used'])) { $admin_resources[$admin['adminid']]['email_autoresponder_used'] = 0; } $admin['email_autoresponder_used_new'] = $admin_resources[$admin['adminid']]['email_autoresponder_used']; if (!isset($admin_resources[$admin['adminid']]['subdomains_used'])) { $admin_resources[$admin['adminid']]['subdomains_used'] = 0; } if (!isset($admin_resources[$admin['adminid']]['aps_packages_used'])) { $admin_resources[$admin['adminid']]['aps_packages_used'] = 0; } $admin['subdomains_used_new'] = $admin_resources[$admin['adminid']]['subdomains_used']; if (!isset($admin_resources[$admin['adminid']]['aps_packages_used'])) { $admin_resources[$admin['adminid']]['aps_packages_used'] = 0; } $admin['aps_packages_used_new'] = $admin_resources[$admin['adminid']]['aps_packages_used']; $db->query('UPDATE `' . TABLE_PANEL_ADMINS . '` SET `customers_used` = "' . (int) $admin['customers_used_new'] . '", `domains_used` = "' . (int) $admin['domains_used_new'] . '", `diskspace_used` = "' . (int) $admin['diskspace_used_new'] . '", `mysqls_used` = "' . (int) $admin['mysqls_used_new'] . '", `emails_used` = "' . (int) $admin['emails_used_new'] . '", `email_accounts_used` = "' . (int) $admin['email_accounts_used_new'] . '", `email_forwarders_used` = "' . (int) $admin['email_forwarders_used_new'] . '", `email_quota_used` = "' . (int) $admin['email_quota_used_new'] . '", `email_autoresponder_used` = "' . (int) $admin['email_autoresponder_used_new'] . '", `ftps_used` = "' . (int) $admin['ftps_used_new'] . '", `tickets_used` = "' . (int) $admin['tickets_used_new'] . '", `subdomains_used` = "' . (int) $admin['subdomains_used_new'] . '", `traffic_used` = "' . (int) $admin['traffic_used_new'] . '", `aps_packages_used` = "' . (int) $admin['aps_packages_used_new'] . '" WHERE `adminid` = "' . (int) $admin['adminid'] . '" '); if ($returndebuginfo === true) { $returnval['admins'][$admin['adminid']] = $admin; } } return $returnval; }
} $email_imap = intval_ressource($_POST['email_imap']); $email_pop3 = intval_ressource($_POST['email_pop3']); $ftps = intval_ressource($_POST['ftps']); if (isset($_POST['ftps_ul'])) { $ftps = -1; } $tickets = $settings['ticket']['enabled'] == 1 ? intval_ressource($_POST['tickets']) : 0; if (isset($_POST['tickets_ul']) && $settings['ticket']['enabled'] == '1') { $tickets = -1; } $mysqls = intval_ressource($_POST['mysqls']); if (isset($_POST['mysqls_ul'])) { $mysqls = -1; } $number_of_aps_packages = intval_ressource($_POST['number_of_aps_packages']); if (isset($_POST['number_of_aps_packages_ul'])) { $number_of_aps_packages = -1; } $createstdsubdomain = intval($_POST['createstdsubdomain']); $deactivated = intval($_POST['deactivated']); $phpenabled = intval($_POST['phpenabled']); $diskspace = $diskspace * 1024; $traffic = $traffic * 1024 * 1024; if ($userinfo['edit_billingdata'] == '1' && $settings['billing']['activate_billing'] == '1') { $contract_date = validate($_POST['contract_date'], html_entity_decode($lng['customer']['contract_date']), '/^(19|20)\\d\\d[-](0[1-9]|1[012])[-](0[1-9]|[12][0-9]|3[01])$/', '', array('0000-00-00', '0', '')); $contract_number = validate($_POST['contract_number'], html_entity_decode($lng['customer']['contract_number'])); $calc_tax = intval($_POST['calc_tax']); $term_of_payment = validate($_POST['term_of_payment'], html_entity_decode($lng['customer']['term_of_payment']), '/^[0-9]+$/', '', array(0, '')); $payment_method = intval($_POST['payment_method']); $bankaccount_holder = validate($_POST['bankaccount_holder'], html_entity_decode($lng['customer']['bankaccount_holder']), '/^[^\\0]*$/');
/** * Function which updates all counters of used ressources in panel_admins and panel_customers * @param bool Set to true to get an array with debug information * @return array Contains debug information if parameter 'returndebuginfo' is set to true * * @author Florian Lippert <*****@*****.**> (2003-2009) * @author Froxlor team <*****@*****.**> (2010-) */ function updateCounters($returndebuginfo = false) { global $theme; $returnval = array(); if ($returndebuginfo === true) { $returnval = array('admins' => array(), 'customers' => array()); } $admin_resources = array(); // Customers $customers_stmt = Database::prepare('SELECT * FROM `' . TABLE_PANEL_CUSTOMERS . '` ORDER BY `customerid`'); Database::pexecute($customers_stmt, array()); while ($customer = $customers_stmt->fetch(PDO::FETCH_ASSOC)) { if (!isset($admin_resources[$customer['adminid']])) { $admin_resources[$customer['adminid']] = array(); } if (!isset($admin_resources[$customer['adminid']]['diskspace_used'])) { $admin_resources[$customer['adminid']]['diskspace_used'] = 0; } if ($customer['diskspace'] / 1024 != '-1') { $admin_resources[$customer['adminid']]['diskspace_used'] += intval_ressource($customer['diskspace']); } if (!isset($admin_resources[$customer['adminid']]['traffic_used'])) { $admin_resources[$customer['adminid']]['traffic_used'] = 0; } $admin_resources[$customer['adminid']]['traffic_used'] += $customer['traffic_used']; if (!isset($admin_resources[$customer['adminid']]['mysqls_used'])) { $admin_resources[$customer['adminid']]['mysqls_used'] = 0; } if ($customer['mysqls'] != '-1') { $admin_resources[$customer['adminid']]['mysqls_used'] += intval_ressource($customer['mysqls']); } if (!isset($admin_resources[$customer['adminid']]['ftps_used'])) { $admin_resources[$customer['adminid']]['ftps_used'] = 0; } if ($customer['ftps'] != '-1') { $admin_resources[$customer['adminid']]['ftps_used'] += intval_ressource($customer['ftps']); } if (!isset($admin_resources[$customer['adminid']]['tickets_used'])) { $admin_resources[$customer['adminid']]['tickets_used'] = 0; } if ($customer['tickets'] != '-1') { $admin_resources[$customer['adminid']]['tickets_used'] += intval_ressource($customer['tickets']); } if (!isset($admin_resources[$customer['adminid']]['emails_used'])) { $admin_resources[$customer['adminid']]['emails_used'] = 0; } if ($customer['emails'] != '-1') { $admin_resources[$customer['adminid']]['emails_used'] += intval_ressource($customer['emails']); } if (!isset($admin_resources[$customer['adminid']]['email_accounts_used'])) { $admin_resources[$customer['adminid']]['email_accounts_used'] = 0; } if ($customer['email_accounts'] != '-1') { $admin_resources[$customer['adminid']]['email_accounts_used'] += intval_ressource($customer['email_accounts']); } if (!isset($admin_resources[$customer['adminid']]['email_forwarders_used'])) { $admin_resources[$customer['adminid']]['email_forwarders_used'] = 0; } if ($customer['email_forwarders'] != '-1') { $admin_resources[$customer['adminid']]['email_forwarders_used'] += intval_ressource($customer['email_forwarders']); } if (!isset($admin_resources[$customer['adminid']]['email_quota_used'])) { $admin_resources[$customer['adminid']]['email_quota_used'] = 0; } if ($customer['email_quota'] != '-1') { $admin_resources[$customer['adminid']]['email_quota_used'] += intval_ressource($customer['email_quota']); } if (!isset($admin_resources[$customer['adminid']]['subdomains_used'])) { $admin_resources[$customer['adminid']]['subdomains_used'] = 0; } if ($customer['subdomains'] != '-1') { $admin_resources[$customer['adminid']]['subdomains_used'] += intval_ressource($customer['subdomains']); } $customer_mysqls_stmt = Database::prepare('SELECT COUNT(*) AS `number_mysqls` FROM `' . TABLE_PANEL_DATABASES . '` WHERE `customerid` = :cid'); $customer_mysqls = Database::pexecute_first($customer_mysqls_stmt, array("cid" => $customer['customerid'])); $customer['mysqls_used_new'] = (int) $customer_mysqls['number_mysqls']; $customer_emails_stmt = Database::prepare('SELECT COUNT(*) AS `number_emails` FROM `' . TABLE_MAIL_VIRTUAL . '` WHERE `customerid` = :cid'); $customer_emails = Database::pexecute_first($customer_emails_stmt, array("cid" => $customer['customerid'])); $customer['emails_used_new'] = (int) $customer_emails['number_emails']; $customer_emails_result_stmt = Database::prepare('SELECT `email`, `email_full`, `destination`, `popaccountid` AS `number_email_forwarders` FROM `' . TABLE_MAIL_VIRTUAL . '` WHERE `customerid` = :cid'); Database::pexecute($customer_emails_result_stmt, array("cid" => $customer['customerid'])); $customer_email_forwarders = 0; $customer_email_accounts = 0; while ($customer_emails_row = $customer_emails_result_stmt->fetch(PDO::FETCH_ASSOC)) { if ($customer_emails_row['destination'] != '') { $customer_emails_row['destination'] = explode(' ', makeCorrectDestination($customer_emails_row['destination'])); $customer_email_forwarders += count($customer_emails_row['destination']); if (in_array($customer_emails_row['email_full'], $customer_emails_row['destination'])) { $customer_email_forwarders -= 1; $customer_email_accounts++; } } } $customer['email_accounts_used_new'] = $customer_email_accounts; $customer['email_forwarders_used_new'] = $customer_email_forwarders; $customer_ftps_stmt = Database::prepare('SELECT COUNT(*) AS `number_ftps` FROM `' . TABLE_FTP_USERS . '` WHERE `customerid` = :cid'); $customer_ftps = Database::pexecute_first($customer_ftps_stmt, array("cid" => $customer['customerid'])); $customer['ftps_used_new'] = (int) $customer_ftps['number_ftps'] - 1; $customer_tickets_stmt = Database::prepare('SELECT COUNT(*) AS `number_tickets` FROM `' . TABLE_PANEL_TICKETS . '` WHERE `answerto` = "0" AND `customerid` = :cid'); $customer_tickets = Database::pexecute_first($customer_tickets_stmt, array("cid" => $customer['customerid'])); $customer['tickets_used_new'] = (int) $customer_tickets['number_tickets']; $customer_subdomains_stmt = Database::prepare('SELECT COUNT(*) AS `number_subdomains` FROM `' . TABLE_PANEL_DOMAINS . '` WHERE `customerid` = :cid AND `parentdomainid` <> "0"'); $customer_subdomains = Database::pexecute_first($customer_subdomains_stmt, array("cid" => $customer['customerid'])); $customer['subdomains_used_new'] = (int) $customer_subdomains['number_subdomains']; $customer_email_quota_stmt = Database::prepare('SELECT SUM(`quota`) AS `email_quota` FROM `' . TABLE_MAIL_USERS . '` WHERE `customerid` = :cid'); $customer_email_quota = Database::pexecute_first($customer_email_quota_stmt, array("cid" => $customer['customerid'])); $customer['email_quota_used_new'] = (int) $customer_email_quota['email_quota']; $stmt = Database::prepare('UPDATE `' . TABLE_PANEL_CUSTOMERS . '` SET `mysqls_used` = :mysqls_used, `emails_used` = :emails_used, `email_accounts_used` = :email_accounts_used, `email_forwarders_used` = :email_forwarders_used, `email_quota_used` = :email_quota_used, `ftps_used` = :ftps_used, `tickets_used` = :tickets_used, `subdomains_used` = :subdomains_used WHERE `customerid` = :cid'); $params = array("mysqls_used" => $customer['mysqls_used_new'], "emails_used" => $customer['emails_used_new'], "email_accounts_used" => $customer['email_accounts_used_new'], "email_forwarders_used" => $customer['email_forwarders_used_new'], "email_quota_used" => $customer['email_quota_used_new'], "ftps_used" => $customer['ftps_used_new'], "tickets_used" => $customer['tickets_used_new'], "subdomains_used" => $customer['subdomains_used_new'], "cid" => $customer['customerid']); Database::pexecute($stmt, $params); if ($returndebuginfo === true) { $returnval['customers'][$customer['customerid']] = $customer; } } // Admins $admins_stmt = Database::prepare('SELECT * FROM `' . TABLE_PANEL_ADMINS . '` ORDER BY `adminid`'); Database::pexecute($admins_stmt, array()); while ($admin = $admins_stmt->fetch(PDO::FETCH_ASSOC)) { $admin_customers_stmt = Database::prepare('SELECT COUNT(*) AS `number_customers` FROM `' . TABLE_PANEL_CUSTOMERS . '` WHERE `adminid` = :aid'); $admin_customers = Database::pexecute_first($admin_customers_stmt, array("aid" => $admin['adminid'])); $admin['customers_used_new'] = $admin_customers['number_customers']; $admin_domains_stmt = Database::prepare('SELECT COUNT(*) AS `number_domains` FROM `' . TABLE_PANEL_DOMAINS . '` WHERE `adminid` = :aid AND `isemaildomain` = "1"'); $admin_domains = Database::pexecute_first($admin_domains_stmt, array("aid" => $admin['adminid'])); $admin['domains_used_new'] = $admin_domains['number_domains']; if (!isset($admin_resources[$admin['adminid']])) { $admin_resources[$admin['adminid']] = array(); } if (!isset($admin_resources[$admin['adminid']]['diskspace_used'])) { $admin_resources[$admin['adminid']]['diskspace_used'] = 0; } $admin['diskspace_used_new'] = $admin_resources[$admin['adminid']]['diskspace_used']; if (!isset($admin_resources[$admin['adminid']]['traffic_used'])) { $admin_resources[$admin['adminid']]['traffic_used'] = 0; } $admin['traffic_used_new'] = $admin_resources[$admin['adminid']]['traffic_used']; if (!isset($admin_resources[$admin['adminid']]['mysqls_used'])) { $admin_resources[$admin['adminid']]['mysqls_used'] = 0; } $admin['mysqls_used_new'] = $admin_resources[$admin['adminid']]['mysqls_used']; if (!isset($admin_resources[$admin['adminid']]['ftps_used'])) { $admin_resources[$admin['adminid']]['ftps_used'] = 0; } $admin['ftps_used_new'] = $admin_resources[$admin['adminid']]['ftps_used']; if (!isset($admin_resources[$admin['adminid']]['emails_used'])) { $admin_resources[$admin['adminid']]['emails_used'] = 0; } $admin['emails_used_new'] = $admin_resources[$admin['adminid']]['emails_used']; if (!isset($admin_resources[$admin['adminid']]['email_accounts_used'])) { $admin_resources[$admin['adminid']]['email_accounts_used'] = 0; } $admin['email_accounts_used_new'] = $admin_resources[$admin['adminid']]['email_accounts_used']; if (!isset($admin_resources[$admin['adminid']]['tickets_used'])) { $admin_resources[$admin['adminid']]['tickets_used'] = 0; } $admin['tickets_used_new'] = $admin_resources[$admin['adminid']]['tickets_used']; if (!isset($admin_resources[$admin['adminid']]['email_forwarders_used'])) { $admin_resources[$admin['adminid']]['email_forwarders_used'] = 0; } $admin['email_forwarders_used_new'] = $admin_resources[$admin['adminid']]['email_forwarders_used']; if (!isset($admin_resources[$admin['adminid']]['email_quota_used'])) { $admin_resources[$admin['adminid']]['email_quota_used'] = 0; } $admin['email_quota_used_new'] = $admin_resources[$admin['adminid']]['email_quota_used']; if (!isset($admin_resources[$admin['adminid']]['subdomains_used'])) { $admin_resources[$admin['adminid']]['subdomains_used'] = 0; } $admin['subdomains_used_new'] = $admin_resources[$admin['adminid']]['subdomains_used']; $stmt = Database::prepare('UPDATE `' . TABLE_PANEL_ADMINS . '` SET `customers_used` = :customers_used, `domains_used` = :domains_used, `diskspace_used` = :diskspace_used, `mysqls_used` = :mysqls_used, `emails_used` = :emails_used, `email_accounts_used` = :email_accounts_used, `email_forwarders_used` = :email_forwarders_used, `email_quota_used` = :email_quota_used, `ftps_used` = :ftps_used, `tickets_used` = :tickets_used, `subdomains_used` = :subdomains_used, `traffic_used` = :traffic_used WHERE `adminid` = :aid'); $params = array("customers_used" => $admin['customers_used_new'], "domains_used" => $admin['domains_used_new'], "diskspace_used" => $admin['diskspace_used_new'], "mysqls_used" => $admin['mysqls_used_new'], "emails_used" => $admin['emails_used_new'], "email_accounts_used" => $admin['email_accounts_used_new'], "email_forwarders_used" => $admin['email_forwarders_used_new'], "email_quota_used" => $admin['email_quota_used_new'], "ftps_used" => $admin['ftps_used_new'], "tickets_used" => $admin['tickets_used_new'], "subdomains_used" => $admin['subdomains_used_new'], "traffic_used" => $admin['traffic_used_new'], "aid" => $admin['adminid']); Database::pexecute($stmt, $params); if ($returndebuginfo === true) { $returnval['admins'][$admin['adminid']] = $admin; } } return $returnval; }