$oblast) $i++; switch ($mode) { case "r":$imode=1;break; case "w":$imode=2;break; } if ($i==$maxi) return true; // nebylo nalezeno mezi právy if ($irights,"0",count($DefRights),"r"); $sql="SELECT * FROM groups WHERE group_id='$group_id' order by id"; if ($res_groups = db_query ($conn,$sql)) while ($row_groups = db_fetch_object ($res_groups)) { $row_groups->rights = makefillby($row_groups->rights,"0",count($DefRights),"r"); if (ereg($row_groups->zkratka,$user->groups)) for ($rights_i=0;$rights_irights[$rights_i]>$eRights[$rights_i]) $eRights[$rights_i]=$row_groups->rights[$rights_i]; } return $eRights; } function AuthorisedAccess ($conn,$AcNum,$oblast="none",$mode="r",$output=false) { list($error_reporting,$platne)=GetItem($conn,'error_reporting',$AcNum); if(!$platne) $error_reporting=0; if (!$error_reporting) error_reporting(0); // no errors announced $TheTab="members"; if (!empty($AcNum)) { $thistime = time(); $sql = "SELECT id, rights, lasttime, groups, group_id FROM $TheTab WHERE accessnumber='$AcNum'"; list ($id,$rights,$dbflasttime,$groups,$group_id) = db_query_array ($conn, $sql); if (!empty($dbflasttime)) { list($timeout,$platne)=GetItem($conn,'timeout',$AcNum); if(!$platne) $timeout=30; $rozdil=$thistime-$dbflasttime; if ($rozdil < $timeout*60) { $sql = "UPDATE $TheTab SET lasttime='$thistime' WHERE id='$id'"; if (db_query ($conn,$sql)) { $rights=GetEffectiveRights ($conn,$id,$group_id); if (CanAccess ($rights,$oblast,$mode,$groups)) return true; else { if ($output) { ?>

.

<?php printgt("ConnectionClosed");?>

min.