Esempio n. 1
0
 function get_classvar_description_after_overload($class, $property)
 {
     global $gbl, $sgbl, $login;
     lxclass::resolve_class_differences($class, $property, $dclass, $dproperty);
     $classdesc = get_classvar_description($dclass);
     $prop_descr = get_classvar_description($dclass, $dproperty);
     $this->fix_variable_overload($prop_descr, $classdesc[2]);
     $prop_descr[2] = getNthToken($prop_descr[2], 1);
     return $prop_descr;
 }
Esempio n. 2
0
function check_priv($parent, $class, $pvar, $v)
{
    if (cse($class, "template")) {
        foreach ($v as $pk => $pv) {
            $pvar->{$pk} = $pv;
        }
        return;
    }
    $parent = $parent->getClientParentO();
    foreach ($v as $pk => $pv) {
        if (cse($pk, "_time")) {
            $pvar->{$pk} = $pv;
            continue;
        }
        if (!$parent->isQuotaVariable($pk) && !$parent->isDeadQuotaVariable($pk)) {
            continue;
        }
        if (cse($pk, "_flag")) {
            if ($parent->priv->isOn($pk)) {
                $pvar->{$pk} = $pv;
                continue;
            }
            if (isOn($pv)) {
                throw new lxException("Parent Doesnt Have Permission for {$pk}", "frm_{$class}_c_priv_s_{$pk}", null);
            }
            $pvar->{$pk} = $pv;
            continue;
        }
        if (cse($pk, "_num") || cse($pk, "_usage")) {
            $tmp = $pv;
            if ($tmp < 0) {
                throw new lxException('has_to_be_greater_than_zero', "priv_s_{$pk}");
            }
            if (is_unlimited($parent->priv->{$pk})) {
                if (isHardQuotaVariableInClass($class, $pk)) {
                    $parent->used->{$pk} -= $pvar->{$pk};
                    $parent->used->{$pk} += $pv;
                    $parent->setUpdateSubaction();
                }
                $pvar->{$pk} = $pv;
                continue;
            }
            if (is_unlimited($pv)) {
                $desc = getNthToken(get_v_descr($parent, $pk), 2);
                if (!$desc) {
                    $desc = $pk;
                }
                throw new lxException("quota_exceeded", "priv_s_{$pk}", $desc);
            }
            if (isHardQuotaVariableInClass($class, $pk)) {
                $parent->used->{$pk} -= $pvar->{$pk};
            }
            dprintr($parent->used);
            if ($tmp > $parent->getEffectivePriv($pk, $class)) {
                dprint("After throw");
                $desc = getNthToken(get_v_descr($parent, $pk), 1);
                if (!$desc) {
                    $desc = $pk;
                }
                throw new lxException("quota_exceeded", "priv_s_{$pk}", $desc);
            }
            dprint("No throw.. {$tmp} <br> ");
            if (isHardQuotaVariableInClass($class, $pk)) {
                $parent->used->{$pk} += $pv;
                $parent->setUpdateSubaction();
            }
            $pvar->{$pk} = $pv;
        }
    }
}
Esempio n. 3
0
function get_form_variable_name($descr)
{
    return getNthToken($descr, 1);
}
Esempio n. 4
0
 static function baseinitThisList($parent, $class, $type)
 {
     global $gbl, $sgbl, $login, $ghtml;
     $rlist = $parent->createShowRlist("");
     $class = $parent->get__table();
     $resourceout = null;
     if ($rlist) {
         $j = 0;
         foreach ($rlist as $k => $v) {
             if ($k === 'priv') {
                 $vlist = $parent->getQuotaVariableList();
                 $vlist = lx_array_merge(array($vlist, $parent->getDeadQuotaVariableList()));
                 foreach ($vlist as $nk => $nv) {
                     // Why am I skipping hardquota?. OK it screws up vps graph
                     if ($parent->isHardQuota($nk)) {
                         continue;
                     }
                     if ($type === 'permission') {
                         if (!cse($nk, "_flag")) {
                             continue;
                         }
                         if ($login->getSpecialObject('sp_specialplay')->isOn('dont_show_disabled_permission')) {
                             if (!$parent->priv->isOn($nk)) {
                                 continue;
                             }
                         }
                     } else {
                         if (cse($nk, "_flag")) {
                             continue;
                         }
                     }
                     $desc = get_classvar_description($class, $nk);
                     if (is_array($parent->priv->{$nk})) {
                         foreach ($parent->priv->{$nk} as $nnk => $nnv) {
                             $resourceout[$j]['vv'] = $nk;
                             $resourceout[$j]['nname'] = $j;
                             $resourceout[$j]['shortdescr'] = getNthToken($desc[2], 0);
                             $sh = getNthToken($desc[2], 0);
                             $ln = getNthToken($desc[2], 1);
                             $resourceout[$j]['descr'] = "_lxspan:{$sh}:{$ln}:";
                             $resourceout[$j]['resourceused'] = $parent->used->{$nk}[$nnk];
                             $resourceout[$j]['resourcepriv'] = $parent->priv->{$nk}[$nnk];
                             $j++;
                         }
                         continue;
                     }
                     if (isset($parent->used)) {
                         $vresourceused = $parent->used->{$nk};
                     } else {
                         $vresourceused = '-';
                     }
                     if (cse($nk, "_flag")) {
                         $vresourcepriv = $parent->priv->{$nk};
                     } else {
                         if ($parent->priv->{$nk} === "0") {
                             continue;
                         }
                         if ($parent->showPrivInResource()) {
                             $vresourcepriv = $parent->priv->{$nk};
                         } else {
                             $vresourcepriv = '-';
                         }
                     }
                     if (cse($nk, 'last_usage')) {
                         $vresourcepriv = '-';
                     }
                     if ($parent->isDeadQuotaVariable($nk)) {
                         $vresourcepriv = "-";
                     }
                     $resourceout[$j]['vv'] = $nk;
                     $resourceout[$j]['nname'] = $j;
                     $resourceout[$j]['shortdescr'] = getNthToken($desc[2], 0);
                     $sh = getNthToken($desc[2], 0);
                     $ln = getNthToken($desc[2], 1);
                     $resourceout[$j]['descr'] = "_lxspan:{$sh}:{$ln}:";
                     $resourceout[$j]['resourceused'] = $vresourceused;
                     $resourceout[$j]['resourcepriv'] = $vresourcepriv;
                     $j++;
                 }
             } else {
                 $resourceout[$j]['vv'] = $v[0];
                 $resourceout[$j]['nname'] = $j;
                 $resourceout[$j]['shortdescr'] = getNthToken($v[1], 0);
                 $sh = getNthToken($v[1], 0);
                 $ln = getNthToken($v[1], 1);
                 $resourceout[$j]['descr'] = "_lxspan:{$sh}:{$ln}:";
                 $resourceout[$j]['resourceused'] = $v[2];
                 $resourceout[$j]['resourcepriv'] = $v[3];
                 $j++;
             }
         }
     }
     return $resourceout;
 }