Hallo,
ich habe vor kurzem den "Password Protected Topics"-Mod eingebaut, womit man passwortgeschützte Themen erstellen kann. Alles lief wunderbar, bis mir dann ein User auf meinem Forum mitgeteilt hat, dass er den 1. Post des Threads nicht editieren kann. Wenn er dies versucht, sieht es bei ihm so aus: http://img70.exs.cx/img70/3814/editerror9yj.jpg
Bei dem Mod wird die posting.php so verändert, dass der Administrator bei dem 1. Posting eines Threads ein Passwort eingeben kann. Sieht dann so aus: http://img78.exs.cx/img78/6199/pw5qa.jpg Das klappt bei mir auch wunderbar, nur bin ich als Admin leider der Einzige der die ersten Posts eines Threads editieren kann, was natürlich sehr unpraktisch ist und zwingend Doppelposts fördert.
Ich wäre demjenigen sehr verbunden, der sich mal die Installations-txt des Mods mal anschauen könnte, warum dieser die posting.php so verändert, dass normale User ihre 1. Postings nicht mehr editieren können.
Hier ist noch meine gemodete posting.php.
Vielen Dank schonmal!
1 Mod - 1 Datei - 1 Problem !
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
-
- Mitglied
- Beiträge: 2
- Registriert: 15.04.2005 22:25
Also, ich habe selbst eine Lösung dafür gefunden: Du setzt einfach ein Passwort für einen Thread und entfernst den "[ BEFORE, ADD]"-Teil einfach. Somit können die User wieder ihre Posts editieren und auch das Passwort funktioniert. Wenn du mal wieder ein PW-geschützten Thread aufmachen willst, musst du den "[ BEFORE, ADD]"-Teil kurz einbauen und das Passwort bestimmen. Danach einfach wieder weg damit. Da ich nicht viele PW-Threads habe, macht es für mich nicht viel Umstand.
Vom Mod-Author selber habe ich auf Anfrage noch diese Mail bekommen, habe es jedoch nicht ausprobiert:
Code: Alles auswählen
---- posting.php -----
#
#-----[ FIND ]--------------------------------------------
#
if ( $mode == 'editpost' || $mode == 'delete' || $mode == 'poll_delete' )
{
#
#-----[ BEFORE, ADD ]-------------------------------------
#
$show_password_box = ( $mode == 'newtopic' || ($mode == 'editpost' && $post_info['topic_first_post_id'] == $post_id) ) ? TRUE : 0;
if( $userdata['user_level'] != ADMIN && ($mode == 'editpost' || $mode == 'delete' || $mode == 'poll_delete') && $post_info['topic_first_post_id'] == $post_id )
{
message_die(GENERAL_MESSAGE, $lang['Not_auth_edit_topic']);
}
Vom Mod-Author selber habe ich auf Anfrage noch diese Mail bekommen, habe es jedoch nicht ausprobiert:
ByeHi,
My _sincere_ apologies for this extremely late reply. I have had a
number of matters to work through.
To solve your problem, the following change should be sufficient:
> OPEN: posting.php
>
> FIND:
> $show_password_box = ( $mode == 'newtopic' || ($mode == 'editpost'
&&
> $post_info['topic_first_post_id'] == $post_id) ) ? TRUE : 0;
> if( $userdata['user_level'] != ADMIN && ($mode == 'editpost' ||
$mode
> == 'delete' || $mode == 'poll_delete') &&
> $post_info['topic_first_post_id'] == $post_id )
>
> REPLACE WITH:
> $show_password_box = ( $mode == 'newtopic' || ($mode == 'editpost'
&&
> $post_info['topic_first_post_id'] == $post_id) ) ? TRUE : 0;
> if( ($mode == 'editpost' || $mode == 'delete' || $mode ==
> 'poll_delete') && $post_info['topic_first_post_id'] == $post_id )
>
> SAVE & CLOSE ALL FILES
-
- Mitglied
- Beiträge: 2
- Registriert: 15.04.2005 22:25
Hmm, danke für den Hinweis, auch wenn es nicht ganz das ist was ich eigentlich erreichen wollte, aber folgendes scheint ganz gut zu funktionieren:
Dann kann jeder der schreiben darf auch ein Topic mit Passwort machen und das Posting auch gewohnt editieren.
Der Patch an der ersten Datei behebt den Fehler mit der leeren Fehlermeldung wenn man nicht editieren darf. Da war einfach ein falscher Name angegeben für den String.
Code: Alles auswählen
#
# --- [ OPEN ] ----
#
language/lang_xxx/lang_main.php
#
# --- [ FIND ] ----
#
$lang['Not_auth_edit_post']
#
# --- [ REPLACE WITH ] ----
#
$lang['Not_auth_edit_topic']
#
# --- [ OPEN ] ----
#
posting.php
#
# --- [ FIND ] ----
#
if( $show_password_box && $userdata['user_level'] == ADMIN )
#
# --- [ REPLACE WITH ] ----
#
if( $show_password_box )
#
# --- [ FIND ] ----
#
if( $userdata['user_level'] != ADMIN && ($mode == 'editpost' || $mode == 'delete' || $mode == 'poll_delete') && $post_info['topic_first_post_id'] == $post_id )
{
message_die(GENERAL_MESSAGE, $lang['Not_auth_edit_topic']);
}
#
# --- [ REPLACE WITH ] ----
#
// if( $userdata['user_level'] != ADMIN && ($mode == 'editpost' || $mode == 'delete' || $mode == 'poll_delete') && $post_info['topic_first_post_id'] == $post_id )
// {
// message_die(GENERAL_MESSAGE, $lang['Not_auth_edit_topic']);
// }
Der Patch an der ersten Datei behebt den Fehler mit der leeren Fehlermeldung wenn man nicht editieren darf. Da war einfach ein falscher Name angegeben für den String.