Seite 1 von 2

[erl.] Anzeige, daß zwischenzeitlich jmd anders gepostet hat

Verfasst: 08.04.2008 00:08
von Savigny
Hallo,

ich suche einen Mod, der dem User beim Posten eine Meldung ausgibt und das "Absenden" (zunächst) verhindert, wenn während des Schreibens ein anderer User zwischenzeitlich in dem Thread gepostet hat.

Irgendwo habe ich das in einem Forum mal gesehen, aber ich finde es partout nicht mehr als Mod wieder :cry:

Gruß
Savigny

Verfasst: 08.04.2008 22:15
von jevo
daran wäre ich auch interessiert ...

leider habe ich auch nix gefunden

das problem ist, daß ich nicht genau weis, nach was ich da suchen soll :oops:

Warnung, daß zwischendurch bereits gepostet worden ist

Verfasst: 14.04.2008 21:59
von Savigny
Darf ich diese Suche noch einmal in Erinnerung rufen? Bei mir im Forum häufen sich da die Probleme - und wahrscheinlich sind es doch nur wenige Zeilen, die ergänzt werden müssen?! (So stellt sich das jedenfalls ein "interessierter php-Laie" vor :lol: ).

Verfasst: 14.04.2008 22:08
von PhilippK
Das Feature ist zumindest in phpBB 3.0 vorhanden :-)
Bei 2.0 sind das im Zweifel mehr als ein paar Zeichen - denn da muss die Info, auf welchen Beitrag geantwortet wird, erst weitergegeben werden.

Gruß, Philipp

Verfasst: 14.04.2008 22:27
von Savigny
Danke dafür! Das ist aus "berufenem Mund" ja eine Aussage, auf die man sich verlassen kann :wink: .

(Aber vielleicht findet sich das ja doch noch - auch wenn es umständlicher ist, als von mir gedacht. Leider wird es angesichts 3.0 nur keiner mehr schreiben, wenn es das für 2.0 noch nicht geben sollte... :-? )

Verfasst: 15.04.2008 07:03
von Max
Savigny hat geschrieben:(Aber vielleicht findet sich das ja doch noch ...
Natürlich findet es sich:

Code: Alles auswählen

http://phpbbstyles.com/viewtopic.php?t=4855


This small MOD will add a warning if someone has posted a new message while you are posting yours.
If someone has, a warning will appear so you can see their post first before submitting yours.
It's very handy if you have a busy site.


The xs/xs_topic.tpl file is for the quick reply box. 
It's in a separate file in Aphrodite but is part of viewtopic_body.tpl in Morpheus.




# 
#-----[ OPEN ]------------------------------------------ 
#
includes/functions_post.php


#
#-----[ FIND ]------------------------------------------
#
	else if ($mode != 'delete' && $mode != 'poll_delete') 
	{
		$error_msg .= (!empty($error_msg)) ? '<br />' . $lang['Empty_message'] : $lang['Empty_message'];
	}


#
#-----[ AFTER, ADD ]------------------------------------------
#

	// Check to see if there's a new post while the user is posting
	global $HTTP_POST_VARS;
	global $lang;
	if(!empty($HTTP_POST_VARS['post_time']) && ($mode == 'reply' || $mode == 'quote'))
	{
		global $topic_id;
		$last_post_time = intval($HTTP_POST_VARS['post_time']);
		
			if(isset($topic_id) && $last_post_time)
			{
				$sql = "SELECT post_time FROM " . POSTS_TABLE . " WHERE topic_id = $topic_id ORDER BY post_time DESC LIMIT 0, 1";
				global $db;
				
					if(($result = $db->sql_query($sql)) !== false)
					{
					
						if( $row = $db->sql_fetchrow($result) )
						{
						$last_post_time2 = $row['post_time'];
						
							if($last_post_time2 > $last_post_time)
							{
							$error_msg .= (empty($error_msg) ? '' : '<br />') . $lang['Warn_new_post'];
							}
						}
						
					$db->sql_freeresult($result);
					}
			}
	}  


# 
#-----[ OPEN ]------------------------------------------ 
#
templates/ca_aphrodite/posting_body.tpl


#
#-----[ FIND ]------------------------------------------
#
<form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)" {S_FORM_ENCTYPE}>


#
#-----[ AFTER, ADD ]------------------------------------------
#
<input type="hidden" name="post_time" value="<?php echo time(); ?>" />


# 
#-----[ OPEN ]------------------------------------------ 
#
templates/ca_aphrodite/xs/xs_topic.tpl


#
#-----[ FIND ]------------------------------------------
#
{S_HIDDEN_FIELDS}


#
#-----[ AFTER, ADD ]------------------------------------------
#
<input type="hidden" name="post_time" value="<?php echo time(); ?>" />

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


#
#-----[ FIND ]------------------------------------------
#
?>


#
#-----[ BEFORE, ADD ]------------------------------------------
#
$lang['Warn_new_post'] = 'There is at least one new reply in this thread. Please review new replies in topic review and resubmit your post.';

Viel Spaß damit, auch wenn es doch nur einige Zeilen sind.




Gruß Max

Verfasst: 15.04.2008 11:02
von jevo
oh - schön

ich habe das teil gleich mal eingebaut -> geht wunderbar

tausend dank !

Verfasst: 15.04.2008 22:22
von Savigny
Max, hab herzlichen Dank!! Das funktioniert tadellos :grin: !
Hat sich das "lange Warten" doch gelohnt :wink: !

Verfasst: 17.04.2008 23:58
von Toni
Hallo zusammen,

sobald man die Vorschau einsetzt, funktioniert der Mod nicht mehr, da post_time neu gesetzt wird.

Gibt es da eine Lösung ?

Gruß Toni

Verfasst: 18.04.2008 17:04
von DMX200
WTF?

xs_topic.tpl ???? sowas gibts überhaupt nicht also bei mir nicht