Seite 1 von 1

Beitragseditierung pro User unterbinden

Verfasst: 01.10.2013 11:05
von Jobsti
Grüßt euch,

ab und zu gibt's Nutzer, welcher im Nachhinein alle ihre Beiträge weg-Editieren,
das möchte ich gerne unterbinden.

Problem: Ich hätte das gerne als Recht oder Funktion pro User oder wegen mir zur Not auch pro Gruppe
(Dann muss der User eben in eine Spezialgruppe, wär aber net so hübsch)

Die Vanilla-Option erlaubt das nur für alle Benutzer des Forums, hier kann man nur die nachträgliche Zeit für Editierungen festlegen,
was ich aber nicht möchte, da bei uns immermal Projekte gestartet werden und der Themenersteller somit
noch Zugriff auf seine ersten 1-3 Beiträge benötigt.


Kurzum:
Ich brauche die Funktion das nachträgliche Editieren pro User zu unterbinden, nach einer bestimmten Zeit,
oder eben direkt nach Absenden seines Beitrages.
Besser noch, sobald ein Folgebeitrag kommt, wird der entsprechende Post direkt
gesperrt (siehe "Beitrag sperren [verhindert Änderungen]" in den Beitragsoptionen. So könnte ein Mod ihn easy auch wieder freigeben)

Sprich, nach einem Folgebeitrag müsste automatisch der Haken in den Optionen gesetzt werden.
So muss das direkt ein Mod beim entsprechenden User übernehmen, was natürlich super umständlich ist.

Wer aus der Reihe tanzt, bekommt das Recht zugewiesen ;)


Gibt's eine Lösung, Hack, Mod dafür?

Vielen Dank.


Da wir schon dabei sind eine kleine Frage:
Wenn ich den ersten Beitrag lösche, wie kann ich dann den Thementitel noch ändern?



MfG
Jobsti
http://www.lautsprecherforum.eu

Re: Beitragseditierung pro User unterbinden

Verfasst: 01.10.2013 13:09
von AYYILDIZLAR
Hallo,

Geh mal bitte ins ACP/Benutzer und Gruppen/links Gruppenspezifische Forenrechte/danach rechts die Gruppe auswählen und absenden/dann das Forum auswählen und absenden/danach den Link "Erweiterte Berechtigungen" anklicken und unter dem Reiter "Aktivitäten" dem Punkt Kann eigene Beiträge ändern ein "Nein" bzw. "Nie" vergeben und danach auf "Berechtigungen anwenden".


Grüße

Re: Beitragseditierung pro User unterbinden

Verfasst: 01.10.2013 14:23
von DetlefT
Jobsti hat geschrieben:Wenn ich den ersten Beitrag lösche, wie kann ich dann den Thementitel noch ändern?
Hallo,

indem Du den dann ersten Beitrag neu abspeicherst. Die Forensoftware aktualisiert den Thementitel dann von der Beitrags- in die Thementabelle.

Re: Beitragseditierung pro User unterbinden

Verfasst: 01.10.2013 17:48
von Jobsti
@DetlefT
Habe ich probiert, aber das hat mir nur den Beitragstitel geändert, nicht den Thementitel.
Kommt normal nicht vor, aber heute mal. Neues Thema erstellt, Beiträge verschoben, fertig. Ging auch ;-)

@AYYILDIZLAR
Ist dann aber Gruppen/Foren spezifisch und gilt auch fest.
Wäre die absolute Notlösung. Denn gerade nach Absenden sieht man immer nochmal nen Fehlerchen,
was weg-editiert werden muss.
Dennoch vielen Dank.

Re: Beitragseditierung pro User unterbinden

Verfasst: 01.10.2013 18:41
von AYYILDIZLAR
Jobsti hat geschrieben:Ist dann aber Gruppen/Foren spezifisch und gilt auch fest.
Ja, das lässt sich über die Gruppenspezifische Forenrechte lösen(wie bereits oben in meinem Beitrag geschrieben).

Re: Beitragseditierung pro User unterbinden

Verfasst: 01.10.2013 19:17
von Crizzo
Wäre es auch eine Alternative, wenn du in bestimmten Foren das Editieren aller Beiträge bzw. des ersten Beitrags eines Thema erlauben könntest? Und in den restlichen Foren gilt dann trotzdem das x Stunden-Limit?

Die Lösung könnte ich dir direkt anbieten.

Re: Beitragseditierung pro User unterbinden

Verfasst: 28.10.2013 23:10
von Jobsti
Das wäre auf jeden Fall schonmal was ;)

Re: Beitragseditierung pro User unterbinden

Verfasst: 29.10.2013 19:07
von Crizzo
Gut, das geht so:

posting.php
Finde:

Code: Alles auswählen

if (!($post_data['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time']))
Ersetze mit:

Code: Alles auswählen

if (!($post_data['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time']) && !(in_array($forum_id, array(22)) && $post_data['topic_first_post_id'] == $post_data['post_id']))


viewtopic.php:
Finde:

Code: Alles auswählen

($row['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'])
Ersetze mit:

Code: Alles auswählen

($row['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'] || (in_array($forum_id, array(22)) && $post_data['topic_first_post_id'] == $post_data['post_id']))
In dem Fall können die Leute im Forum mit der ID "22" noch ihre Startbeiträge ändern. Die 22 kann natürlich durch weitere IDs ergänzt werden.

Grüße