Advertisement:

Author Topic: [Tutorial] PM Lesebestätigung für gesendete Nachrichten  (Read 46356 times)

Offline noex

  • Language Moderator
  • Local Moderator
  • SMF Hero
  • *
  • Posts: 1,764
  • Gender: Male
  • Der Mensch denkt und Gott lacht...
    • inveoo.com
[Tutorial] PM Lesebestätigung für gesendete Nachrichten
« on: February 28, 2006, 08:04:30 AM »
Mit der folgenden Änderung sieht man ob die gesendete private Nachricht vom Empfänger gelesen wurde.

SMF 1.1 RC1

Suche in der Datei Sources/PersonalMessage.php nach:

Code: (Suche) [Select]
// Get recipients (don't include bcc-recipients for your inbox, you're not supposed to know :P).
$request = db_query("
SELECT pmr.ID_PM, mem_to.ID_MEMBER AS ID_MEMBER_TO, mem_to.realName AS toName, pmr.bcc, pmr.labels, pmr.is_read
FROM {$db_prefix}pm_recipients AS pmr
LEFT JOIN {$db_prefix}members AS mem_to ON (mem_to.ID_MEMBER = pmr.ID_MEMBER)
WHERE pmr.ID_PM IN (" . implode(', ', $pms) . ")", __FILE__, __LINE__);

und ersetze den Code mit folgenden:
Code: (Ersetzen) [Select]
// Get recipients (don't include bcc-recipients for your inbox, you're not supposed to know :P).
$request = db_query("
SELECT pmr.ID_PM, mem_to.ID_MEMBER AS ID_MEMBER_TO, mem_to.realName AS toName, pmr.bcc, pmr.labels, pmr.is_read" . ($context['folder'] == 'outbox' ? ", pmr.is_read" : '') . "
FROM {$db_prefix}pm_recipients AS pmr
LEFT JOIN {$db_prefix}members AS mem_to ON (mem_to.ID_MEMBER = pmr.ID_MEMBER)
WHERE pmr.ID_PM IN (" . implode(', ', $pms) . ")", __FILE__, __LINE__);

Suche nach:
Code: (Suche) [Select]
while ($row = mysql_fetch_assoc($request))
{
if ($context['folder'] == 'outbox' || empty($row['bcc']))
$recipients[$row['ID_PM']][empty($row['bcc']) ? 'to' : 'bcc'][] = empty($row['ID_MEMBER_TO']) ? $txt[28] : '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER_TO'] . '">' . $row['toName'] . '</a>';

und füge diesen hinzu:
Code: (Hinzufügen) [Select]
if($context['folder'] == 'outbox')
$recipients[$row['ID_PM']]['is_read'] = $row['is_read'];
            

Suche nun in der Datei Themes/default/PersonalMesssage.template.php nach:
Code: (Suche) [Select]
// People it was sent directly to....
if (!empty($message['recipients']['to']))
echo implode(', ', $message['recipients']['to']);
// Otherwise, we're just going to say "some people"...
elseif ($context['folder'] != 'outbox')
echo '(', $txt['pm_undisclosed_recipients'], ')';

echo ' <b> ', $txt[30], ':</b> ', $message['time'], ' »</div>';

und füge danach folgenden Code hinzu:
Code: (Hinzufügen) [Select]

if($context['folder'] == 'outbox')
{
echo '<br />';
foreach($message['recipients']['to'] as $person)
{
echo $person . ' hat diese Nachricht ' . ($message['recipients']['is_read'] == '1' ? 'gelesen' : 'NICHT gelesen') . '.<br />';
}
}


Original von: Oldiesmann
Deutsche Übersetzung von: noex
« Last Edit: March 04, 2006, 01:40:48 AM by noex »
"Jetzt, wo ich weiß wie es geht, versteh ich auch die Gebrauchsanleitung"

Offline chrischan

  • Semi-Newbie
  • *
  • Posts: 50
  • Gender: Male
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #1 on: March 01, 2006, 05:49:51 AM »
Hi!
Kann leider das "<div style="overflow: auto; width: 100%;">', $message['body'], '</div>"
in der personalmassage.template... nicht finden  ???

gruß
chris

Offline steinbock

  • Semi-Newbie
  • *
  • Posts: 29
  • Gender: Male
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #2 on: March 01, 2006, 08:50:27 AM »
Hi bei mir auch.
Ausserdem steht nach
Quote
while ($row = mysql_fetch_assoc($request))
bei mir noch
Quote
{   
       if ($context['folder'] == 'outbox' || empty($row['bcc']))
{

und diesen Eintrag gibts zwei mal.
Hoster: Funpic.de :: MK Portal 1.1.2b :: SMF 1.1.4

Offline noex

  • Language Moderator
  • Local Moderator
  • SMF Hero
  • *
  • Posts: 1,764
  • Gender: Male
  • Der Mensch denkt und Gott lacht...
    • inveoo.com
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #3 on: March 01, 2006, 02:51:38 PM »
okay, arbeite gerade an einer aktuellen Version und korrigiere die Fehler, Lösung poste ich dann hier...
"Jetzt, wo ich weiß wie es geht, versteh ich auch die Gebrauchsanleitung"

Offline noex

  • Language Moderator
  • Local Moderator
  • SMF Hero
  • *
  • Posts: 1,764
  • Gender: Male
  • Der Mensch denkt und Gott lacht...
    • inveoo.com
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #4 on: March 01, 2006, 03:16:12 PM »
Update: Hab die Codestellen angepasst und im ersten Post geändert. Beachtet bitte das ich einen ersetzen Befehl durch einen hinzufügen Befehl getauscht habe!

lg
noex
"Jetzt, wo ich weiß wie es geht, versteh ich auch die Gebrauchsanleitung"

Offline chrischan

  • Semi-Newbie
  • *
  • Posts: 50
  • Gender: Male
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #5 on: March 02, 2006, 02:33:42 AM »
supe, hat prima geklappt, dankesehr!!  :D

Offline steinbock

  • Semi-Newbie
  • *
  • Posts: 29
  • Gender: Male
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #6 on: March 05, 2006, 04:59:41 AM »
Hi, bei mir werden nicht alle Mails bestätigt.

Ausserdem ist dieser Teil
Code: [Select]
while ($row = mysql_fetch_assoc($request))
{
if ($context['folder'] == 'outbox' || empty($row['bcc']))
$recipients[$row['ID_PM']][empty($row['bcc']) ? 'to' : 'bcc'][] = empty($row['ID_MEMBER_TO']) ? $txt[28] : '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER_TO'] . '">' . $row['toName'] . '</a>';
doppelt vorhanden.
Muss bei beiden Stellen der Code hinzugefügt werden?

SMF 1.1 RC2
Hoster: Funpic.de :: MK Portal 1.1.2b :: SMF 1.1.4

Offline ernomo98

  • Jr. Member
  • **
  • Posts: 175
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #7 on: March 05, 2006, 04:33:03 PM »
funktioniert das auch im 1.1RC2?

Offline V-Mann

  • Semi-Newbie
  • *
  • Posts: 20
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #8 on: March 23, 2006, 04:47:55 AM »
ja würd mich auch intressieren, ich probiers gerne aus, aber zuvor wüsste ich doch gern ob schon jemand erfahrungen damit gemacht hat ;)))

Offline NacoyaTarsk

  • Newbie
  • *
  • Posts: 8
  • Gender: Female
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #9 on: April 11, 2006, 06:56:42 AM »
Hab alle aufgeführten Änderungen gemacht, aber ich bekomm keine Bestätigung ob die PM gelesen wurde oder nicht. Benutzte aber auch 1.1RC2 ... sind da andere/weiterführende Änderungen zu machen damit es funktioniert?

Offline mediman

  • SMF Friend
  • SMF Hero
  • *
  • Posts: 2,663
  • Gender: Male
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #10 on: August 06, 2006, 10:01:59 AM »
Es gibt bereits seit längerer Zeit eine Modifikation von mir, allerdings muss dringend eine neue Lösung gefunden werden, da alle Mods davon ausgehen, dass nur ein Recipient vorhanden ist.

Ein Bild des Mods ist angehangen (RC2)

mediman
My Projects: http://ticker-oase.de 
Please do not PM me with support requests.

Offline ernomo98

  • Jr. Member
  • **
  • Posts: 175
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #11 on: August 27, 2006, 05:47:18 PM »
@all

kann jemand sagen wo diese modifikation ist?

Offline jpch

  • Semi-Newbie
  • *
  • Posts: 44
  • Gender: Male
    • Swiss Joomla! Support
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #12 on: November 08, 2006, 03:54:14 AM »
Hi Ihr,

Funktioniert das auch in SMF 1.1 RC 3 ? und ja, wo findet man den mod ?

Danke
Thanks
Pete

System:
Joomla 1.0.12 <
SMF 1.1.2
Brdige 1.1.6

Offline Sprudel

  • Semi-Newbie
  • *
  • Posts: 38
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #13 on: November 19, 2006, 12:34:41 PM »
Hallo,

ich finde die Modifikation von mediman leider auch nicht.  :(

Kann mir da jemand einen Hinweis geben wo diese Modifikation sich versteckt, das wäre sehr nett.  :)


Grüße
Sprudel

Offline rois

  • Newbie
  • *
  • Posts: 9
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #14 on: November 25, 2006, 06:03:56 AM »
Hi Ihr,

Funktioniert das auch in SMF 1.1 RC 3 ? und ja, wo findet man den mod ?

Danke


Beschäftigt mich auch sehr brennend!!!
Wie muss man bei RC3 vorgehen?

Ich denke,eine gute Modification muss her,denn andere nicht so sehr bekannte Boards als das SMF,haben so etwas standard! :(

Ich finde,so etwas müsste längst implementiert sein.

Offline ernomo98

  • Jr. Member
  • **
  • Posts: 175
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #15 on: April 30, 2007, 04:04:32 AM »
Es gibt bereits seit längerer Zeit eine Modifikation von mir, allerdings muss dringend eine neue Lösung gefunden werden, da alle Mods davon ausgehen, dass nur ein Recipient vorhanden ist.

Ein Bild des Mods ist angehangen (RC2)

mediman


mediman, hast du das auf die neue version(1.1.2) aktuallisiert? Ist eine super Funktion, kann man sehr gut brauchen.

Offline ernomo98

  • Jr. Member
  • **
  • Posts: 175
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #16 on: May 15, 2007, 12:53:41 PM »
weiss wirklich niemand wie das geht, oder braucht das wirklich niemand?
Danke

Offline Jessikard

  • Jr. Member
  • **
  • Posts: 236
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #17 on: May 18, 2007, 01:36:52 AM »
ich wäre auch brennend daran interessiert, allerdings mit einer Version, die mit smf 1.1.1 läuft

bitteeeeeeeeeeeeeeeeeeeeeeeeeeeee  :-*

Offline acherontic

  • Newbie
  • *
  • Posts: 9
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #18 on: March 07, 2008, 12:03:51 AM »
gibts mittlerweile neue infos zu diesem thema bzgl. der aktuellen version 1.1.4

Offline Jessikard

  • Jr. Member
  • **
  • Posts: 236
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #19 on: March 07, 2008, 05:09:55 AM »
bin auch mittlerweile auf der 1.1.4 und es wäre schön wenn es sowas gäbe

Offline acherontic

  • Newbie
  • *
  • Posts: 9
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #20 on: March 07, 2008, 01:03:19 PM »
hey, es funktioniert - auch in Version 1.1.4! aber nur, wenn ihr beim schreiben einer pm das häckchen bei "Kopie im Ausgang speichern" angeklickt habt. dann könnt ihr im ordner "postausgang" sehen, ob jemand die nachricht schon gelesen hat oder nicht ...

ich hab den code (fast) genauso eingefügt, wie es noex weiter oben beschrieben hat.
- in sources/PersonalMessage.php wird der erste teil ab Zeile 482 und der zweite Teil wird zwischen die Zeilen 492 und 493 eingefügt, sodass
der Code (ab Zeile 476) so aussehen müsste
Code: [Select]
mysql_free_result($request);

if (!empty($pms))
{
// Get recipients (don't include bcc-recipients for your inbox, you're not supposed to know :P).
$request = db_query("
SELECT pmr.ID_PM, mem_to.ID_MEMBER AS ID_MEMBER_TO, mem_to.realName AS toName, pmr.bcc, pmr.labels, pmr.is_read" . ($context['folder'] == 'outbox' ? ", pmr.is_read" : '') . "
FROM {$db_prefix}pm_recipients AS pmr
LEFT JOIN {$db_prefix}members AS mem_to ON (mem_to.ID_MEMBER = pmr.ID_MEMBER)
WHERE pmr.ID_PM IN (" . implode(', ', $pms) . ")", __FILE__, __LINE__);
$context['message_labels'] = array();

und ab Zeile 490 so:

Code: [Select]
if ($context['folder'] == 'outbox' || empty($row['bcc']))
$recipients[$row['ID_PM']][empty($row['bcc']) ? 'to' : 'bcc'][] = empty($row['ID_MEMBER_TO']) ? $txt[28] : '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER_TO'] . '">' . $row['toName'] . '</a>';

if($context['folder'] == 'outbox')
$recipients[$row['ID_PM']]['is_read'] = $row['is_read'];

if ($row['ID_MEMBER_TO'] == $ID_MEMBER && $context['folder'] != 'outbox')

- in Themes/default/PersonalMesssage.template.php wird der code ab Zeile 371 eingefügt, sodass der Code (beginnend ab Zeile 359) so aussehen müsste:

Code: [Select]
// Show who the message was sent to.
echo '
<div class="smalltext">&#171; <b> ', $txt['sent_to'], ':</b> ';

// People it was sent directly to....
if (!empty($message['recipients']['to']))
echo implode(', ', $message['recipients']['to']);
// Otherwise, we're just going to say "some people"...
elseif ($context['folder'] != 'outbox')
echo '(', $txt['pm_undisclosed_recipients'], ')';

echo ' <b> ', $txt[30], ':</b> ', $message['time'], ' &#187;</div>';

if($context['folder'] == 'outbox')
{
echo '<br />';
foreach($message['recipients']['to'] as $person)
{
echo $person . ' hat diese Nachricht ' . ($message['recipients']['is_read'] == '1' ? 'gelesen' : 'NICHT gelesen') . '.<br />';
}
}

// If we're in the outbox, show who it was sent to besides the "To:" people.

Ergänzen möchte ich :
das funktioniert nur, wenn man beim Absenden einer PM auch angibt, dass eine Kopie im Postausgang gespeichert werden soll. Dann sieht man dort bei den gesendeten PM's über dem geschriebenen Text "xxxx hat diese Nachricht gelesen" bzw. "... NICHT gelesen"
« Last Edit: March 07, 2008, 01:11:51 PM by acherontic »

Offline Jessikard

  • Jr. Member
  • **
  • Posts: 236
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #21 on: March 07, 2008, 02:23:36 PM »
 :D cooooool, es funzt super megafettes Dankeschön :-*

Offline atrsc2003

  • Semi-Newbie
  • *
  • Posts: 12
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #22 on: April 20, 2008, 11:06:10 AM »
hallo!

Ich habe das versucht nach zu vollziehen und bekomme folgende Fehlermeldung :
-----------------------------------------------------
Parse error: syntax error, unexpected T_STRING in /is/htdocs/wp1072687_2XYCC92U7J/quasselbox/Sources/PersonalMessage.php on line 489
------------------------------------------------------

Andreas

« Last Edit: April 20, 2008, 11:29:55 AM by atrsc2003 »

Offline B-S-G

  • Semi-Newbie
  • *
  • Posts: 15
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #23 on: May 15, 2008, 02:11:38 AM »
Hallo,

nette Sache, funktioniert soweit auch.

Problem: Sobald der Empfänger auf die PM antwortet (egal ob 'antworten' oder 'zitieren'), wandert der Status wieder auf "Nicht gelesen".

Ist das bei euch auch so (V. 1.1.5)?

Offline atrsc2003

  • Semi-Newbie
  • *
  • Posts: 12
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #24 on: May 15, 2008, 03:46:25 PM »
hallo!

Ich habe das versucht nach zu vollziehen und bekomme folgende Fehlermeldung :
-----------------------------------------------------
Parse error: syntax error, unexpected T_STRING in /is/htdocs/wp1072687_2XYCC92U7J/quasselbox/Sources/PersonalMessage.php on line 489
------------------------------------------------------

Andreas



Hallo!

Habe den Fehler gefunden.....da ich den zu suchenden String wohl irgendwie nicht hatte konnte der auch nicht ersetzt werden. Scheint also Super einwandfrei zu funktionierten. Herzliches danke!:-)

Andreas

Offline B-S-G

  • Semi-Newbie
  • *
  • Posts: 15
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #25 on: May 19, 2008, 06:41:19 AM »
Problem: Sobald der Empfänger auf die PM antwortet (egal ob 'antworten' oder 'zitieren'), wandert der Status wieder auf "Nicht gelesen".

Hat dazu noch jemand eine Idee?  ???

Offline halfmoon

  • Newbie
  • *
  • Posts: 1
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #26 on: July 12, 2008, 05:16:41 AM »
Hallo Zusammen,

ich habe das gleiche Problem, Nachrichten werden in den Status "NICHT gelesen" versetzt sobald eine
Antowert oder Zitat erfolgt.

Änderungen habe ich laut der ersten How To durchgeführt.

Ich verwende SMF 1.1.5

Hoffe es kann jemand helfen und weis eine Lösung oder einen Ansatz.

Gruss HalfMoon


Problem: Sobald der Empfänger auf die PM antwortet (egal ob 'antworten' oder 'zitieren'), wandert der Status wieder auf "Nicht gelesen".

Hat dazu noch jemand eine Idee?  ???

Offline Nachtfalke

  • Semi-Newbie
  • *
  • Posts: 76
  • Gender: Male
    • Studentin aus Trier vermisst; seit 14 Monaten fehlt von Tanja Gräff jede Spur
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #27 on: July 27, 2008, 06:21:44 AM »
Also DAS möchte ich auch haben  8)

Ich benutze SMF 1.1.5

Gibt es da schon ne gut funktionierende Lösung???

Gruß, Thorsten
>>> Tanja Gräff, Studentin aus Trier, wird seit 14 Monaten vermisst | http://www.findet-tanjagraeff.de <<<

Offline Jessikard

  • Jr. Member
  • **
  • Posts: 236
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #28 on: August 14, 2008, 10:22:19 AM »
 :( wir haben auch das Problem mit dem Status, dass der wieder auf ungelesen geht - help please

Offline joker

  • Semi-Newbie
  • *
  • Posts: 96
  • Gender: Male
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #29 on: April 25, 2009, 06:33:26 AM »
Gibt es eine aktuellere version zu diesem MOD oder paßt sie auch zu 1.1.8?
joker ;-)

Offline dieter4

  • SMF Hero
  • ******
  • Posts: 2,855
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #30 on: April 25, 2009, 06:59:49 AM »
Probiere es mal lokal aus. Vllt funktioniert es noch in 1.1.8.

Offline daGroove

  • Semi-Newbie
  • *
  • Posts: 61
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #31 on: April 28, 2009, 05:36:48 PM »
funktioniert bei mir einwandfrei mit 1.1.8... bis auf das problem das gelesene messages bei antwort wieder als ungelesen erscheinen... was allerdings nicht auf einen bug dieser modifikation zurück zu führen ist...

ergo das ding macht unter 1.1.8 genau das was es machen soll :) ob einem das ergebnis dann gefällt ist halt geschmacksache...

mir recihts erstmal  8)
wer zum teufel bin ich und wenn ja wieviele?

Offline Shorti25

  • Semi-Newbie
  • *
  • Posts: 60
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #32 on: July 05, 2011, 05:18:22 AM »
funktioniert das auch bei 2.0 gold ?

Offline Nightwish76

  • Semi-Newbie
  • *
  • Posts: 55
Re: [Tutorial] PM Lesebestätigung für gesendete Nachrichten
« Reply #33 on: November 30, 2011, 08:32:56 AM »
Funktioniert das auch mit SMF 2.0.1 bzw. gibt es vielleicht sogar eine Mod (Paket) dafür?