Benutzer können eigene Beiträge editieren und löschen ??

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
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.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
reinsle
Mitglied
Beiträge: 93
Registriert: 26.02.2005 18:21
Wohnort: Pfronten
Kontaktdaten:

Beitrag von reinsle »

Hy,

das ist ja super, sowas hab ich gesucht. Mein Problem ist jetzt, wie kann ich steuern, dass ein User beim Forum A immer editieren kann, beim Forum B nur 24 Std, beim Forum C nur 1 Std.

Habt ihr da bereits schon was?

Danke euch.
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

Verschiedene Foren verschiedene Zeiten:

Code: Alles auswählen

----- öffne -----
posting.php

----- finde -----
		$sql = "SELECT f.*, t.topic_id, t.topic_status, t.topic_type, t.topic_first_post_id, t.topic_last_post_id, t.topic_vote, p.post_id, p.poster_id" . $select_sql . " 

----- finde in dieser Zeile -----
p.poster_id

----- füge danach ein -----
, p.post_time


----- finde -----
		if ( $post_info['poster_id'] != $userdata['user_id'] && !$is_auth['auth_mod'] )

----- füge davor ein -----
		switch($post_info[forum_id])
		{
			case 1: //Forum mit id 1
				$delete_time = 86400; // 60*60*24=86400 - 60 Sekunden * 60 Minuten * 24 Stunden = Zeit in Sekunden
				break;

			case 3: //Forum mit id 3
				$delete_time = 3600; // 60*60*1=86400 - 60 Sekunden * 60 Minuten * 1 Stunden = Zeit in Sekunden
				break;

			default: //Standard
				$delete_time = 1209600; // 60*60*24*14=86400 - 60 Sekunden * 60 Minuten * 24 Stunden * 14 Tage = Zeit in Sekunden
				break;
		}


----- finde -----
		if ( $post_info['poster_id'] != $userdata['user_id'] && !$is_auth['auth_mod'] )
		{
			$message = ( $delete || $mode == 'delete' ) ? $lang['Delete_own_posts'] : $lang['Edit_own_posts'];
			$message .= '<br /><br />' . sprintf($lang['Click_return_topic'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">', '</a>');

			message_die(GENERAL_MESSAGE, $message);
		}

----- füge danach ein -----
		// nur eine bestimmte Zeit editieren oder löschen
		else if ( $post_info['post_time']+$delete_time <= time() && !$is_auth['auth_mod'] )
		{
			$message = ( $delete || $mode == 'delete' ) ? 'Beitr&auml;ge k&ouml;nnen nur ' . $delete_time . ' Sekunden lang gel&ouml;scht werden.' : 'Beitr&auml;ge k&ouml;nnen nur ' . $delete_time . ' Sekunden lang editiert werden.';
			$message .= '<br /><br />' . sprintf($lang['Click_return_topic'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id") . '">', '</a>');
			message_die(GENERAL_MESSAGE, $message);
		}
Vorher ein Backup der Datei machen.

Gruß Christian
---
reinsle
Mitglied
Beiträge: 93
Registriert: 26.02.2005 18:21
Wohnort: Pfronten
Kontaktdaten:

Beitrag von reinsle »

Hy

danke fuer deine Schnelle Antwort, aber ich bin grad am Nachdenken, wie ich das evtl. so einbauen kann, dass ich das bei den Einstellungen in den Foren selber schon mit angeben kann. So default 0, also keine Zeitliche beschränkung, und sonst angabe in Minuten oder so aehnlich.

Aber nochmals Danke
reinsle
Mitglied
Beiträge: 93
Registriert: 26.02.2005 18:21
Wohnort: Pfronten
Kontaktdaten:

Beitrag von reinsle »

Hy,

ich hab mir jetzt folgendes Ueberlegt:

Ich erweiter die Tabelle phpbb_forums um ein Feld posts_edit_time, in dem die Zeit gespeichert wird, die man einen Beitrag editieren darf. Dazu gibts auch beim einstellen der Forenseinstellungen eine Feld. 0 bedeutet keine Einschraenkung.

So, dann wird in posting.php eben dieses Feld geprueft, ind je nach Berechtigung darf der User editieren/loeschen, oder es kommt eine Fehlermeldung.

Was meint ihr, ist das machbar??
Bekomme ich sowas hin?? <- blöde Frage *gg*
Christian_W
Ehemaliges Teammitglied
Beiträge: 5703
Registriert: 26.02.2004 00:09

Beitrag von Christian_W »

reinsle hat geschrieben:Was meint ihr, ist das machbar??
Sicher.
reinsle hat geschrieben:Bekomme ich sowas hin?
Das werden wir ja dann sehen. ;)

Für evtl. auftretenden Fragen wäre dann das das richtige Forum:
MOD - Entwicklung

Gruß Christian
---
reinsle
Mitglied
Beiträge: 93
Registriert: 26.02.2005 18:21
Wohnort: Pfronten
Kontaktdaten:

Beitrag von reinsle »

Hy,

also ich hab jetzt einen Mod dafür erstellt.

Man hat jetzt in den Foreneinstellungen dir möglichkeit, eine EditTime zu hinterlegen. Beim Posten wird diese dann abgefragt, und entsprechenderweisse kommt dann eine Fehlermeldung. Hat noch jemand Interesse an diesem MOD??
niknaim
Mitglied
Beiträge: 22
Registriert: 08.02.2005 19:39

Beitrag von niknaim »

Hi!

Habe meine posting.php genauso editiert wie beschrieben...aber bei mir können die registrierten User trotzdem die ganze Zeit editieren!

Habe das phpbb2...leigt das daran???
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“