Seite 1 von 2

Erledigt: Forenzugangskontrolle-Unterschied Ansicht und Les.

Verfasst: 11.01.2007 16:27
von K1ckEM
Hi! Mir ist nicht ganz klar, wie die die fortschrittliche Methode funktionieren soll. Ich habe ein Forum, in dem ich News poste, die mir der intro+Portalmod dann auf das Portal zaubert. Ich hätte gern, das das Forum im Index nicht sichtbar ist, die User jedoch die Topics ansehen können, wenn sie per Portal nen Link anklicken (Kommentarfunktion).

Genau dafür scheint es ja die beiden Funktionen Lesen und Ansicht zu geben. Das Handbuch meint:
Handbuch hat geschrieben:Ansicht: Der Nutzer kann das Forum auf der Forenübersichtsseite sehen (er sieht also, dass das Forum existiert).
Lesen: Der Nutzer kann das Forum betreten, sprich Themen und Beiträge lesen.
Tja, aber genau das funktioniert nicht. Egal welche, sobald ich eine der Optionen auf "Admin" stelle, kann niemand außer mir die Topics aufrufen. Weis jemand Rat? Danke!

Verfasst: 15.01.2007 23:59
von K1ckEM
ich weis man soll nicht schieben, aber ich warte jetzt schon seit 5 tagen :(

weis wirklich niemand ne antwort darauf?? kann ich mir einfach nicht vorstellen... danke im vorraus für evtl. antworten!

Verfasst: 16.01.2007 17:16
von gn#36
Das ist doch wohl logisch. Wenn du Lesen auf Admin stellst, dann können nur Administratoren dieses Forum lesen. Lesen ist aber eine elementare Fähigkeit, d.h. wenn man nicht lesen kann, kann man auch den Inhalt des Forums nicht darstellen und daher auch nicht posten - es sei denn man ist Admin.
Beim Betrachten ist es noch extremer: Wenn man mindestens Admin sein muss nur um zu wissen, dass es dieses Forum überhaupt gibt, dann kann man mit weniger Rechten logischerweise auch nicht lesen, posten, antworten...

Diese beiden Rechte haben nichts mit irgend einem Portalmod zu tun sondern sind quasi die beiden Basisrechte die man benötigt um überhaupt irgendetwas im Forum zu tun.
Was du machen möchtest erfordert wohl einen tiefergehenden Umbau in den Dateien, die für die Indexdarstellung verantwortlich sind (also portal.php oder so und index.php) Hier muss das entsprechende Forum zusätzlich als "unsichtbar" eingetragen werden. Alternativ könnte man das Recht "betrachten" umfunktionieren, allerdings hätte das den unschönen Nebeneffekt, dass es keine echt versteckten Foren mehr geben kann. Als letzte Alternative könnte man noch ein zusätzliches "Recht" erfinden, welches genau die gewünschte Funktion regelt...

-> Möglichkeiten gibt es also viele, allerdings kenne ich das Portal nicht und je nach Funktionalität wird das auch evtl. komplizierter.
-> Poste mal die index.php und die portal.php (oder wie auch immer das Portal heißt) Eine PHP-Datei zum Download bereitstellen

Re: Forenzugangskontrolle - Unterschied Ansicht und Lesen

Verfasst: 16.01.2007 17:20
von nickvergessen
K1ckEM hat geschrieben:Tja, aber genau das funktioniert nicht. Egal welche, sobald ich eine der Optionen auf "Admin" stelle, kann niemand außer mir die Topics aufrufen. Weis jemand Rat? Danke!
Versuchs mal damit

Verfasst: 19.01.2007 15:41
von K1ckEM
Dank euch beiden für die Antworten! werds gleich mal probieren!

EDITh sagt:
cYbercOsmOnauT hat geschrieben:Öffne Deine index.php und suche die Zeile

Code: Alles auswählen

if (isset($display_categories[$cat_id]) && $display_categories[$cat_id])
erweitere sie

Code: Alles auswählen

if (isset($display_categories[$cat_id]) && $display_categories[$cat_id] && !in_array($cat_id, array(12, 13)))
Dies würde nun die Anzeige der Kategorien 12 und 13 unterbinden.
Das funktioniert schonmal gut! Wenn mir jetzt noch jemand das ganze Umbauen kann, das die Foren im Index NUR vom Admin gesehen werden können wär ich überglücklich!

Verfasst: 19.01.2007 16:13
von gn#36

Code: Alles auswählen

if (isset($display_categories[$cat_id]) && $display_categories[$cat_id] && (!in_array($cat_id, array(12, 13) || $userdata['user_level'] == ADMIN)))
Damit wird für einen Admin wieder alles dargestellt (basierend auf dem Codesegment was du gepostet hattest).

Für Moderatoren und Admins sollte sowas gehen:

Code: Alles auswählen

if (isset($display_categories[$cat_id]) && $display_categories[$cat_id] && (!in_array($cat_id, array(12, 13) || $userdata['user_level'] == ADMIN || $userdata['user_level'] == MOD)))

Verfasst: 20.01.2007 01:12
von K1ckEM
gn#36 hat geschrieben:

Code: Alles auswählen

if (isset($display_categories[$cat_id]) && $display_categories[$cat_id] && (!in_array($cat_id, array(12, 13) || $userdata['user_level'] == ADMIN)))
In der Form funktionierts nicht, aber ich denke mal da is ne Klammer zuviel nach ==ADMIN! :) Dann wird der Forenindex zwar angezeigt, spuckt aber mehrfach folgende Fehlermeldung aus:

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /www/htdocs/w007e969/forum/index.php on line 329

:-( Keine Ahnung was da nicht stimmt, dafür kenn ich mich zu wenig aus

Verfasst: 20.01.2007 13:49
von gn#36
Nein keine Klammer zu viel, ich habe es eine Klammer zu früh eingebaut... :oops:
So siehts richtig aus:

Code: Alles auswählen

if (isset($display_categories[$cat_id]) && $display_categories[$cat_id] && (!in_array($cat_id, array(12, 13)) || $userdata['user_level'] == ADMIN))
bzw.

Code: Alles auswählen

if (isset($display_categories[$cat_id]) && $display_categories[$cat_id] && (!in_array($cat_id, array(12, 13)) || $userdata['user_level'] == ADMIN || $userdata['user_level'] == MOD))
12 und 12 sind entsprechend den gewünschten (durch Komma getrennten) Kategorien anzupassen, die ausgeblendet werden sollen.

Verfasst: 20.01.2007 16:05
von K1ckEM
Vielen Dank für die Mühe!

Muss leider sagen, das das auch nicht funktioniert. Die Fehlermeldungen sind zwar verschwunden, aber dafür sind die Katgegorien wieder bei allen sichtbar, auch bei Gästen und registrierten Usern.

Ist aber gar nicht schlimm, hab mir inzwischen anders geholfen (Auf dem Portal gibt es einen Link nur für den Admin, der ins versteckte News Forum führt).

Trotzdem isses vielleicht für andere interessant, falls also noch jemand ne Idee hat, ich probiers gern aus und poste hier Erfolgs bzw. Misserfolgsmeldungen.. :)

Verfasst: 20.01.2007 16:21
von gn#36
Dann scheinst du sonderbare Modifikationen an deinem Forum gemacht zu haben, denn bei mir funktioniert es exakt so (musst natürlich die 12 und 13 entsprechend den gewünschten auszublendenden Kategorien anpassen).