Frage zum " Post_Move instead Deleting" Mod

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Benutzeravatar
Ergonomic
Beiträge: 66
Registriert: Di 28.Nov, 2006 05:32
Wohnort: M?nster
Kontaktdaten:

Beitrag von Ergonomic »

Hallo

Wo im ACP muss ich das einstellen? Ich finde die entsprechende Stelle leider nicht.

Gruss Ergonomic

Edit: Ok habs doch gerade gefunden.
Zuletzt geändert von Ergonomic am Fr 11.Mai, 2007 19:01, insgesamt 1-mal geändert.
Das freundliche Forum f?r alles was mit Reptilien und Terraristik zu tun hat.

reptiliencommunity.de
Benutzeravatar
beedy
Beiträge: 33
Registriert: Mo 03.Apr, 2006 19:07
Wohnort: Berlin
Kontaktdaten:

Beitrag von beedy »

Ich häng mich hier auch mal an, ich hab den Mod nun auch installiert und gerade getestet, aber folgendes festgestellt:

Löscht ein Moderator einen ganzen Topic, so wird der Topic wie gewünscht in den Papierkorb verschoben.

Löscht ein Moderator aber einen Beitrag eines Topics, so ist der Beitrag komplett weg, endgültig gelöscht.

Sollte der Beitrag dann nicht auch im Papierkorb auftauchen? :hh:

Ich hab mal vorsichtshalber schonmal die modcp.php und die functions_post.php angehängt, vielleicht ist ja jemand so nett, mir vielleicht zu helfen? ;)


Gruß!

beedy
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wo hat denn der Moderator den Beitrag gelöscht?
Der MOD unterscheidet hier nicht zwischen Topic und Post. Beide Male wird gleich entschieden.
Und dazu muss der Moderator auch Moderator in dem betreffenden Forum sein und die Einstellungen im ACP müssen passen, sonst löscht er entweder wie ein Admin direkt oder wie ein User in den Papierkorb.
Die Dateien sind jedenfalls korrekt gemoddet.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
beedy
Beiträge: 33
Registriert: Mo 03.Apr, 2006 19:07
Wohnort: Berlin
Kontaktdaten:

Beitrag von beedy »

^5 Hmmm....

Na das ist schon mal gut zu hören, dass die Files stimmen!


Ich habe ein neues Forum erstellt, auf den nur Admins Zugriff haben, habe die Foren ID im Adminbereich eingetragen.

Den Punkt "Erlaube Moderatoren Beiträge zu löschen" habe ich auf Nein gesetzt.

Ich habe einen Testmoderator im Testforum eingetragen mit den Standard-Moderatorenrechten und habe dann einen Beitrag gelöscht und einen ganzen Topic.


Der Topic erscheint im Papierkorb, der Beitrag nicht. :(

Der Löschbutton im Beitrag greift ja auf die posting.php zu, der Löschbutton unterhalb des Beitrags auf die modcp.php, liegt da vielleicht der Hund begraben?

Gruß!

beedy
Zuletzt geändert von beedy am So 02.Mär, 2008 14:01, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Bei beiden ist der Ablauf der gleiche:
Die Bedingungen prüfen, ob der Moderator eben direkt löschen darf oder nicht.
Steht in der functions_post.php oder der modcp.php aus irgend einem Grunde die $board_config nicht vollständig zur Verfügung, macht das Script Fehler.
Wird der Wert hierin für diesen MOD verändert, so löscht z. B der Moderator ggf. auch direkt.
Dinge, die ich nicht weiß, da ich Dein Forum nicht kenne.

Alles andere kann ich ausschliessen, denn der MOD arbeitet im Normalfall so oder so fehlerfrei...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
beedy
Beiträge: 33
Registriert: Mo 03.Apr, 2006 19:07
Wohnort: Berlin
Kontaktdaten:

Beitrag von beedy »

Hmmm, ich hab die functions_post nochmal durchgeschaut und bis auf diesen Block ist alles so wie in der Modanleitung:

Code: Alles auswählen

#
#-----[ FIND ]------------------------------------------
#
	if ($mode != 'poll_delete')
	{
		$sql = "UPDATE " . USERS_TABLE . "
			SET user_posts = user_posts $sign 
			WHERE user_id = $user_id";
		if (!$db->sql_query($sql, END_TRANSACTION))
		{
			message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
		}
	}


#
#-----[ REPLACE WITH ]------------------------------------------
#
	if (($mode == 'delete' && ($forum_id != (int) $board_config['delete_post_forum'])) || ($mode != 'poll_delete' && $mode != 'delete'))
	{
		$sql = "UPDATE " . USERS_TABLE . "
			SET user_posts = user_posts $sign 
			WHERE user_id = $user_id";
		if (!$db->sql_query($sql, END_TRANSACTION))
		{
			message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
		}
	}

Bei mir sieht der Block so aus:

Code: Alles auswählen

        if ($mode != 'poll_delete')
        {
                $sql = "SELECT forum_count_posts FROM ". FORUMS_TABLE . " WHERE forum_id = " . $forum_id;
                $result = $db->sql_query($sql);
                if( $row = $db->sql_fetchrow($result) )
                {
                        if( $row['forum_count_posts'] == 1 )
                        {

                                $sql = "UPDATE " . USERS_TABLE . "
                                        SET user_posts = user_posts $sign
                                        WHERE user_id = $user_id";
                                if (!$db->sql_query($sql, END_TRANSACTION))
                                {
                                        message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
                                }
                        }
                }
        }
Und das hab ich draus gemacht:

Code: Alles auswählen

        if (($mode == 'delete' && ($forum_id != (int) $board_config['delete_post_forum'])) || ($mode != 'poll_delete' && $mode != 'delete'))
        {
                $sql = "SELECT forum_count_posts FROM ". FORUMS_TABLE . " WHERE forum_id = " . $forum_id;
                $result = $db->sql_query($sql);
                if( $row = $db->sql_fetchrow($result) )
                {
                        if( $row['forum_count_posts'] == 1 )
                        {

                                $sql = "UPDATE " . USERS_TABLE . "
                        SET user_posts = user_posts $sign
                        WHERE user_id = $user_id";
                if (!$db->sql_query($sql, END_TRANSACTION))
                {
                        message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
                }
        }
                }
        }


Kann das an dem Block dazwischen liegen?

Was meinst du damit, dass eventuell die $board_config nicht vollständig zur Verfügung steht?
Welche Gründe könnte das eventuell haben?


Gruß!

beedy
Zuletzt geändert von beedy am So 02.Mär, 2008 20:51, insgesamt 2-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Kann das an dem Block dazwischen liegen?
Nein, das ist schon alles korrekt so.
Was meinst du damit, dass eventuell die $board_config nicht vollständig zur Verfügung steht?
Welche Gründe könnte das eventuell haben?
Nun, die $board_config wird in der common.php erstellt und beinhaltet dann alle Board-Einstellungen, die in der Regel alle im ACP verwaltet werden.
Es kann aber sein, daß irgendwo, z. B. in der page_header.php, ein Wert überschrieben wird, weil ein anderes Script einen gleichlautenden Wert verwendet.
Sollte hier zwar zu 99,99% nicht der Fall sein, aber man weiß ja nie.
Daher als Vermutung eine der Gründe, warum das eine so und das andere anders funtkioniert...
Installiert ist der MOD in Deinen Dateien jedenfalls korrekt.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
beedy
Beiträge: 33
Registriert: Mo 03.Apr, 2006 19:07
Wohnort: Berlin
Kontaktdaten:

Beitrag von beedy »

Hmm, nach welcher Variable / Wert müßte ich denn da Ausschau halten, um dem Fehler auf die Schliche zu kommen?

$board_config['delete_post_forum'] ?


Gruß!

beedy
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Nein, eher der Wert für $board_config['mod_allow_delete_post']
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
beedy
Beiträge: 33
Registriert: Mo 03.Apr, 2006 19:07
Wohnort: Berlin
Kontaktdaten:

Beitrag von beedy »

Ok, Danke dir, dann geh ich erstmal auf die Suche!

Wobei mir die Variable meiner Meinung nach bisher noch nich über den Weg gelaufen ist, aber gut, ich hab auch schon einiges geändert am Forum... ^5


Erstmal herzlichen Dank bis hier her, ich melde mich wieder! ;)


Gruß!

beedy


EDIT:


Hau mich, tret mich, schlag mich, verpaß mir Tiernamen, aber nun geht es plötzlich!?!

Ich muß das nicht verstehen, ich hab seitdem nichts geändert und hab es jetzt nochmal probiert, es funktioniert einwandfrei! :)

Ich hab nicht die geringste Ahnung, warum das beim letzten Mal nicht geklappt hat!

Aber gut, nun geht es! :)

Das Einzigste, was mir aufgefallen ist, was aber denke ich mal nicht von deinem Mod kommt, wenn man versucht, den ersten Beitrag eines Topics löschen will, bekommt man zwar die Meldung, das der Beitrag gelöscht wurde, er aber trotzdem noch da ist, das geht erst beim zweiten Beitrag.
Ist aber denk ich mal gewollt, damit der Zusammenhang eines Topics nicht verloren geht, wenn man den ersten Beitrag löscht!

Ich danke dir vielmals für deine Hilfe!


Gruß!

Stefan
Zuletzt geändert von beedy am Mi 05.Mär, 2008 23:23, insgesamt 1-mal geändert.
Antworten