예제 #1
0
    calculate_user_vals($mail, $umail_current, $umail_max, $rmail_current, $rmail_max, $ed_error, tr('Mail'));
}
if ($ed_error == '_off_') {
    calculate_user_vals($ftp, $uftp_current, $uftp_max, $rftp_current, $rftp_max, $ed_error, tr('FTP'));
}
if ($ed_error == '_off_') {
    calculate_user_dvals($sql_db, $usql_db_current, $usql_db_max, $rsql_db_current, $rsql_db_max, $ed_error, tr('SQL Database'));
}
if ($ed_error == '_off_') {
    calculate_user_dvals($sql_user, $usql_user_current, $usql_user_max, $rsql_user_current, $rsql_user_max, $ed_error, tr('SQL User'));
}
if ($ed_error == '_off_') {
    calculate_user_vals($traff, $utraff_current / 1024 / 1024, $utraff_max, $rtraff_current, $rtraff_max, $ed_error, tr('Traffic'));
}
if ($ed_error == '_off_') {
    calculate_user_vals($disk, $udisk_current / 1024 / 1024, $udisk_max, $rdisk_current, $rdisk_max, $ed_error, tr('Disk'));
}
if ($ed_error == '_off_') {
    $user_props = "{$usub_current};{$usub_max};";
    $user_props .= "{$uals_current};{$uals_max};";
    $user_props .= "{$umail_current};{$umail_max};";
    $user_props .= "{$uftp_current};{$uftp_max};";
    $user_props .= "{$usql_db_current};{$usql_db_max};";
    $user_props .= "{$usql_user_current};{$usql_user_max};";
    $user_props .= "{$utraff_max};";
    $user_props .= "{$udisk_max};";
    //$user_props .= "$domain_ip;";
    $user_props .= "{$domain_php};";
    $user_props .= "{$domain_cgi}";
    update_user_props($dmn_id, $user_props);
    $reseller_props = "{$rdmn_current};{$rdmn_max};";
예제 #2
0
function check_user_data(&$tpl, &$sql, $reseller_id, $user_id)
{
    global $sub, $als, $mail, $ftp, $sql_db, $sql_user, $traff, $disk, $sql, $domain_ip, $domain_php, $domain_cgi;
    $sub = $_POST['dom_sub'];
    $als = $_POST['dom_alias'];
    $mail = $_POST['dom_mail_acCount'];
    $ftp = $_POST['dom_ftp_acCounts'];
    $sql_db = $_POST['dom_sqldb'];
    $sql_user = $_POST['dom_sql_users'];
    $traff = $_POST['dom_traffic'];
    $disk = $_POST['dom_disk'];
    //$domain_ip = $_POST['domain_ip'];
    $domain_php = $_POST['domain_php'];
    $domain_cgi = $_POST['domain_cgi'];
    $ed_error = '_off_';
    if (!vhcs_limit_check($sub, 999)) {
        $ed_error = tr('Incorrect subdomain range or syntax!');
    } else {
        if (!vhcs_limit_check($als, 999)) {
            $ed_error = tr('Incorrect alias range or syntax!');
        } else {
            if (!vhcs_limit_check($mail, 999)) {
                $ed_error = tr('Incorrect mail account range or syntax!');
            } else {
                if (!vhcs_limit_check($ftp, 999) || $ftp == -1) {
                    $ed_error = tr('Incorrect FTP account range or syntax!');
                } else {
                    if (!vhcs_limit_check($sql_db, 999)) {
                        $ed_error = tr('Incorrect SQL user range or syntax!');
                    } else {
                        if (!vhcs_limit_check($sql_user, 999)) {
                            $ed_error = tr('Incorrect SQL database range or syntax!');
                        } else {
                            if (!vhcs_limit_check($traff, 1024 * 1024) || $traff == -1) {
                                $ed_error = tr('Incorrect traffic range or syntax!');
                            } else {
                                if (!vhcs_limit_check($disk, 1024 * 1024) || $disk == -1) {
                                    $ed_error = tr('Incorrect disk range or syntax!');
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    //$user_props = generate_user_props($user_id);
    //$reseller_props = generate_reseller_props($reseller_id);
    list($usub_current, $usub_max, $uals_current, $uals_max, $umail_current, $umail_max, $uftp_current, $uftp_max, $usql_db_current, $usql_db_max, $usql_user_current, $usql_user_max, $utraff_max, $udisk_max) = generate_user_props($user_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) = get_reseller_default_props($sql, $reseller_id);
    //generate_reseller_props($reseller_id);
    list($a, $b, $c, $d, $e, $f, $utraff_current, $udisk_current, $i, $h) = generate_user_traffic($user_id);
    if ($ed_error == '_off_') {
        calculate_user_dvals($sub, $usub_current, $usub_max, $rsub_current, $rsub_max, $ed_error, tr('Subdomain'));
    }
    if ($ed_error == '_off_') {
        calculate_user_dvals($als, $uals_current, $uals_max, $rals_current, $rals_max, $ed_error, tr('Alias'));
    }
    if ($ed_error == '_off_') {
        calculate_user_vals($mail, $umail_current, $umail_max, $rmail_current, $rmail_max, $ed_error, tr('Mail'));
    }
    if ($ed_error == '_off_') {
        calculate_user_vals($ftp, $uftp_current, $uftp_max, $rftp_current, $rftp_max, $ed_error, tr('FTP'));
    }
    if ($ed_error == '_off_') {
        calculate_user_dvals($sql_db, $usql_db_current, $usql_db_max, $rsql_db_current, $rsql_db_max, $ed_error, tr('SQL Database'));
    }
    if ($ed_error == '_off_') {
        $query = <<<SQL_QUERY
\t\t\tSELECT
\t\t\t\tCOUNT(su.sqlu_id) as cnt
\t\t\tFROM
\t\t\t\tsql_user as su, sql_database as sd
\t\t\tWHERE
\t\t\t\tsu.sqld_id = sd.sqld_id
\t\t\tAND
\t\t\t\tsd.domain_id = ?
SQL_QUERY;
        $rs = exec_query($sql, $query, array($_SESSION['user_id']));
        calculate_user_dvals($sql_user, $rs->fields['cnt'], $usql_user_max, $rsql_user_current, $rsql_user_max, $ed_error, tr('SQL User'));
    }
    if ($ed_error == '_off_') {
        calculate_user_vals($traff, $utraff_current / 1024 / 1024, $utraff_max, $rtraff_current, $rtraff_max, $ed_error, tr('Traffic'));
    }
    if ($ed_error == '_off_') {
        calculate_user_vals($disk, $udisk_current / 1024 / 1024, $udisk_max, $rdisk_current, $rdisk_max, $ed_error, tr('Disk'));
    }
    if ($ed_error == '_off_') {
        $user_props = "{$usub_current};{$usub_max};";
        $user_props .= "{$uals_current};{$uals_max};";
        $user_props .= "{$umail_current};{$umail_max};";
        $user_props .= "{$uftp_current};{$uftp_max};";
        $user_props .= "{$usql_db_current};{$usql_db_max};";
        $user_props .= "{$usql_user_current};{$usql_user_max};";
        $user_props .= "{$utraff_max};";
        $user_props .= "{$udisk_max};";
        //$user_props .= "$domain_ip;";
        $user_props .= "{$domain_php};";
        $user_props .= "{$domain_cgi}";
        update_user_props($user_id, $user_props);
        $reseller_props = "{$rdmn_current};{$rdmn_max};";
        $reseller_props .= "{$rsub_current};{$rsub_max};";
        $reseller_props .= "{$rals_current};{$rals_max};";
        $reseller_props .= "{$rmail_current};{$rmail_max};";
        $reseller_props .= "{$rftp_current};{$rftp_max};";
        $reseller_props .= "{$rsql_db_current};{$rsql_db_max};";
        $reseller_props .= "{$rsql_user_current};{$rsql_user_max};";
        $reseller_props .= "{$rtraff_current};{$rtraff_max};";
        $reseller_props .= "{$rdisk_current};{$rdisk_max}";
        update_reseller_props($reseller_id, $reseller_props);
        // update the sql quotas too
        $query = "select domain_name from domain where domain_id=?";
        $rs = exec_query($sql, $query, array($user_id));
        $temp_dmn_name = $rs->fields['domain_name'];
        $query = "SELECT count(name) as cnt from quotalimits where name=?";
        $rs = exec_query($sql, $query, array($temp_dmn_name));
        if ($rs->fields['cnt'] > 0) {
            // we need to update it
            if ($disk == 0) {
                $dlim = 0;
            } else {
                $dlim = $disk * 1024 * 1024;
            }
            $query = "UPDATE quotalimits SET bytes_in_avail=? WHERE name=?";
            $rs = exec_query($sql, $query, array($dlim, $temp_dmn_name));
        }
        set_page_message(tr('Domain properties updated successfully!'));
        return true;
    } else {
        $tpl->assign('MESSAGE', $ed_error);
        $tpl->parse('PAGE_MESSAGE', 'page_message');
        return false;
    }
}