Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- myModule -> config.php
- //-------------------------------------------------------------------
- // Notification Center
- //-------------------------------------------------------------------
- $GLOBALS['NOTIFICATION_CENTER']['NOTIFICATION_TYPE']['myModule'] = array
- (
- 'BENACHRICHTIGUNG_1' => array(
- 'recipients' => array('admin_email', 'user_email'), // Tokens im Empfängerfeld
- 'email_subject' => array('user_name', 'betreff'), // Tokens im Betrefffeld
- 'email_text' => array('user_name', 'user_email'), // Tokens im E-Mail PlainTextfeld
- 'email_html' => array('user_name', 'user_email'), // Tokens im E-Mail HTMLTextfeld
- 'email_recipient_cc' => array('user_email', 'admin_email'), // Tokens im Kopie an Feld
- 'email_recipient_bcc' => array('user_email', 'admin_email'), // Tokens im Blindkopie an Feld
- 'email_replyTo' => array('user_email', 'admin_email'), // Tokens im Antwortadresse Feld
- ),
- 'BENACHRICHTIGUNG_2' => array(
- 'recipients' => array('admin_email', 'user_email'), // Tokens im Empfängerfeld
- 'email_subject' => array('user_name', 'betreff'), // Tokens im Betrefffeld
- 'email_text' => array('user_name', 'user_email'), // Tokens im E-Mail PlainTextfeld
- 'email_html' => array('user_name', 'user_email'), // Tokens im E-Mail HTMLTextfeld
- 'email_recipient_cc' => array('user_email', 'admin_email'), // Tokens im Kopie an Feld
- 'email_recipient_bcc' => array('user_email', 'admin_email'), // Tokens im Blindkopie an Feld
- 'email_replyTo' => array('user_email', 'admin_email'), // Tokens im Antwortadresse Feld
- ),
- .
- .
- .
- .
- );
- myModule -> languages -> de -> tokens.php
- $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['user_email'] = 'E-Mail des Mitglieds';
- $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['user_name'] = 'Name des Mitglieds';
- $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['admin_email'] = 'Admin E-Mail Adresse';
- $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['preis'] = 'Gesamtpreis';
- $GLOBALS['TL_LANG']['NOTIFICATION_CENTER_TOKEN']['myModule']['betreff'] = 'Betreff';
- im Module dann die NC auslösen und die Werte der Tokens übergeben
- //-----------------------------------------------------------------
- // Notification auslösen
- //-----------------------------------------------------------------
- protected function sendNotification($arrData) //$arrData die übergebenen Daten für die Benachrichtigung
- {
- if( class_exists('\NotificationCenter\Model\Notification') ) {
- $objMember = \FrontendUser::getInstance(); // Dieses Beispiel holt Daten eines angemeldeten Mitglieds
- $this->objMember = \MemberModel::findByPk($objMember->id);
- //=== Benachrichtigungen senden ===
- $myNC = "BENACHRICHTIGUNG_1"; // wie in der config.php als NC angelegt
- $objNotificationCollection = \NotificationCenter\Model\Notification::findByType( $myNC );
- if( $objNotificationCollection === NULL ) {
- $this->log('Benachrichtigung "BENACHRICHTIGUNG_1" fehlgeschlagen', __METHOD__, TL_ERROR);
- return;
- }
- $arrTokens = array();
- $arrTokens['user_email'] = $this->objMember->email;
- $arrTokens['admin_email'] = 'admin@foo.bar';
- $arrTokens['user_name'] = $this->objMember->firstname . " " .$objMember->lastname ;
- $arrTokens['subject'] = $arrData['subject'];
- $arrTokens['text_html'] = '<table><tr><td>'.$arrData['html_text'].'</td></tr></table>';
- .
- .
- .
- // weitere Tokens wie in config.php angelegt
- while( $objNotificationCollection->next() ) { // alle angelegten Benachrichtigungen abarbeiten
- $objNotification = $objNotificationCollection->current();
- $objNotification->send( $arrTokens );
- }
- }
- else {
- $this->log('Notification-Center ist nicht installiert!', __METHOD__, TL_ERROR);
- }
- return;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement