reg. Benutzer > Themen sehen aber nicht lesen

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
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.
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von forant »

Hallo Community,

mit dem

Code: Alles auswählen

if (!$user->data['is_registered'] && $forum_id != 63 && $forum_id != 147)
kann man einstellen, das Gäste die Themen sehen dürfen, aber nicht lesen.

Was muss an Stelle von

Code: Alles auswählen

if (!$user->data['is_registered'] 
verwendet werden, um dieses auch für registrierte Benutzer durchzuführen?

Ich habe Foren, in welchen selbst registrierte Benutzer die Themen sehen sollen, aber nicht lesen (dazu müssen Sie erst einer weiteren Gruppe zugewiesen werden).

Kann mir jemand helfen?

Danke vorab.

Greatings

Martin
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Benutzeravatar
DeepSurfer
Mitglied
Beiträge: 1337
Registriert: 23.01.2009 10:26

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von DeepSurfer »

Also ist Dein Konzept so, das es z.b. 20 Foren gibt.

-5 davon sind für Registrierte Benutzer und Gäste einsehbar ABER nicht schreibbar.
-5 davon dürfen Registrierte Benutzer einsehen UND schreiben.
-10 davon sind mit eigener Gruppe unsichtbar für alle anderen.

Hab ich das so richtig aus Deiner Fragestellung gelesen ??

Wenn nicht, dann stellt sich die Frage warum du die Schreibbarkeit für Registrierte Benutzer nicht ganz entziehst über die Berechtigungen, bzw. eben für die Gruppe die Berechtigung "Nur Lesender Zugriff" vergibst.
wie einst der MCP aus Tron auf dem Bildschirm zu schreiben pflegte.
- end of communication -
greets
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von forant »

DeepSurfer hat geschrieben:Hab ich das so richtig aus Deiner Fragestellung gelesen ??
Leider Nein :wink:

Es handelt sich nicht um Foren, sondern um Themen. In den Berechtigungen kann man nur die Foren als sehen und lesen definieren, aber nicht explizit die Themen. Daraus ergibt sich für mich folgende Aufgabenstellung:

Beispiele:
1. Gäste dürfen in ALLEN Foren AA bis ZZ die Themen sehen aber nicht den Inhalt der Themen lesen.

2. Registrierte Benutzer dürfen im Foren AA und BB die Themen sehen und den Inhalt lesen, in den Foren CC bis ZZ die Themen sehen aber nicht den Inhalt der Themen lesen.

3. Mitglieder der Gruppe "Muster" dürfen im Foren AA, BB, CC und DD die Themen sehen und den Inhalt lesen, in den Foren EE bis ZZ die Themen sehen aber nicht den Inhalt der Themen lesen.

4. Mitglieder der Gruppe "Tester" dürfen im Foren AA, BB, EE und FF dieThemen sehen und den Inhalt lesen, in den Foren CC bis DD und GG bis ZZ die Themen sehen aber nicht den Inhalt der Themen lesen.

Zusammengefasst:
A: in der Grundstellung dürfen ALLE die Themen lesen, aber nicht deren Inhalte. :P
B: das Lesen der Inhalte von Themen soll jeweils nur bestimmten Gruppen vorbehalten sein. :x

Anmerkung:
Ich kann sicherlich damit leben, wenn ich dies jeweils (wie im OP) selbst in der viewtopc.php definieren muss, da es in der Regel nicht oft verändert werden muss. :D

Wie kann man dies in der viewtopc.php definieren? :o

Hoffe ich habe mich jetzt etwas deutlicher ausdrücken können. *puuh, stöhn*
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von Mahony »

Hallo
Das hier sollte dir weiter helfen http://www.phpbb.com/kb/article/phpbb3- ... tegration/
Ab hier
Here's a list of all the user data variables you can access or check:
wird es interessant für dich.

Achtung: $user->data['group_id'] gibt dir nur die Hauptgruppe des jeweiligen Benutzers zurück.

Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von forant »

Hallo Mahony,

zunächst einmal Danke dass auch Dich mit meinem Anliegen beschäftigst.

Bei Deinem Lösungsvorschlag geht es wahrlich ins eingemachte (SQL) wovon ich noch zu wenig Ahnung habe. Auch habe ich mit Englisch meine Probleme. :oops:

Dürfte vermutlich wohl ein Fall für die Jobbörse werden? :wink:
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von Mahony »

Hallo
Ähm...das ist doch ganz einfach
Nutze die Abfrage folgendermaßen

Code: Alles auswählen

if ($user->data['group_id'] == x || $user->data['group_id'] == y || $user->data['group_id'] == z)
x, y und z musst du natürlich mit den benötigten Gruppen IDs ersetzen.


Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von forant »

Mahony hat geschrieben:Ähm...das ist doch ganz einfach
sprach der Profi :P (ich kann Dir sagen das es ganz einfach ist, ein IP-Protokoll nach VdS2465 auszuwerten und wie man mit einem Makro eine GMA dazu bringen kann, das wenn X ansteht doch Y aktiviert wird, wenn Z aber nicht Kaffee trinken ist und die Schranke offen steht) :wink:

damit ich dies nicht so oft schreiben muss, wie kann ich:

Code: Alles auswählen

if (!$user->data['is_registered']
or

Code: Alles auswählen

if ($user->data['group_id'] == x
or

Code: Alles auswählen

if ($user->data['group_id'] == y
zusammenfassen?

Stimmt der nachstehende Gesamtbefehl um z.B. Gäste (1) und die Gruppen (2) und (9) zusammen zu fassen?:

Code: Alles auswählen

if ($user->data['group_id'] == 1 or if ($user->data['group_id'] == 2 or if ($user->data['group_id'] == 9 && $forum_id != AA && $forum_id != BB)
im Original (siehe oben) ist ja ein ! vor user->data gestellt. Korrekt das es bei den Groups entfällt?

Man sehe es mir nach, aber dies ist ja ein Thema der Programmierung und Du weist sicher, da kann man schnell MIST bauen. Daher frage ich lieber genauer nach.

Danke vorab

Grüßle
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von Mahony »

Hallo
Hm..ungefähr so

Code: Alles auswählen

if ((!$user->data['group_id'] == 1 ) || (!$user->data['group_id'] == 2 ) || (!$user->data['group_id'] == 9 && $forum_id == AA || $forum_id == BB)) 
Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17473
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von Dr.Death »

Code: Alles auswählen

    if (!$user->data['is_registered'] OR $user->data['group_id'] == x OR $user->data['group_id'] == y)
*duck*

EDIT: Mahony war schneller.... und ich habe nur den Anfang der Frage beantworetet ;-)
forant
Gesperrt
Beiträge: 424
Registriert: 07.06.2010 17:50

Re: reg. Benutzer > Themen sehen aber nicht lesen

Beitrag von forant »

für den Laien zwei verschiedene Antworten:

einmal || und einmal OR zwischen den Syntax. Nehme an, beide haben die selbe auswirkung?

Zusatzfrage:
gibt es statt

Code: Alles auswählen

&& $forum_id != AA && $forum_id != BB
einen pauschalen Befehl für ALLE Foren (etwa: $forum_id!=all)?
Der Mensch will manchmal höchlich sauer, mit seinem Kopf durch eine Mauer. Ein Kluger fragt erst mit Verstand, aus welchem Stoff ist den die Wand?
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“