function substract_from_reseller_props($reseller_id, $domain_id) { // function update reseller props bevore deleting account list($rdmn_current, $rdmn_max, $rsub_current, $rsub_max, $rals_current, $rals_max, $rmail_current, $rmail_max, $rftp_current, $rftp_max, $rsql_db_current, $rsql_db_max, $rsql_user_current, $rsql_user_max, $rtraff_current, $rtraff_max, $rdisk_current, $rdisk_max) = generate_reseller_props($reseller_id); list($sub_current, $sub_max, $als_current, $als_max, $mail_current, $mail_max, $ftp_current, $ftp_max, $sql_db_current, $sql_db_max, $sql_user_current, $sql_user_max, $traff_max, $disk_max) = generate_user_props($domain_id); $rdmn_current -= 1; if ($sub_max != -1) { $rsub_current -= $sub_max; } if ($als_max != -1) { $rals_current -= $als_max; } $rmail_current -= $mail_max; $rftp_current -= $ftp_max; if ($sql_db_max != -1) { $rsql_db_current -= $sql_db_max; } if ($sql_user_max != -1) { $rsql_user_current -= $sql_user_max; } $rtraff_current -= $traff_max; $rdisk_current -= $disk_max; $rprops = "{$rdmn_current};{$rdmn_max};"; $rprops .= "{$rsub_current};{$rsub_max};"; $rprops .= "{$rals_current};{$rals_max};"; $rprops .= "{$rmail_current};{$rmail_max};"; $rprops .= "{$rftp_current};{$rftp_max};"; $rprops .= "{$rsql_db_current};{$rsql_db_max};"; $rprops .= "{$rsql_user_current};{$rsql_user_max};"; $rprops .= "{$rtraff_current};{$rtraff_max};"; $rprops .= "{$rdisk_current};{$rdisk_max};"; update_reseller_props($reseller_id, $rprops); }
function manage_reseller_limits($dest_reseller, $src_reseller, $users, &$err) { $sql = EasySCP_Registry::get('Db'); list($dest_dmn_current, $dest_dmn_max, $dest_sub_current, $dest_sub_max, $dest_als_current, $dest_als_max, $dest_mail_current, $dest_mail_max, $dest_ftp_current, $dest_ftp_max, $dest_sql_db_current, $dest_sql_db_max, $dest_sql_user_current, $dest_sql_user_max, $dest_traff_current, $dest_traff_max, $dest_disk_current, $dest_disk_max) = generate_reseller_props($dest_reseller); list($src_dmn_current, $src_dmn_max, $src_sub_current, $src_sub_max, $src_als_current, $src_als_max, $src_mail_current, $src_mail_max, $src_ftp_current, $src_ftp_max, $src_sql_db_current, $src_sql_db_max, $src_sql_user_current, $src_sql_user_max, $src_traff_current, $src_traff_max, $src_disk_current, $src_disk_max) = generate_reseller_props($src_reseller); $users_array = explode(";", $users); for ($i = 0, $cnt_users_array = count($users_array) - 1; $i < $cnt_users_array; $i++) { $query = "\n\t\t\tSELECT\n\t\t\t\t`domain_id`, `domain_name`\n\t\t\tFROM\n\t\t\t\t`domain`\n\t\t\tWHERE\n\t\t\t\t`domain_admin_id` = ?\n\t\t"; $rs = exec_query($sql, $query, $users_array[$i]); $domain_name = $rs->fields['domain_name']; $domain_id = $rs->fields['domain_id']; list(, $sub_max, , $als_max, , $mail_max, , $ftp_max, , $sql_db_max, , $sql_user_max, $traff_max, $disk_max) = generate_user_props($domain_id); calculate_reseller_dvals($dest_dmn_current, $dest_dmn_max, $src_dmn_current, $src_dmn_max, 1, $err, 'Domain', $domain_name); if ($err == '_off_') { calculate_reseller_dvals($dest_sub_current, $dest_sub_max, $src_sub_current, $src_sub_max, $sub_max, $err, 'Subdomain', $domain_name); calculate_reseller_dvals($dest_als_current, $dest_als_max, $src_als_current, $src_als_max, $als_max, $err, 'Alias', $domain_name); calculate_reseller_dvals($dest_mail_current, $dest_mail_max, $src_mail_current, $src_mail_max, $mail_max, $err, 'Mail', $domain_name); calculate_reseller_dvals($dest_ftp_current, $dest_ftp_max, $src_ftp_current, $src_ftp_max, $ftp_max, $err, 'FTP', $domain_name); calculate_reseller_dvals($dest_sql_db_current, $dest_sql_db_max, $src_sql_db_current, $src_sql_db_max, $sql_db_max, $err, 'SQL Database', $domain_name); calculate_reseller_dvals($dest_sql_user_current, $dest_sql_user_max, $src_sql_user_current, $src_sql_user_max, $sql_user_max, $err, 'SQL User', $domain_name); calculate_reseller_dvals($dest_traff_current, $dest_traff_max, $src_traff_current, $src_traff_max, $traff_max, $err, 'Traffic', $domain_name); calculate_reseller_dvals($dest_disk_current, $dest_disk_max, $src_disk_current, $src_disk_max, $disk_max, $err, 'Disk', $domain_name); } if ($err != '_off_') { return false; } } // Let's Make Necessary Updates; $src_reseller_props = "{$src_dmn_current};{$src_dmn_max};"; $src_reseller_props .= "{$src_sub_current};{$src_sub_max};"; $src_reseller_props .= "{$src_als_current};{$src_als_max};"; $src_reseller_props .= "{$src_mail_current};{$src_mail_max};"; $src_reseller_props .= "{$src_ftp_current};{$src_ftp_max};"; $src_reseller_props .= "{$src_sql_db_current};{$src_sql_db_max};"; $src_reseller_props .= "{$src_sql_user_current};{$src_sql_user_max};"; $src_reseller_props .= "{$src_traff_current};{$src_traff_max};"; $src_reseller_props .= "{$src_disk_current};{$src_disk_max};"; update_reseller_props($src_reseller, $src_reseller_props); $dest_reseller_props = "{$dest_dmn_current};{$dest_dmn_max};"; $dest_reseller_props .= "{$dest_sub_current};{$dest_sub_max};"; $dest_reseller_props .= "{$dest_als_current};{$dest_als_max};"; $dest_reseller_props .= "{$dest_mail_current};{$dest_mail_max};"; $dest_reseller_props .= "{$dest_ftp_current};{$dest_ftp_max};"; $dest_reseller_props .= "{$dest_sql_db_current};{$dest_sql_db_max};"; $dest_reseller_props .= "{$dest_sql_user_current};{$dest_sql_user_max};"; $dest_reseller_props .= "{$dest_traff_current};{$dest_traff_max};"; $dest_reseller_props .= "{$dest_disk_current};{$dest_disk_max};"; update_reseller_props($dest_reseller, $dest_reseller_props); for ($i = 0, $cnt_users_array = count($users_array) - 1; $i < $cnt_users_array; $i++) { $query = "UPDATE `admin` SET `created_by` = ? WHERE `admin_id` = ?"; exec_query($sql, $query, array($dest_reseller, $users_array[$i])); $query = "UPDATE `domain` SET `domain_created_id` = ? WHERE `domain_admin_id` = ?"; exec_query($sql, $query, array($dest_reseller, $users_array[$i])); } return true; }
function check_reseller_data($reseller_id, $rip_lst, $reseller_ips) { $reseller_max_domain_cnt = $_POST['nreseller_max_domain_cnt']; $reseller_max_subdomain_cnt = $_POST['nreseller_max_subdomain_cnt']; $reseller_max_alias_cnt = $_POST['nreseller_max_alias_cnt']; $reseller_max_mail_cnt = $_POST['nreseller_max_mail_cnt']; $reseller_max_ftp_cnt = $_POST['nreseller_max_ftp_cnt']; $reseller_max_sql_db_cnt = $_POST['nreseller_max_sql_db_cnt']; $reseller_max_sql_user_cnt = $_POST['nreseller_max_sql_user_cnt']; $reseller_max_traffic = $_POST['nreseller_max_traffic']; $reseller_max_disk = $_POST['nreseller_max_disk']; list($udmn_current, $udmn_max, $udmn_uf, $usub_current, $usub_max, $usub_uf, $uals_current, $uals_max, $uals_uf, $umail_current, $umail_max, $umail_uf, $uftp_current, $uftp_max, $uftp_uf, $usql_db_current, $usql_db_max, $usql_db_uf, $usql_user_current, $usql_user_max, $usql_user_uf, $utraff_current, $utraff_max, $utraff_uf, $udisk_current, $udisk_max, $udisk_uf) = generate_reseller_users_props($reseller_id); list($rdmn_current, $rdmn_max, $rsub_current, $rsub_max, $rals_current, $rals_max, $rmail_current, $rmail_max, $rftp_current, $rftp_max, $rsql_db_current, $rsql_db_max, $rsql_user_current, $rsql_user_max, $rtraff_current, $rtraff_max, $rdisk_current, $rdisk_max) = generate_reseller_props($reseller_id); $err = '_off_'; calculate_new_reseller_vals($reseller_max_domain_cnt, $rdmn_current, $rdmn_max, $udmn_current, $rdmn_current, $udmn_uf, $err, tr('Domain')); if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_subdomain_cnt, $rsub_current, $rsub_max, $usub_current, $rsub_current, $usub_uf, $err, tr('Subdomain')); } if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_alias_cnt, $rals_current, $rals_max, $uals_current, $uals_max, $uals_uf, $err, tr('Alias')); } if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_mail_cnt, $rmail_current, $rmail_max, $umail_current, $umail_max, $umail_uf, $err, tr('Mail')); } if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_ftp_cnt, $rftp_current, $rftp_max, $uftp_current, $uftp_max, $uftp_uf, $err, tr('FTP')); } if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_sql_db_cnt, $rsql_db_current, $rsql_db_max, $usql_db_current, $usql_db_max, $usql_db_uf, $err, tr('SQL Database')); } if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_sql_user_cnt, $rsql_user_current, $rsql_user_max, $usql_user_current, $usql_user_max, $usql_user_uf, $err, tr('SQL User')); } if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_traffic, $rtraff_current, $rtraff_max, $utraff_current / 1024 / 1024, $utraff_max, $utraff_uf, $err, tr('Traffic')); } if ($err == '_off_') { calculate_new_reseller_vals($reseller_max_disk, $rdisk_current, $rdisk_max, $udisk_current / 1024 / 1024, $udisk_max, $udisk_uf, $err, tr('Disk')); // ($data, $r, &$rmax, $u, $umax, $uf, &$err, $obj) } if ($err == '_off_') { check_user_ip_data($reseller_id, $rip_lst, $reseller_ips, $err); } if ($err != '_off_') { set_page_message($err); return false; } return true; }
function generate_reseller_entry(&$tpl, $reseller_id, $reseller_name, $row) { global $crnt_month, $crnt_year; list($rdmn_current, $rdmn_max, $rsub_current, $rsub_max, $rals_current, $rals_max, $rmail_current, $rmail_max, $rftp_current, $rftp_max, $rsql_db_current, $rsql_db_max, $rsql_user_current, $rsql_user_max, $rtraff_current, $rtraff_max, $rdisk_current, $rdisk_max) = generate_reseller_props($reseller_id); list($udmn_current, $udmn_max, $udmn_uf, $usub_current, $usub_max, $usub_uf, $uals_current, $uals_max, $uals_uf, $umail_current, $umail_max, $umail_uf, $uftp_current, $uftp_max, $uftp_uf, $usql_db_current, $usql_db_max, $usql_db_uf, $usql_user_current, $usql_user_max, $usql_user_uf, $utraff_current, $utraff_max, $utraff_uf, $udisk_current, $udisk_max, $udisk_uf) = generate_reseller_users_props($reseller_id); $rtraff_max = $rtraff_max * 1024 * 1024; $rtraff_current = $rtraff_current * 1024 * 1024; $rdisk_max = $rdisk_max * 1024 * 1024; $rdisk_current = $rdisk_current * 1024 * 1024; $utraff_max = $utraff_max * 1024 * 1024; $udisk_max = $udisk_max * 1024 * 1024; $traff_percent = calc_bar_value($utraff_current, $rtraff_max, 400); list($traff_percent, $traff_red, $traff_green) = make_usage_vals($utraff_current, $rtraff_max); list($disk_percent, $disk_red, $disk_green) = make_usage_vals($udisk_current, $rdisk_max); $traff_show_percent = $traff_percent; $disk_show_percent = $disk_percent; if ($traff_percent > 100) { $traff_percent = 100; } if ($disk_percent > 100) { $disk_percent = 100; } if ($row % 2 == 0) { $tpl->assign(array('ITEM_CLASS' => 'content')); } else { $tpl->assign(array('ITEM_CLASS' => 'content2')); } $tpl->assign(array('RESELLER_NAME' => $reseller_name, 'RESELLER_ID' => $reseller_id, 'MONTH' => $crnt_month, 'YEAR' => $crnt_year, 'TRAFF_SHOW_PERCENT' => $traff_show_percent, 'TRAFF_PERCENT' => $traff_percent, 'TRAFF_USED' => make_hr($utraff_current), 'TRAFF_CURRENT' => make_hr($rtraff_current), 'TRAFF_MAX' => $rtraff_max ? make_hr($rtraff_max) : tr('unlimited'), 'DISK_SHOW_PERCENT' => $disk_show_percent, 'DISK_PERCENT' => $disk_percent, 'DISK_USED' => make_hr($udisk_current), 'DISK_CURRENT' => make_hr($rdisk_current), 'DISK_MAX' => $rdisk_max ? make_hr($rdisk_max) : tr('unlimited'), 'DMN_USED' => $udmn_current, 'DMN_CURRENT' => $rdmn_current, 'DMN_MAX' => $rdmn_max ? $rdmn_max : tr('unlimited'), 'SUB_USED' => $usub_current, 'SUB_CURRENT' => $rsub_current, 'SUB_MAX' => $rsub_max ? $rsub_max : tr('unlimited'), 'ALS_USED' => $uals_current, 'ALS_CURRENT' => $rals_current, 'ALS_MAX' => $rals_max ? $rals_max : tr('unlimited'), 'MAIL_USED' => $umail_current, 'MAIL_CURRENT' => $rmail_current, 'MAIL_MAX' => $rmail_max ? $rmail_max : tr('unlimited'), 'FTP_USED' => $uftp_current, 'FTP_CURRENT' => $rftp_current, 'FTP_MAX' => $rftp_max ? $rftp_max : tr('unlimited'), 'SQL_DB_USED' => $usql_db_current, 'SQL_DB_CURRENT' => $rsql_db_current, 'SQL_DB_MAX' => $rsql_db_max ? $rsql_db_max : tr('unlimited'), 'TR_OF' => tr('of'), 'SQL_USER_USED' => $usql_user_current, 'SQL_USER_CURRENT' => $rsql_user_current, 'SQL_USER_MAX' => $rsql_user_max ? $rsql_user_max : tr('unlimited'))); $tpl->parse('RESELLER_ENTRY', '.reseller_entry'); }
/** * Check reseller data * * @param array &$errFields rerefence to the error indicators of input fields * @return boolean TRUE if all data are valid, FALSE otherwise */ function check_data(&$errFields) { $cfg = EasySCP_Registry::get('Config'); // Get needed data $rdata =& get_data(); /** * Check for new password */ if (!empty($_POST['pass0']) || !empty($_POST['pass1'])) { if (!chk_password($_POST['pass0'])) { if ($cfg->PASSWD_STRONG) { set_page_message(sprintf(tr('The password must be at least %s chars long and contain letters and numbers to be valid.'), $cfg->PASSWD_CHARS), 'warning'); } else { set_page_message(sprintf(tr('Password data is shorter than %s signs or includes not permitted signs!'), $cfg->PASSWD_CHARS), 'warning'); } $errFields[] = 'PWD_ERR'; } if ($_POST['pass0'] != $_POST['pass1']) { set_page_message(tr('Entered passwords do not match!'), 'warning'); $errFields[] = 'PWD_ERR'; $errFields[] = 'PWDR_ERR'; } } /** * Check for mail address */ if (!chk_email($rdata['email'])) { set_page_message(tr('Incorrect email syntax!'), 'warning'); $errFields[] = 'EMAIL_ERR'; } list($udmn_current, , $udmn_uf, $usub_current, , $usub_uf, $uals_current, , $uals_uf, $umail_current, , $umail_uf, $uftp_current, , $uftp_uf, $usql_db_current, , $usql_db_uf, $usql_user_current, , $usql_user_uf, $utraff_current, , $utraff_uf, $udisk_current, , $udisk_uf) = generate_reseller_users_props($rdata['edit_id']); list($rdmn_current, , $rsub_current, , $rals_current, , $rmail_current, , $rftp_current, , $rsql_db_current, , $rsql_user_current, , $rtraff_current, , $rdisk_current, ) = generate_reseller_props($rdata['edit_id']); /** * Check for new domains limit */ if (easyscp_limit_check($rdata['max_dmn_cnt'], null)) { $rs = _check_new_limit($rdata['max_dmn_cnt'], $rdmn_current, $udmn_current, $udmn_uf, tr('Domains')); } else { set_page_message(tr('Incorrect domains limit!'), 'warning'); $rs = false; } if (!$rs) { $errFields[] = 'DMN_ERR'; } /** * Check for new subdomains limit */ if (easyscp_limit_check($rdata['max_sub_cnt'])) { $rs = _check_new_limit($rdata['max_sub_cnt'], $rsub_current, $usub_current, $usub_uf, tr('Subdomains')); } else { set_page_message(tr('Incorrect subdomains limit!'), 'warning'); $rs = false; } if (!$rs) { $errFields[] = 'SUB_ERR'; } /** * Check for new domain alias limit */ if (easyscp_limit_check($rdata['max_als_cnt'])) { $rs = _check_new_limit($rdata['max_als_cnt'], $rals_current, $uals_current, $uals_uf, tr('Aliases')); } else { set_page_message(tr('Incorrect aliases limit!'), 'warning'); $rs = false; } if (!$rs) { $errFields[] = 'ALS_ERR'; } /** * Check for new mail accounts limit */ if (easyscp_limit_check($rdata['max_mail_cnt'])) { $rs = _check_new_limit($rdata['max_mail_cnt'], $rmail_current, $umail_current, $umail_uf, tr('Mail')); } else { set_page_message(tr('Incorrect mail accounts limit!'), 'warning'); $rs = false; } if (!$rs) { $errFields[] = 'MAIL_ERR'; } /** * Check for new Ftp accounts limit */ if (easyscp_limit_check($rdata['max_ftp_cnt'])) { $rs = _check_new_limit($rdata['max_ftp_cnt'], $rftp_current, $uftp_current, $uftp_uf, tr('FTP')); } else { set_page_message(tr('Incorrect FTP accounts limit!'), 'warning'); $rs = false; } if (!$rs) { $errFields[] = 'FTP_ERR'; } /** * Check for new Sql databases limit */ if (!($rs = easyscp_limit_check($rdata['max_sql_db_cnt']))) { set_page_message(tr('Incorrect SQL databases limit!'), 'warning'); } else { if ($rdata['max_sql_db_cnt'] == -1 && $rdata['max_sql_user_cnt'] != -1) { set_page_message(tr('SQL databases limit is <em>disabled</em> but SQL users limit not!'), 'warning'); $rs = false; } else { $rs = _check_new_limit($rdata['max_sql_db_cnt'], $rsql_db_current, $usql_db_current, $usql_db_uf, tr('SQL Databases')); } } if (!$rs) { $errFields[] = 'SQLD_ERR'; } /** * Check for new Sql users limit */ if (!($rs = easyscp_limit_check($rdata['max_sql_user_cnt']))) { set_page_message(tr('Incorrect SQL users limit!'), 'warning'); } else { if ($rdata['max_sql_db_cnt'] != -1 && $rdata['max_sql_user_cnt'] == -1) { set_page_message(tr('SQL users limit is <em>disabled</em> but SQL databases limit not!'), 'warning'); $rs = false; } else { $rs = _check_new_limit($rdata['max_sql_user_cnt'], $rsql_user_current, $usql_user_current, $usql_user_uf, tr('SQL Users')); } } if (!$rs) { $errFields[] = 'SQLU_ERR'; } /** * Check for new traffic limit */ if (easyscp_limit_check($rdata['max_traff_amnt'], null)) { $rs = _check_new_limit($rdata['max_traff_amnt'], $rtraff_current, $utraff_current / 1024 / 1024, $utraff_uf, tr('Web Traffic')); } else { set_page_message(tr('Incorrect traffic limit!'), 'warning'); $rs = false; } if (!$rs) { $errFields[] = 'TRF_ERR'; } /** * Check for new diskspace limit */ if (easyscp_limit_check($rdata['max_disk_amnt'], null)) { $rs = _check_new_limit($rdata['max_disk_amnt'], $rdisk_current, $udisk_current / 1024 / 1024, $udisk_uf, tr('Disk storage')); } else { set_page_message(tr('Incorrect disk quota limit!'), 'warning'); $rs = false; } if (!$rs) { $errFields[] = 'DISK_ERR'; } /** * Check for IP adresses */ if ($rdata['reseller_ips'] == '') { set_page_message(tr('You must assign at least one IP number for a reseller!'), 'warning'); } check_user_ip_data($rdata['edit_id'], $rdata['rip_lst'], $rdata['reseller_ips']); }
/** * @param EasySCP_TemplateEngine $tpl * @param int $reseller_id * @param string $reseller_name * @param int $row * @return void */ function generate_reseller_entry($tpl, $reseller_id, $reseller_name, $row) { global $crnt_month, $crnt_year; list($rdmn_current, $rdmn_max, $rsub_current, $rsub_max, $rals_current, $rals_max, $rmail_current, $rmail_max, $rftp_current, $rftp_max, $rsql_db_current, $rsql_db_max, $rsql_user_current, $rsql_user_max, $rtraff_current, $rtraff_max, $rdisk_current, $rdisk_max) = generate_reseller_props($reseller_id); list($udmn_current, , , $usub_current, , , $uals_current, , , $umail_current, , , $uftp_current, , , $usql_db_current, , , $usql_user_current, , , $utraff_current, , , $udisk_current, , ) = generate_reseller_users_props($reseller_id); $rtraff_max = $rtraff_max * 1024 * 1024; $rtraff_current = $rtraff_current * 1024 * 1024; $rdisk_max = $rdisk_max * 1024 * 1024; $rdisk_current = $rdisk_current * 1024 * 1024; $traff_show_percent = calc_bar_value($utraff_current, $rtraff_max, 400); $disk_show_percent = calc_bar_value($udisk_current, $rdisk_max, 400); if ($rtraff_max > 0) { $traff_percent = $utraff_current / $rtraff_max * 100 < 99.7 ? $utraff_current / $rtraff_max * 100 : 99.7; } else { $traff_percent = 0; } if ($rdisk_max > 0) { $disk_percent = $udisk_current / $rdisk_max * 100 < 99.7 ? $udisk_current / $rdisk_max * 100 : 99.7; } else { $disk_percent = 0; } $tpl->append(array('RESELLER_NAME' => tohtml($reseller_name), 'RESELLER_ID' => $reseller_id, 'MONTH' => $crnt_month, 'YEAR' => $crnt_year, 'TRAFF_SHOW_PERCENT' => $traff_show_percent, 'TRAFF_PERCENT' => $traff_percent, 'TRAFF_MSG' => $rtraff_max ? tr('%1$s / %2$s <br/>of<br/> <strong>%3$s</strong>', sizeit($utraff_current), sizeit($rtraff_current), sizeit($rtraff_max)) : tr('%1$s / %2$s <br/>of<br/> <strong>unlimited</strong>', sizeit($utraff_current), sizeit($rtraff_current)), 'DISK_SHOW_PERCENT' => $disk_show_percent, 'DISK_PERCENT' => $disk_percent, 'DISK_MSG' => $rdisk_max ? tr('%1$s / %2$s <br/>of<br/> <strong>%3$s</strong>', sizeit($udisk_current), sizeit($rdisk_current), sizeit($rdisk_max)) : tr('%1$s / %2$s <br/>of<br/> <strong>unlimited</strong>', sizeit($udisk_current), sizeit($rdisk_current)), 'DMN_MSG' => $rdmn_max ? tr('%1$d / %2$d <br/>of<br/> <strong>%3$d</strong>', $udmn_current, $rdmn_current, $rdmn_max) : tr('%1$d / %2$d <br/>of<br/> <strong>unlimited</strong>', $udmn_current, $rdmn_current), 'SUB_MSG' => $rsub_max > 0 ? tr('%1$d / %2$d <br/>of<br/> <strong>%3$d</strong>', $usub_current, $rsub_current, $rsub_max) : ($rsub_max === "-1" ? tr('<strong>disabled</strong>') : tr('%1$d / %2$d <br/>of<br/> <strong>unlimited</strong>', $usub_current, $rsub_current)), 'ALS_MSG' => $rals_max > 0 ? tr('%1$d / %2$d <br/>of<br/> <strong>%3$d</strong>', $uals_current, $rals_current, $rals_max) : ($rals_max === "-1" ? tr('<strong>disabled</strong>') : tr('%1$d / %2$d <br/>of<br/> <strong>unlimited</strong>', $uals_current, $rals_current)), 'MAIL_MSG' => $rmail_max > 0 ? tr('%1$d / %2$d <br/>of<br/> <strong>%3$d</strong>', $umail_current, $rmail_current, $rmail_max) : ($rmail_max === "-1" ? tr('<strong>disabled</strong>') : tr('%1$d / %2$d <br/>of<br/> <strong>unlimited</strong>', $umail_current, $rmail_current)), 'FTP_MSG' => $rftp_max > 0 ? tr('%1$d / %2$d <br/>of<br/> <strong>%3$d</strong>', $uftp_current, $rftp_current, $rftp_max) : ($rftp_max === "-1" ? tr('<strong>disabled</strong>') : tr('%1$d / %2$d <br/>of<br/> <strong>unlimited</strong>', $uftp_current, $rftp_current)), 'SQL_DB_MSG' => $rsql_db_max > 0 ? tr('%1$d / %2$d <br/>of<br/> <strong>%3$d</strong>', $usql_db_current, $rsql_db_current, $rsql_db_max) : ($rsql_db_max === "-1" ? tr('<strong>disabled</strong>') : tr('%1$d / %2$d <br/>of<br/> <strong>unlimited</strong>', $usql_db_current, $rsql_db_current)), 'SQL_USER_MSG' => $rsql_user_max > 0 ? tr('%1$d / %2$d <br/>of<br/> <strong>%3$d</strong>', $usql_user_current, $rsql_user_current, $rsql_user_max) : ($rsql_user_max === "-1" ? tr('<strong>disabled</strong>') : tr('%1$d / %2$d <br/>of<br/> <strong>unlimited</strong>', $usql_user_current, $rsql_user_current)))); }
function manage_reseller_limits($dest_reseller, $src_reseller, $users, &$err) { global $sql; list($dest_dmn_current, $dest_dmn_max, $dest_sub_current, $dest_sub_max, $dest_als_current, $dest_als_max, $dest_mail_current, $dest_mail_max, $dest_ftp_current, $dest_ftp_max, $dest_sql_db_current, $dest_sql_db_max, $dest_sql_user_current, $dest_sql_user_max, $dest_traff_current, $dest_traff_max, $dest_disk_current, $dest_disk_max) = generate_reseller_props($dest_reseller); list($src_dmn_current, $src_dmn_max, $src_sub_current, $src_sub_max, $src_als_current, $src_als_max, $src_mail_current, $src_mail_max, $src_ftp_current, $src_ftp_max, $src_sql_db_current, $src_sql_db_max, $src_sql_user_current, $src_sql_user_max, $src_traff_current, $src_traff_max, $src_disk_current, $src_disk_max) = generate_reseller_props($src_reseller); $users_array = explode(";", $users); for ($i = 0; $i < count($users_array) - 1; $i++) { $query = <<<SQL_QUERY select domain_id, domain_name from domain where domain_admin_id = ? SQL_QUERY; $rs = exec_query($sql, $query, array($users_array[$i])); $domain_name = $rs->fields['domain_name']; $domain_id = $rs->fields['domain_id']; list($sub_current, $sub_max, $als_current, $als_max, $mail_current, $mail_max, $ftp_current, $ftp_max, $sql_db_current, $sql_db_max, $sql_user_current, $sql_user_max, $traff_max, $disk_max) = generate_user_props($domain_id); calculate_reseller_vals($dest_dmn_current, $dest_dmn_max, $src_dmn_current, $src_dmn_max, 1, $err, 'Domain', $domain_name); if ($err == '_off_') { calculate_reseller_dvals($dest_sub_current, $dest_sub_max, $src_sub_current, $src_sub_max, $sub_max, $err, 'Subdomain', $domain_name); } if ($err == '_off_') { calculate_reseller_dvals($dest_als_current, $dest_als_max, $src_als_current, $src_als_max, $als_max, $err, 'Alias', $domain_name); } if ($err == '_off_') { calculate_reseller_vals($dest_mail_current, $dest_mail_max, $src_mail_current, $src_mail_max, $mail_max, $err, 'Mail', $domain_name); } if ($err == '_off_') { calculate_reseller_vals($dest_ftp_current, $dest_ftp_max, $src_ftp_current, $src_ftp_max, $ftp_max, $err, 'FTP', $domain_name); } if ($err == '_off_') { calculate_reseller_dvals($dest_sql_db_current, $dest_sql_db_max, $src_sql_db_current, $src_sql_db_max, $sql_db_max, $err, 'SQL Database', $domain_name); } if ($err == '_off_') { calculate_reseller_dvals($dest_sql_user_current, $dest_sql_user_max, $src_sql_user_current, $src_sql_user_max, $sql_user_max, $err, 'SQL User', $domain_name); } if ($err == '_off_') { calculate_reseller_vals($dest_traff_current, $dest_traff_max, $src_traff_current, $src_traff_max, $traff_max, $err, 'Traffic', $domain_name); } if ($err == '_off_') { calculate_reseller_vals($dest_disk_current, $dest_disk_max, $src_disk_current, $src_disk_max, $disk_max, $err, 'Disk', $domain_name); } if ($err != '_off_') { return false; } } // // Let's Make Necessary Updates; // $src_reseller_props = "{$src_dmn_current};{$src_dmn_max};"; $src_reseller_props .= "{$src_sub_current};{$src_sub_max};"; $src_reseller_props .= "{$src_als_current};{$src_als_max};"; $src_reseller_props .= "{$src_mail_current};{$src_mail_max};"; $src_reseller_props .= "{$src_ftp_current};{$src_ftp_max};"; $src_reseller_props .= "{$src_sql_db_current};{$src_sql_db_max};"; $src_reseller_props .= "{$src_sql_user_current};{$src_sql_user_max};"; $src_reseller_props .= "{$src_traff_current};{$src_traff_max};"; $src_reseller_props .= "{$src_disk_current};{$src_disk_max};"; update_reseller_props($src_reseller, $src_reseller_props); $dest_reseller_props = "{$dest_dmn_current};{$dest_dmn_max};"; $dest_reseller_props .= "{$dest_sub_current};{$dest_sub_max};"; $dest_reseller_props .= "{$dest_als_current};{$dest_als_max};"; $dest_reseller_props .= "{$dest_mail_current};{$dest_mail_max};"; $dest_reseller_props .= "{$dest_ftp_current};{$dest_ftp_max};"; $dest_reseller_props .= "{$dest_sql_db_current};{$dest_sql_db_max};"; $dest_reseller_props .= "{$dest_sql_user_current};{$dest_sql_user_max};"; $dest_reseller_props .= "{$dest_traff_current};{$dest_traff_max};"; $dest_reseller_props .= "{$dest_disk_current};{$dest_disk_max};"; update_reseller_props($dest_reseller, $dest_reseller_props); for ($i = 0; $i < count($users_array) - 1; $i++) { $query = "update admin set created_by = ? where admin_id = ?"; exec_query($sql, $query, array($dest_reseller, $users_array[$i])); $query = "update domain set domain_created_id = ? where domain_admin_id = ?"; exec_query($sql, $query, array($dest_reseller, $users_array[$i])); } }