Advertisement
Guest User

NC Beispiel Konfiguration

a guest
Dec 18th, 2017
327
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.98 KB | None | 0 0
  1. myModule -> config.php
  2.  
  3. //-------------------------------------------------------------------
  4. // Notification Center
  5. //-------------------------------------------------------------------
  6. $GLOBALS['NOTIFICATION_CENTER']['NOTIFICATION_TYPE']['myModule'] = array
  7. (
  8. 'BENACHRICHTIGUNG_1' => array(
  9. 'recipients' => array('admin_email', 'user_email'), // Tokens im Empfängerfeld
  10. 'email_subject' => array('user_name', 'betreff'), // Tokens im Betrefffeld
  11. 'email_text' => array('user_name', 'user_email'), // Tokens im E-Mail PlainTextfeld
  12. 'email_html' => array('user_name', 'user_email'), // Tokens im E-Mail HTMLTextfeld
  13. 'email_recipient_cc' => array('user_email', 'admin_email'), // Tokens im Kopie an Feld
  14. 'email_recipient_bcc' => array('user_email', 'admin_email'), // Tokens im Blindkopie an Feld
  15. 'email_replyTo' => array('user_email', 'admin_email'), // Tokens im Antwortadresse Feld
  16. ),
  17. 'BENACHRICHTIGUNG_2' => array(
  18. 'recipients' => array('admin_email', 'user_email'), // Tokens im Empfängerfeld
  19. 'email_subject' => array('user_name', 'betreff'), // Tokens im Betrefffeld
  20. 'email_text' => array('user_name', 'user_email'), // Tokens im E-Mail PlainTextfeld
  21. 'email_html' => array('user_name', 'user_email'), // Tokens im E-Mail HTMLTextfeld
  22. 'email_recipient_cc' => array('user_email', 'admin_email'), // Tokens im Kopie an Feld
  23. 'email_recipient_bcc' => array('user_email', 'admin_email'), // Tokens im Blindkopie an Feld
  24. 'email_replyTo' => array('user_email', 'admin_email'), // Tokens im Antwortadresse Feld
  25. ),
  26. .
  27. .
  28. .
  29. .
  30. );
  31.  
  32. myModule -> languages -> de -> tokens.php
  33.  
  34. $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['user_email'] = 'E-Mail des Mitglieds';
  35. $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['user_name'] = 'Name des Mitglieds';
  36. $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['admin_email'] = 'Admin E-Mail Adresse';
  37. $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['preis'] = 'Gesamtpreis';
  38. $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['betreff'] = 'Betreff';
  39.  
  40.  
  41.  
  42. im Module dann die NC auslösen und die Werte der Tokens übergeben
  43.  
  44. //-----------------------------------------------------------------
  45. // Notification auslösen
  46. //-----------------------------------------------------------------
  47. protected function sendNotification($arrData) //$arrData die übergebenen Daten für die Benachrichtigung
  48. {
  49. if( class_exists('\NotificationCenter\Model\Notification') ) {
  50.  
  51. $objMember = \FrontendUser::getInstance(); // Dieses Beispiel holt Daten eines angemeldeten Mitglieds
  52. $this->objMember = \MemberModel::findByPk($objMember->id);
  53.  
  54. //=== Benachrichtigungen senden ===
  55.  
  56. $myNC = "BENACHRICHTIGUNG_1"; // wie in der config.php als NC angelegt
  57.  
  58. $objNotificationCollection = \NotificationCenter\Model\Notification::findByType( $myNC );
  59. if( $objNotificationCollection === NULL ) {
  60. $this->log('Benachrichtigung "BENACHRICHTIGUNG_1" fehlgeschlagen', __METHOD__, TL_ERROR);
  61. return;
  62. }
  63.  
  64. $arrTokens = array();
  65. $arrTokens['user_email'] = $this->objMember->email;
  66. $arrTokens['admin_email'] = 'admin@foo.bar';
  67. $arrTokens['user_name'] = $this->objMember->firstname . " " .$objMember->lastname ;
  68. $arrTokens['subject'] = $arrData['subject'];
  69. $arrTokens['text_html'] = '<table><tr><td>'.$arrData['html_text'].'</td></tr></table>';
  70. .
  71. .
  72. .
  73. // weitere Tokens wie in config.php angelegt
  74.  
  75. while( $objNotificationCollection->next() ) { // alle angelegten Benachrichtigungen abarbeiten
  76. $objNotification = $objNotificationCollection->current();
  77. $objNotification->send( $arrTokens );
  78. }
  79. }
  80. else {
  81. $this->log('Notification-Center ist nicht installiert!', __METHOD__, TL_ERROR);
  82. }
  83.  
  84. return;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement