[komplett erledigt] Forum sichtbarkeit?!
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
-
- Mitglied
- Beiträge: 39
- Registriert: 22.01.2009 05:38
[komplett erledigt] Forum sichtbarkeit?!
Hi
Ich hab mir einen kleinen Mod programmiert, der mir die neuesten Themen und Beiträge anzeigt.
Jetzt zeigt er aber auch diese Themen an, die ein User gar nicht sehen kann (Administrationsbereich, VIP Bereich)
Ich hab diese Bereiche so eingestellt, dass sie nur bestimmte User sehen können.
Wo finde ich in der Datenbank, ob ein User ein bestimmtes Forum sehen kann??
Oder gibt es dafür bereits eine fertige Funktion??
MfG Megaleecher
Ich hab mir einen kleinen Mod programmiert, der mir die neuesten Themen und Beiträge anzeigt.
Jetzt zeigt er aber auch diese Themen an, die ein User gar nicht sehen kann (Administrationsbereich, VIP Bereich)
Ich hab diese Bereiche so eingestellt, dass sie nur bestimmte User sehen können.
Wo finde ich in der Datenbank, ob ein User ein bestimmtes Forum sehen kann??
Oder gibt es dafür bereits eine fertige Funktion??
MfG Megaleecher
Zuletzt geändert von Megaleecher am 02.03.2009 17:56, insgesamt 3-mal geändert.
-
- Mitglied
- Beiträge: 1883
- Registriert: 20.10.2003 12:07
- Wohnort: Hannover
Re: Forum sichtbarkeit?!
Diese Art von Mod gibt es wohl schon - suche bei den üblichen Stellen (hier in der Mod DB, auf phpbbhacks.com usw) einfach mal nach "recent" oder "latest" - da solltest du etwas passendes finden 

-
- Mitglied
- Beiträge: 39
- Registriert: 22.01.2009 05:38
Re: Forum sichtbarkeit?!
Mag schon sein, das es sowas schon gibt, mir gehts aber mehr darum, dass ich es selbst gemcht habe und es nicht von jemanden anderen machen ließ 
Könnte mir jemand eine richtige Antwort geben oder muss ich dies vorhandenen Mods zerlegen??
MfG

Könnte mir jemand eine richtige Antwort geben oder muss ich dies vorhandenen Mods zerlegen??
MfG
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Re: Forum sichtbarkeit?!
Die Berechtigungsdaten bekomst du aus allen Tabellen die ein "acl" im Namen haben. Alternativ und besser kannst du aber auch das auth Objekt benutzen und von diesem eine komplette Liste aller Foren IDs erhalten, in dem der aktuelle User lesen darf. Wie das geht kannst du in deinem docs/ Ordner finden der in der Foren Installation beiliegt, dort findet sich ein HTML Dokument über die Auth Api. Das geht dann ziemlich einfach mit etwas ähnlichem wie $auth->acl_getf_global oder so (müsste ich im Moment auch nachsehen so häufig brauche ich das nicht).
Die ausgelesenen IDs gibst du dann bei der Abfrage eben einfach mit ein (Foren ID steht ja bei jedem Themeneintrag dabei) indem du $db->sql_in_set benutzt.
Die ausgelesenen IDs gibst du dann bei der Abfrage eben einfach mit ein (Foren ID steht ja bei jedem Themeneintrag dabei) indem du $db->sql_in_set benutzt.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
-
- Mitglied
- Beiträge: 39
- Registriert: 22.01.2009 05:38
Re: Forum sichtbarkeit?!
Danke 
Das war genau das was ich gesucht habe^^
MfG Megaleecher

Das war genau das was ich gesucht habe^^
MfG Megaleecher
-
- Mitglied
- Beiträge: 39
- Registriert: 22.01.2009 05:38
Re: [fast erledigt] Forum sichtbarkeit?!
War ja irgendwie klar, das es so kommen musste 
Also ich habe mir die Documentation durchgelesen, komme aber nicht drauf wie ich damit die forenid herausbekomm, was ich lesen kann :S
Ich habs mal test weise so probiert:
$auth_test = $auth->acl_getf_global('f_read');
Aber da kommt immer 1 raus...
Egal mit was ich angemeldet bin...
Wie kann ich den Befehl nun richtig benutzen??
Ich hab auch schon diesen articel gelesen aber komme auch dadurch nicht weiter...
http://phpbbmodders.net/articles/3.0/permissions/
Was mir auch aufgefallen ist, dass die function in der Klasse nicht vorhanden ist, er sie aber trotzdem irgendwie benutzen kann...
Woher kommt das?!
MfG Megaleecher
//Edit:
Ich habs jetzt mal so probiert:
if ($auth->acl_get('f_read',$row['forum_id']))
{
}
In $row['forum_id'] steht die aktuell abzufragende ForenID drinnen, aber der ganze Ausdruck gibt ebenfalls IMMER 1 bzw True zurück...

Also ich habe mir die Documentation durchgelesen, komme aber nicht drauf wie ich damit die forenid herausbekomm, was ich lesen kann :S
Ich habs mal test weise so probiert:
$auth_test = $auth->acl_getf_global('f_read');
Aber da kommt immer 1 raus...
Egal mit was ich angemeldet bin...
Wie kann ich den Befehl nun richtig benutzen??
Ich hab auch schon diesen articel gelesen aber komme auch dadurch nicht weiter...
http://phpbbmodders.net/articles/3.0/permissions/
Was mir auch aufgefallen ist, dass die function in der Klasse nicht vorhanden ist, er sie aber trotzdem irgendwie benutzen kann...
Woher kommt das?!
MfG Megaleecher
//Edit:
Ich habs jetzt mal so probiert:
if ($auth->acl_get('f_read',$row['forum_id']))
{
}
In $row['forum_id'] steht die aktuell abzufragende ForenID drinnen, aber der ganze Ausdruck gibt ebenfalls IMMER 1 bzw True zurück...
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Re: [fast erledigt] Forum sichtbarkeit?!
Ich denke was du suchst ist eher $auth->acl_getf('recht', true); (Nachdem ich dann jetzt doch mal in die Datei gesehen habe). Das gibt dir ein Array aller Foren in denen der aktuelle User die Erlaubnis hat etwas zu tun.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
-
- Mitglied
- Beiträge: 39
- Registriert: 22.01.2009 05:38
Re: [fast erledigt] Forum sichtbarkeit?!
Ich habs nun so gelöst und es geht 
if ($auth->acl_get('f_read',$row['forum_id']) != 0)
{
//Permisson
}
else
{
//No Permisson
}
Wollte nicht extra ein ganzes Array durchgehen und mit dem vergleichen^^
Ich sag mal Danke für deine Bemühungen und noch nen schönen Abend.
Wenn ich schon dabei bin, dann wollt ich gleich nen "Bug" bei der Doku bekannt geben...
Dort steht $result = acl_getf_global(option)
Ich denke, dass das aber $result = $auth->acl_getf_global(option)
heißen sollte.
MfG Megaleecher

if ($auth->acl_get('f_read',$row['forum_id']) != 0)
{
//Permisson
}
else
{
//No Permisson
}
Wollte nicht extra ein ganzes Array durchgehen und mit dem vergleichen^^
Ich sag mal Danke für deine Bemühungen und noch nen schönen Abend.

Wenn ich schon dabei bin, dann wollt ich gleich nen "Bug" bei der Doku bekannt geben...
Dort steht $result = acl_getf_global(option)
Ich denke, dass das aber $result = $auth->acl_getf_global(option)
heißen sollte.
MfG Megaleecher
- nickvergessen
- Ehrenadmin
- Beiträge: 11559
- Registriert: 09.10.2006 21:56
- Wohnort: Stuttgart, Germany
- Kontaktdaten:
Re: [komplett erledigt] Forum sichtbarkeit?!
Code: Alles auswählen
if ($auth->acl_get('f_read',$row['forum_id']))
{
//Permisson
}
else
{
//No Permisson
}
kein Support per PN
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Re: [komplett erledigt] Forum sichtbarkeit?!
Naja das ist aber eine ganze Menge mehr Vergleiche als das was ich im Sinn hatte:
Dann wird der andere Kram gar nicht erst aus der Datenbank geholt. Hat außerdem den Vorteil, dass du die Anzahl der angezeigten Einträge besser steuern kannst per LIMIT und nicht "hoffen" musst, dass du genug aus der DB holst.
Code: Alles auswählen
$allowed_forums = $auth->acl_getf('f_read', true);
$allowed_forums = array_keys($allowed_forums);
$sql = "SELECT bla FROM " . TOPICS_TABLE . " WHERE blablub AND" . $db->sql_in_set('forum_id', $allowed_forums);
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.