News:

Bored?  Looking to kill some time?  Want to chat with other SMF users?  Join us in IRC chat or Discord

Main Menu

[Tutorial] PM Lesebestätigung für gesendete Nachrichten

Started by noex, February 28, 2006, 08:04:30 AM

Previous topic - Next topic

noex

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
"Jetzt, wo ich weiß wie es geht, versteh ich auch die Gebrauchsanleitung"

chrischan

Hi!
Kann leider das "<div style="overflow: auto; width: 100%;">', $message['body'], '</div>"
in der personalmassage.template... nicht finden  ???

gruß
chris

steinbock

Hi bei mir auch.
Ausserdem steht nach
Quotewhile ($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

noex

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"

noex

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"

chrischan


steinbock

Hi, bei mir werden nicht alle Mails bestätigt.

Ausserdem ist dieser Teil
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

ernomo98


V-Mann

ja würd mich auch intressieren, ich probiers gerne aus, aber zuvor wüsste ich doch gern ob schon jemand erfahrungen damit gemacht hat ;)))

NacoyaTarsk

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?

mediman

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.

ernomo98


jpch

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

Sprudel

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

rois

Quote from: jpch 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


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.

ernomo98

Quote from: mediman 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


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

ernomo98

weiss wirklich niemand wie das geht, oder braucht das wirklich niemand?
Danke

Jessikard

ich wäre auch brennend daran interessiert, allerdings mit einer Version, die mit smf 1.1.1 läuft

bitteeeeeeeeeeeeeeeeeeeeeeeeeeeee  :-*

acherontic

gibts mittlerweile neue infos zu diesem thema bzgl. der aktuellen version 1.1.4

Jessikard

bin auch mittlerweile auf der 1.1.4 und es wäre schön wenn es sowas gäbe

Advertisement: