Beiträge editieren - Zeitraum begrenzen?

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.
Antworten
Zanthia
Mitglied
Beiträge: 10
Registriert: 02.11.2004 18:29
Wohnort: München
Kontaktdaten:

Beiträge editieren - Zeitraum begrenzen?

Beitrag von Zanthia »

Hallo zusammen!

Seit gestern bin ich stolze Besitzerin eines laufenden phpBB-Forums, wir haben einen ForenUmzug gut überstanden *freu*

Leider habe ich hier die Suche-Funktion vergeblich bemüht bzw. nur einen passenden Beitrag gefunden, auf den aber leider niemals jemand geantwortet hatte.

Gibt es irgendeine Möglichkeit, den Zeitraum der Editiermöglichkeit für die User zu beschränken? Bis zum nächsten geposten Beitrag, für eine Stunde, für einen Tag oder wie auch immer?

Würde mich über eine Antwort freuen!
Liebe Grüße
Biene
Benutzeravatar
Amdosh
Mitglied
Beiträge: 1011
Registriert: 21.10.2003 08:03

Beitrag von Amdosh »

Im Standart ist das editieren entweder erlaubt oder nicht, immer auf einen Ordner bezogen. Solange niemand einen weiteren Beitrag "anhängt", kann man editieren so oft man will, danach wird angezeigt, dass man editiert hat (nicht wenn ein Admin an einen fremden Beitrag es gemacht hat).

Über die Gruppen/Forenverwaltung (eigentlich Privatforen, gilt aber auch so dann) kann man für jede Gruppe/Unterforen einstellen, was geht und was nicht. Man kann zum Beispiel auch spezielle Foren anlegen, die quasi ein Archiv oder "Sicherstellungsordner" sind, um die Beiträge so vor weiteren Änderungen schützen kann, wenn jemand über die Strenge geschlagen hat oder die Themen halt für die Nachwelt aufgehoben werden sollen.

Grüsse Amdosh
Internetweisheiten:
Nutze die Fehlersuche, bringt schnellere Ergebnisse als ewig zu warten
Suche in der Foren/Doku(suche), sehr viele Dinge stehen oft genug zur sofortigen Verfügung.
Max
Mitglied
Beiträge: 1051
Registriert: 20.02.2003 22:22

Beitrag von Max »

oder Du machst das so:

Code: Alles auswählen

############################################################################################################################ 
## MOD Titel: Edit/Delete_only_ last_post 
## MOD Version: 1.00 - 13.09.2003 
## MOD Author: A. Oymann / www.retriever-hilfe.de / webmaster@retriever-hilfe.de 
## MOD Beschreibung: Der Mod bewirkt, daß nur der letzte Beitrag eines Topics vom User geändert / gelöscht werden kann. 
## MOD Installationslevel: leicht 
## MOD getestet unter phpBB: 2.0.4 
## MOD Installationszeit: 5 Minuten 
## Zu editierende Dateien (3): 
## <phpBB2-Forum-Root>/posting.php 
## <phpBB2-Forum-Root>/viewtopic.php 
## <phpBB2-Forum-Root>/language/lang_german/lang_main.php 
############################################################################################################################    
## This MOD is released under the GPL License. 
## Intellectual Property is retained by the MOD Author(s) listed above 
## http://www.gnu.org 
############################################################################################################################ 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD !!! 
## 
## Bevor Du diesen MOD einbaust, solltest Du ein vollständiges Backup Deines Forums erstellen !!! 
############################################################################################################################ 

Installation des Mods: 

############################################################################################################################ 

# 
#-----[ ÖFFNE ]------------------------------------------ 
# 

<phpBB2-Forum-Root>/posting.php 

# 
#-----[ 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); 
      } 


# 
#-----[ DANACH FÜGE AN ]------------------------------------ 
# 
  
      else if ( !$post_data['last_post'] && !$is_auth['auth_mod'] ) 
      { 
         $message = ( $delete || $mode == 'delete' ) ? $lang['Delete_last_posts'] : $lang['Edit_last_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); 
      } 

# 
#-----[ ÖFFNE ]------------------------------------------ 
# 

<phpBB2-Forum-Root>/viewtopic.php 

# 
#-----[ FINDE ]------------------------------------------ 
#  

   if ( ( $userdata['user_id'] == $poster_id && $is_auth['auth_edit'] ) || $is_auth['auth_mod'] ) 
   { 
      $temp_url = append_sid("posting.$phpEx?mode=editpost&" . POST_POST_URL . "=" . $postrow[$i]['post_id']); 
      $edit_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_edit'] . '" alt="' . $lang['Edit_delete_post'] . '" title="' . $lang['Edit_delete_post'] . '" border="0" /></a>'; 
      $edit = '<a href="' . $temp_url . '">' . $lang['Edit_delete_post'] . '</a>'; 
   } 

# 
#-----[ ERSETZE DURCH ]------------------------------------------ 
#  

   if ( ( $userdata['user_id'] == $poster_id && $is_auth['auth_edit'] && $forum_topic_data['topic_last_post_id'] == $postrow[$i]['post_id'] ) || $is_auth['auth_mod'] ) 
   { 
      $temp_url = append_sid("posting.$phpEx?mode=editpost&" . POST_POST_URL . "=" . $postrow[$i]['post_id']); 
      $edit_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_edit'] . '" alt="' . $lang['Edit_delete_post'] . '" title="' . $lang['Edit_delete_post'] . '" border="0" /></a>'; 
      $edit = '<a href="' . $temp_url . '">' . $lang['Edit_delete_post'] . '</a>'; 
   } 


# 
#-----[ ÖFFNE ]------------------------------------------ 
# 

<phpBB2-Forum-Root>/language/lang_german/lang_main.php 


# 
#-----[ FINDE ]------------------------------------------ 
#    

$lang['Delete_own_posts'] = 'Du kannst nur deine eigenen Beiträge löschen.'; 

# 
#-----[ DANACH FÜGE AN ]------------------------------------ 
# 
  
$lang['Edit_last_posts'] = 'Du kannst nur den letzten Beitrag eines Themas bearbeiten.'; 
$lang['Delete_last_posts'] = 'Du kannst nur den letzen Beitrag eines Themas löschen.'; 
  
# 
#-----[ SPEICHERE UND SCHLIESSE ALLE DATEIEN UND LADE SIE HOCH ]-------------------------- 
# 
# EoM 
damit können nur Beiträge durch den Verfasser editiert werden, auf die noch nicht geantwortet wurde. Mod und Admin können das natürlich trotzdem noch.



Gruß Max
Zanthia
Mitglied
Beiträge: 10
Registriert: 02.11.2004 18:29
Wohnort: München
Kontaktdaten:

Beitrag von Zanthia »

Hallo!

Danke für Eure Hilfe, gebe ich jetzt an mein technisches Helferchen weiter ;-)

Biene
Max
Mitglied
Beiträge: 1051
Registriert: 20.02.2003 22:22

Beitrag von Max »

Hallo,


habe eben die Antwort auf genau DIE Frage gefunden:

Code: Alles auswählen

## EasyMod 0.0.10a compliant
################################################################# 
## MOD Title: 		Limited Post Edit time
## MOD Author: 		Shannado <sven@shannado.nl> (Sven) http://www.shannado.nl/forumorg
## MOD Description: With this MOD the admin is able to set through the board configuaration, the time (in minutes) a user has 
##					to edit his/her post. When the value is set to '0', the time is unlimited.
##					The check occurs only when the user hits the 'edit'button in the post. 
##					NOT when the user hits the submit button.
##					Moderators & Admins can always edit the post 
## MOD Version: 	1.0.1 
## 
## Installation Level: 	Easy
## Installation Time: 	10 - 20 Minutes 
## Files To Edit: 		posting.php, 
##						lang_main.php, 
##						lang_admin.php, 
##						admin_board.php, 
##						board_config_body.tpl
## Included Files: 	N/A
############################################################## 
## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the 
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code 
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered 
## in our MOD-Database, located at: http://www.phpbb.com/mods/ 
############################################################## 
## Author Notes: 
## 
############################################################## 
## MOD History: 
## 
## ------------
## 01-01-2002 - 0.9.0 beta 
##	- Beta
##
## 01-01-2002 - 1.0.0 FINAL
##	- Final
##
## 01-01-2002 - 1.0.1 FINAL
##	- Made phpBB v2.0.2 complaint and EasyMod 0.0.7 complaint
##
## 05-12-2003 - 1.0.2 FINAL
##	- Made phpBB v2.0.6 complaint and EasyMod 0.0.10a complaint
##	- Adjusted to the new Template
################################################################# 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
################################################################# 
#
#-----[ SQL ]-------------------------------------------
# 
INSERT INTO phpbb_config (config_name, config_value) VALUES ('edit_time', '0')

# 
#-----[ OPEN ]------------------------------------------ 
#  
language/lang_english/lang_admin.php

# 
#-----[ FIND ]------------------------------------------ 
# 
// 
// That's all Folks! 

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 
//limited post edit time MOD
$lang['edit_time'] = 'Post Edit time'; 
$lang['edit_time_explain'] = 'The time (in minutes) the user has to edit his/her post. Setting this value to 0, the time is unlimited.';

# 
#-----[ OPEN ]------------------------------------------ 
#  
language/lang_english/lang_main.php

# 
#-----[ FIND ]------------------------------------------ 
# 
// 
// That's all, Folks! 

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 

//limited post edit time MOD
$lang['edit_time_past'] = 'You are not allowed to edit your post. You have to edit your post within <b>%d</b> minutes, after you posted your message.';

# 
#-----[ OPEN ]------------------------------------------ 
# 
posting.php

# 
#-----[ FIND ]------------------------------------------ 
# 
$select_sql = ( !$submit ) ? ", t.topic_title, p.enable_bbcode, p.enable_html, p.enable_smilies, p.enable_sig, p.post_username, pt.post_subject, pt.post_text, pt.bbcode_uid, u.username, u.user_id, u.user_sig" : '';

# 
#-----[ REPLACE WITH ]------------------------------------------ 
# 
	$select_sql = ( !$submit ) ? ", t.topic_title, p.enable_bbcode, p.enable_html, p.enable_smilies, p.enable_sig, p.post_username, p.post_time, pt.post_subject, pt.post_text, pt.bbcode_uid, u.username, u.user_id, u.user_sig" : '';

# 
#-----[ FIND ]------------------------------------------ 
# 
	else if ( $mode != 'newtopic' && $post_info['topic_status'] == TOPIC_LOCKED && !$is_auth['auth_mod']) 
	{ 
	   message_die(GENERAL_MESSAGE, $lang['Topic_locked']); 
	} 

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
	// 
	// BEGIN - Limited post edit time MOD
	//
	if ( $mode == 'editpost' && !$is_auth['auth_mod'] && $board_config['edit_time'] != '0' && !$submit)
	{
		$current_time = time();
		$difference_sec = $current_time - $post_info['post_time'] ;
		$difference_min = ($current_time - $post_info['post_time']) / 60;
		if ($difference_min > $board_config['edit_time'] )
		{
			$message = sprintf($lang['edit_time_past'],$board_config['edit_time']) . '<br /><br />' . sprintf($lang['Click_view_message'], '<a href="' . append_sid("viewtopic.$phpEx?" . POST_POST_URL . "=" . $post_id) . '#' . $post_id . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_forum'], '<a href="' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id") . '">', '</a>');
			message_die(GENERAL_MESSAGE, $message);
		}
	}

	//
	// END - Limited post edit time MOD
	//

# 
#-----[ OPEN ]------------------------------------------ 
#  
admin/admin_board.php

# 
#-----[ FIND ]------------------------------------------ 
# 
"L_ENABLE_PRUNE" => $lang['Enable_prune'], 

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
	"L_EDIT_TIME" => $lang['edit_time'],
	"L_EDIT_TIME_EXPLAIN" => $lang['edit_time_explain'],

# 
#-----[ FIND ]------------------------------------------ 
# 
	"PRUNE_NO" => $prune_no, 

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
	"EDIT_TIME" => $new['edit_time'], 

# 
#-----[ OPEN ]------------------------------------------ 
# 
templates/SubSilver/admin/board_config_body.tpl

# 
#-----[ FIND ]------------------------------------------ 
# 
   <td class="row2"><input type="radio" name="prune_enable" value="1" {PRUNE_YES} /> {L_YES}&nbsp;&nbsp;<input type="radio" name="prune_enable" value="0" {PRUNE_NO} /> {L_NO}</td> 
</tr> 

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
	<tr> 
	   <td class="row1">{L_EDIT_TIME}<br /><span class="gensmall">{L_EDIT_TIME_EXPLAIN}</span></td> 
	   <td class="row2"><input type="text" size="4" maxlength="4" name="edit_time" value="{EDIT_TIME}" /></td> 
	</tr> 

# 
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 
# 
# EoM

Gruß Max
Benutzeravatar
Volker
Mitglied
Beiträge: 213
Registriert: 27.02.2003 09:18
Wohnort: Erzgebirge
Kontaktdaten:

Beitrag von Volker »

hi,

kann es sein das der Limited post edit time MOD mit der 2.0.10 nicht geht?

er greift nicht auf die db zu, also im acp ist das feld leer und kann reinschreiben was ich will, er mag mich nicht der mod. habe alles noch paar mal angeschaut aber kein fehler gefunden
Gruß Volker
Fuchsien
Benutzeravatar
Volker
Mitglied
Beiträge: 213
Registriert: 27.02.2003 09:18
Wohnort: Erzgebirge
Kontaktdaten:

Beitrag von Volker »

kann da bitte einer mal schauen was man da machen kann? bitte bitte
Gruß Volker
Fuchsien
Kiss News
Mitglied
Beiträge: 1640
Registriert: 31.05.2004 02:04
Wohnort: Österreich
Kontaktdaten:

Beitrag von Kiss News »

Max hat geschrieben:oder Du machst das so:

Code: Alles auswählen

############################################################################################################################ 
## MOD Titel: Edit/Delete_only_ last_post 
## MOD Version: 1.00 - 13.09.2003 
## MOD Author: A. Oymann / www.retriever-hilfe.de / webmaster@retriever-hilfe.de 
## MOD Beschreibung: Der Mod bewirkt, daß nur der letzte Beitrag eines Topics vom User geändert / gelöscht werden kann. 
## MOD Installationslevel: leicht 
## MOD getestet unter phpBB: 2.0.4 
## MOD Installationszeit: 5 Minuten 
## Zu editierende Dateien (3): 
## <phpBB2-Forum-Root>/posting.php 
## <phpBB2-Forum-Root>/viewtopic.php 
## <phpBB2-Forum-Root>/language/lang_german/lang_main.php 
############################################################################################################################    
## This MOD is released under the GPL License. 
## Intellectual Property is retained by the MOD Author(s) listed above 
## http://www.gnu.org 
############################################################################################################################ 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD !!! 
## 
## Bevor Du diesen MOD einbaust, solltest Du ein vollständiges Backup Deines Forums erstellen !!! 
############################################################################################################################ 

Installation des Mods: 

############################################################################################################################ 

# 
#-----[ ÖFFNE ]------------------------------------------ 
# 

<phpBB2-Forum-Root>/posting.php 

# 
#-----[ 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); 
      } 


# 
#-----[ DANACH FÜGE AN ]------------------------------------ 
# 
  
      else if ( !$post_data['last_post'] && !$is_auth['auth_mod'] ) 
      { 
         $message = ( $delete || $mode == 'delete' ) ? $lang['Delete_last_posts'] : $lang['Edit_last_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); 
      } 

# 
#-----[ ÖFFNE ]------------------------------------------ 
# 

<phpBB2-Forum-Root>/viewtopic.php 

# 
#-----[ FINDE ]------------------------------------------ 
#  

   if ( ( $userdata['user_id'] == $poster_id && $is_auth['auth_edit'] ) || $is_auth['auth_mod'] ) 
   { 
      $temp_url = append_sid("posting.$phpEx?mode=editpost&" . POST_POST_URL . "=" . $postrow[$i]['post_id']); 
      $edit_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_edit'] . '" alt="' . $lang['Edit_delete_post'] . '" title="' . $lang['Edit_delete_post'] . '" border="0" /></a>'; 
      $edit = '<a href="' . $temp_url . '">' . $lang['Edit_delete_post'] . '</a>'; 
   } 

# 
#-----[ ERSETZE DURCH ]------------------------------------------ 
#  

   if ( ( $userdata['user_id'] == $poster_id && $is_auth['auth_edit'] && $forum_topic_data['topic_last_post_id'] == $postrow[$i]['post_id'] ) || $is_auth['auth_mod'] ) 
   { 
      $temp_url = append_sid("posting.$phpEx?mode=editpost&" . POST_POST_URL . "=" . $postrow[$i]['post_id']); 
      $edit_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_edit'] . '" alt="' . $lang['Edit_delete_post'] . '" title="' . $lang['Edit_delete_post'] . '" border="0" /></a>'; 
      $edit = '<a href="' . $temp_url . '">' . $lang['Edit_delete_post'] . '</a>'; 
   } 


# 
#-----[ ÖFFNE ]------------------------------------------ 
# 

<phpBB2-Forum-Root>/language/lang_german/lang_main.php 


# 
#-----[ FINDE ]------------------------------------------ 
#    

$lang['Delete_own_posts'] = 'Du kannst nur deine eigenen Beiträge löschen.'; 

# 
#-----[ DANACH FÜGE AN ]------------------------------------ 
# 
  
$lang['Edit_last_posts'] = 'Du kannst nur den letzten Beitrag eines Themas bearbeiten.'; 
$lang['Delete_last_posts'] = 'Du kannst nur den letzen Beitrag eines Themas löschen.'; 
  
# 
#-----[ SPEICHERE UND SCHLIESSE ALLE DATEIEN UND LADE SIE HOCH ]-------------------------- 
# 
# EoM 
damit können nur Beiträge durch den Verfasser editiert werden, auf die noch nicht geantwortet wurde. Mod und Admin können das natürlich trotzdem noch.



Gruß Max
habe diesen Mod mal installiert. funktioniert. Nur eine Frage:
#-----[ FINDE ]------------------------------------------
#

$lang['Delete_own_posts'] = 'Du kannst nur deine eigenen Beiträge löschen.';

#
#-----[ DANACH FÜGE AN ]------------------------------------
#

$lang['Edit_last_posts'] = 'Du kannst nur den letzten Beitrag eines Themas bearbeiten.';
$lang['Delete_last_posts'] = 'Du kannst nur den letzen Beitrag eines Themas löschen.';

#
#-----[ SPEICHERE UND SCHLIESSE ALLE DATEIEN UND LADE SIE HOCH ]--------------------------
#
wozu ist das nötig? Der Button ist ja dann gar nicht mehr da...
Benutzeravatar
TheMorpheus2000
Mitglied
Beiträge: 206
Registriert: 21.02.2007 16:25

Re: Beiträge editieren - Zeitraum begrenzen?

Beitrag von TheMorpheus2000 »

Hi

Sorry fürs Bumpen -

kann mir jemand sagen ob der "Limited Post Edit time" Mod der von Max am 03.11.2004 um 13:13 gepostet wurde, mit der Versionsnummer 1.0.1 mit phpbb 2.0.23 kompatibel ist und die aktuellste Version ist ???

MfG
Morph
Benutzeravatar
TheMorpheus2000
Mitglied
Beiträge: 206
Registriert: 21.02.2007 16:25

Re: Beiträge editieren - Zeitraum begrenzen?

Beitrag von TheMorpheus2000 »

Hi

was hat diese Codezeile zu bedeuten?

Code: Alles auswählen

#-----[ SQL ]-------------------------------------------
#
INSERT INTO phpbb_config (config_name, config_value) VALUES ('edit_time', '0')
Hat dieser db generator etwas damit zu tun ?

Schon ewig her das ich das einmal benutzt hatte ...

Bin dankbar für Hilfe

mfG
Morph

EDIT: Ich verstehe das das phpbb2 nicht mehr supportet wird

möchte aber mein Ergebniss festhalten, falss sich noch jemand dafür interessieren sollte:

Habe hier die Lösung gefunden, angewandt, und funktioniert auf meinem phpbb 2.0.23 Forum

Meine Annahme mit dem db generator war auch richtig - hat super funktioniert ...

MfG,
Morph
Antworten

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