function GetGroupInfo(LOGGROUP $grp = NULL, $flags = 0) { if (!($flags & REQUEST::CONTROL)) { return parent::GetGroupInfo($grp, $flags); } if ($flags & REQUEST::NEED_INFO) { $req_cols = "bid, name, length, "; } else { $req_cols = "bid, name"; } if ($grp) { $res = $this->db->Query("SELECT {$req_cols} FROM blocks WHERE bid=" . $grp->gid); } else { $res = $this->db->Query("SELECT {$req_cols} FROM blocks"); } $groups = array(); foreach ($res as $row) { $gid = $row['bid']; $groups[$gid] = array('gid' => $gid, 'name' => $row['name']); if ($flags & REQUEST::NEED_INFO && $flags & REQUEST::NEED_ITEMINFO) { $ginfo = array("db_group" => $gid); $grzeus = $this->CreateGroup($ginfo); $groups[$gid]['items'] = $this->GetItemList($grzeus, NULL, $flags); } } return $grp ? $groups[$grp->gid] : $groups; }