function QuotaGroup($ID)
{
    $q = new mysql();
    $tpl = new templates();
    $sql = "SELECT * FROM ext_time_quota_acl_rules WHERE ruleid='{$ID}' AND enabled=1";
    $results = $q->QUERY_SQL($sql, "artica_backup");
    if (!$q->ok) {
        return $q->mysql_error;
    }
    $acl = new squid_acls_groups();
    $t = $_GET["t"];
    $tOrg = $_GET["tOrg"];
    $tt = $_GET["tt"];
    $budgets["s"] = "{seconds}";
    $budgets["m"] = "{minutes}";
    $budgets["h"] = "{hours}";
    $budgets["d"] = "{days}";
    $budgets["w"] = "{weeks}";
    $f = array();
    while ($ligne = mysql_fetch_assoc($results)) {
        $ligne['rulename'] = utf8_encode($ligne['rulename']);
        if (preg_match("#([0-9]+)([a-z]+)#", $ligne["budget"], $re)) {
            $budget = $re[1];
            $budget2 = $re[2];
        }
        if (preg_match("#([0-9]+)([a-z]+)#", $ligne["period"], $re)) {
            $period = $re[1];
            $period2 = $re[2];
        }
        $GetGroupsList = GetGroupsList($ligne["ID"]);
        $url = "<a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('squid.ext_time_quota_acl_rules.php?session-rule-js=yes&ID={$ligne['ID']}&t={$t}&tOrg={$tOrg}&mainrule={$ID}&tt={$tt}');\" style=\"font-size:11px;text-decoration:underline;color:{$color}\">";
        $period = $tpl->javascript_parse_text("{$period} {$budgets[$period2]}");
        $budget = $tpl->javascript_parse_text("{$budget} {$budgets[$budget2]}");
        $f[] = "<div style='font-size:11px'>&laquo;<strong>{$url}{$ligne['rulename']}</strong></a>&raquo; {$budget}/{$period}{$GetGroupsList}</div>";
    }
    return @implode("", $f);
}
function rules_list()
{
    //ini_set('html_errors',0);ini_set('display_errors', 1);ini_set('error_reporting', E_ALL);ini_set('error_prepend_string','');ini_set('error_append_string','');
    $tpl = new templates();
    $MyPage = CurrentPageName();
    $q = new mysql();
    $database = "artica_backup";
    $t = $_GET["t"];
    $tt = $_GET["tt"];
    $tOrg = $_GET["tOrg"];
    $mainrule = $_GET["mainrule"];
    $search = '%';
    $table = "ext_time_quota_acl_rules";
    $page = 1;
    $data = array();
    $data['rows'] = array();
    $FORCE_FILTER = "AND ruleid='{$mainrule}'";
    if (isset($_POST["sortname"])) {
        if ($_POST["sortname"] != null) {
            $ORDER = "ORDER BY {$_POST["sortname"]} {$_POST["sortorder"]}";
        }
    }
    if (isset($_POST['page'])) {
        $page = $_POST['page'];
    }
    $searchstring = string_to_flexquery();
    if ($searchstring != null) {
        $sql = "SELECT COUNT(*) as TCOUNT FROM `{$table}` WHERE 1 {$FORCE_FILTER} {$searchstring}";
        $ligne = mysql_fetch_array($q->QUERY_SQL($sql, $database));
        $total = $ligne["TCOUNT"];
    } else {
        $sql = "SELECT COUNT(*) as TCOUNT FROM `{$table}` WHERE 1 {$FORCE_FILTER}";
        $ligne = mysql_fetch_array($q->QUERY_SQL($sql, $database));
        $total = $ligne["TCOUNT"];
    }
    if (isset($_POST['rp'])) {
        $rp = $_POST['rp'];
    }
    $pageStart = ($page - 1) * $rp;
    $limitSql = "LIMIT {$pageStart}, {$rp}";
    if ($OnlyEnabled) {
        $limitSql = null;
    }
    $sql = "SELECT *  FROM `{$table}` WHERE 1 {$searchstring} {$FORCE_FILTER} {$ORDER} {$limitSql}";
    writelogs($sql, __FUNCTION__, __FILE__, __LINE__);
    $results = $q->QUERY_SQL($sql, $database);
    if (!$q->ok) {
        json_error_show("{$q->mysql_error}");
    }
    $data['page'] = $page;
    $data['total'] = $total;
    $budgets["s"] = "{seconds}";
    $budgets["m"] = "{minutes}";
    $budgets["h"] = "{hours}";
    $budgets["d"] = "{days}";
    $budgets["w"] = "{weeks}";
    while ($ligne = mysql_fetch_assoc($results)) {
        $val = 0;
        $color = "black";
        $disable = Field_checkbox("sessionid_{$ligne['ID']}", 1, $ligne["enabled"], "EnableDisableSessionRule{$tt}('{$ligne['ID']}')");
        $ligne['rulename'] = utf8_encode($ligne['rulename']);
        $delete = imgsimple("delete-24.png", null, "DeleteSessionRule{$tt}('{$ligne['ID']}')");
        if ($ligne["enabled"] == 0) {
            $color = "#8a8a8a";
        }
        //$explain=$tpl->_ENGINE_parse_body($acls->ACL_MULTIPLE_EXPLAIN($ligne['ID'],$ligne["enabled"]));
        if (preg_match("#([0-9]+)([a-z]+)#", $ligne["budget"], $re)) {
            $budget = $re[1];
            $budget2 = $re[2];
        }
        if (preg_match("#([0-9]+)([a-z]+)#", $ligne["period"], $re)) {
            $period = $re[1];
            $period2 = $re[2];
        }
        $period = $tpl->javascript_parse_text("{$period} {$budgets[$period2]}");
        $budget = $tpl->javascript_parse_text("{$budget} {$budgets[$budget2]}");
        $gplist = GetGroupsList($ligne['ID']);
        $data['rows'][] = array('id' => "acl{$ligne['ID']}", 'cell' => array("<a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('{$MyPage}?session-rule-js=yes&ID={$ligne['ID']}&t={$t}&tOrg={$tOrg}&mainrule={$mainrule}&tt={$tt}');\" style=\"font-size:16px;text-decoration:underline;color:{$color}\">{$ligne['rulename']}</a>{$gplist}", "<span style=\"font-size:14px;color:{$color}\">{$budget}</span>", "<span style=\"font-size:14px;color:{$color}\">{$period}</span>", $disable, $delete));
    }
    echo json_encode($data);
}