MyXoops Forum

Forum - myXOOPS German Support

2 + 7 = ?  
Geben Sie das Ergebnis der Berechnung ein
Sie haben max. 10 Versuche.
 
* = Erforderlich

Aw:: E-Mail bei neuer PM! Geht das?

Betreff: Aw:: E-Mail bei neuer PM! Geht das?
von migoe am 27.05.2010 18:42:59

Hallo Alfred,

Zitat:

alfred schrieb:

mal nen Schnellcrashkurs dazu:

- öffne die pmlite.php ...

Das ganze kann man noch schön ausbauen



ich habe aus uralten Xoops 2.0 Zeiten eine Hack gefunden, der früher mal gepasst hat, nun aber leider nicht mehr funktioniert. Wie müßte ich den anpassen, damit er auch mit Version 2.3.3 und eProfile 1.68 funktioniert?

// Hack by marcan to receive Private Message email notification
       
$userHandler =& xoops_gethandler('user');
       
$toUser =& $userHandler->get($HTTP_POST_VARS['to_userid']);
       
// Only send email notif if notification method is mail
       
if ($toUser->notify_method() == 2) {
          
$xoopsMailer =& getMailer();
          
$xoopsMailer->useMail();
          
$xoopsMailer->setToEmails($toUser->email());
          
$xoopsMailer->setFromEmail($xoopsConfig['adminmail']);
          
$xoopsMailer->setTemplate('new_pm.tpl');
          
$xoopsMailer->assign('X_SITENAME'$xoopsConfig['sitename']);
         
$xoopsMailer->assign('X_SITEURL'XOOPS_URL."/");
         
$xoopsMailer->assign('X_ADMINMAIL'$xoopsConfig['adminmail']);
         
$xoopsMailer->assign('X_UNAME'$toUser->uname());
          
$xoopsMailer->assign('X_FROMUNAME'$xoopsUser->uname());
         
$xoopsMailer->assign('X_SUBJECT'$myts->stripSlashesGPC($HTTP_POST_VARS['subject']));
          
$xoopsMailer->assign('X_MESSAGE'$myts->stripSlashesGPC($HTTP_POST_VARS['message']));  
          
$xoopsMailer->assign('X_ITEM_URL'XOOPS_URL "/readpmsg.php?start=" $pm->getVar('msg_id') . "&total_messages=1"); 
          
$xoopsMailer->setFromName($xoopsConfig['sitename']);
          
$xoopsMailer->setSubject(sprintf(_PM_MESSAGEPOSTED_EMAILSUBJ$xoopsConfig['sitename']));
         
$xoopsMailer->setBody($HTTP_POST_VARS['message']);
          
$xoopsMailer->send();
       }


Der Vorteil an dieser Lösung ist das Template, welches mitgeliefert wurde und das individuell gestaltet werden kann. Das Template liegt im Verzeichnis ROOT/language/german/mail_templates/

Gut an diesem Hack ist auch, dass nur die User eine Mailbenachrichtigung erhalten, die das in den persönlichen Einstellungen des Kontos ausgewählt haben. Der Hack, den Du hier auf die schnelle gepostet hast, verschickt immer eine Mail, auch wenn der User das nicht möchte.

Der Hack von marcan kann doch sicher relativ einfach angepasst werden, oder? Über einen Hinweis würde ich mich sehr freuen - vielleicht gibt es ja eine noch bessere Lösung?

migoe

Aktuell aus dem Forum

Forum Thema Antworten Views Letzter Beitrag
Modulentwicklung New Xoops Xcreate Module 0 4217 26.11.2025 15:22
efkan Gehe zum letzten Beitrag
Modulentwicklung XOOPS Custom Field Module 1 1588 24.11.2025 11:21
Goffy Gehe zum letzten Beitrag