Seite 1 von 1
foren-id's und Gast-Rechte
Verfasst: 23.11.2007 23:42
von Gumfuzi
Hallo!
wie kann ich alle Foren-ID's auslesen, die ein Gast lesen kann und noch dazu als eingeloggter User.
Ich will trotz eingeloggtem Status nur die Foren auslesen, die man als Gast lesen kann.
kann ich die Konstante "ANONYMOUS" in diese Funktion integrieren? oder muss ich das anders machen?
Ich benötige diese Foren-IDs am liebsten als Array.
Muss doch irgendwie funktionieren...
Danke für eure Tipps!
Verfasst: 24.11.2007 12:29
von Dave
Code: Alles auswählen
$foren_id_ary = array_unique(array_keys($auth->acl_getf('f_read', true)));
MfG
Dave
EDIT: Gerade gelesen nur als gast? hmm.. das weiß ich leida nicht
Verfasst: 24.11.2007 15:01
von Gumfuzi
danke!
habe eben nochmals die Sourcecode Docs durchgeguckt, ev. ist das ja meine Funktion?
acl_get_list (line 303)
Get permission listing based on user_id/options/forum_ids
void acl_get_list ([ $user_id = false], [ $opts = false], [ $forum_id = false])
mit der user ID "-1"? oder "ANONYMOUS"?
oder die?
acl_group_raw_data (line 720)
Get raw group based permission settings
void acl_group_raw_data ([ $group_id = false], [ $opts = false], [ $forum_id = false])
group_id die der Gäste-Gruppe?
liege ich damit richtig? falls ja, muss ich mich da mal genauer einlesen.
Verfasst: 24.11.2007 15:03
von nickvergessen
Gumfuzi hat geschrieben:habe eben nochmals die Sourcecode Docs durchgeguckt, ev. ist das ja meine Funktion?
acl_get_list (line 303)
Get permission listing based on user_id/options/forum_ids
void acl_get_list ([ $user_id = false], [ $opts = false], [ $forum_id = false])
mit der user ID "-1"? oder "ANONYMOUS"?
Würde ich vermuten, nur ist die Gast ID in phpBB3 1 und nicht -1
Verfasst: 24.11.2007 15:10
von Gumfuzi
achso, ja, danke!
mal sehen, was dann ausgegeben wird, hoffentlich die Foren_id, wo der User (Gast) die f_read Rechte hat, wenn ich f_read mit angebe.
ich werd das mal testen - danke!
*edit*
habs nun:
Code: Alles auswählen
foreach ($auth->acl_get_list(1, "f_read", false) as $forum_id => $forum_ary)
{
$sql_f .= (!$sql_f) ? $forum_id : ", " . $forum_id;
}
danke nochmals für die Anregungen dazu!
Verfasst: 24.11.2007 19:32
von Dave
nimm lieber ANONYMOUS als das du ne fixe zahl nimmst. so bist du immer auf der sicheren seite
Code: Alles auswählen
foreach ($auth->acl_get_list(ANONYMOUS, "f_read", false) as $forum_id => $forum_ary)
{
$sql_f .= (!$sql_f) ? $forum_id : ", " . $forum_id;
}
MfG
Dave
Verfasst: 24.11.2007 19:37
von Gumfuzi
ok, danke - habs geändert.