]> git.mxchange.org Git - friendica.git/blobdiff - include/enotify.php
quattro: add "view in context" link in search results
[friendica.git] / include / enotify.php
old mode 100644 (file)
new mode 100755 (executable)
index 05d2783..9df9b57
@@ -1,26 +1,8 @@
 <?php
 
-
-               // send email notification if requested.
-/*
-               $notif_params = array(
-                       'type' => NOTIFY_MAIL,
-                       'notify_flags' => $importer['notify-flags'],
-                       'language' => $importer['language'],
-                       'to_name' => $importer['username'],
-                       'to_email' => $importer['email'],
-                       'item' => $msg,
-                       'source_name' => $msg['from-name'],
-                       'source_link' => $importer['url'],
-                       'source_photo' => $importer['thumb'],
-               );
-*/                     
-               //notification($notif_params);
-
-
 function notification($params) {
 
-       logger('notification: entry');
+       logger('notification: entry', LOGGER_DEBUG);
 
        $a = get_app();
        $banner = t('Friendica Notification');
@@ -30,16 +12,19 @@ function notification($params) {
        $sitename = get_config('config','sitename');
        $site_admin = sprintf( t('%s Administrator'), $sitename);
 
-       $sender_name = t('Administrator');
+       $sender_name = $product;
        $sender_email = t('noreply') . '@' . $a->get_hostname();
 
-       $title = $params['item']['title'];
-       $body = $params['item']['body'];
+       if(array_key_exists('item',$params)) {
+               $title = $params['item']['title'];
+               $body = $params['item']['body'];
+       }
+       else {
+               $title = $body = '';
+       }
 
        if($params['type'] == NOTIFY_MAIL) {
 
-               logger('notification: email');
-
                $subject =      sprintf( t('New mail received at %s'),$sitename);
 
                $preamble = sprintf( t('%s sent you a new private message at %s.'),$params['source_name'],$sitename);
@@ -47,15 +32,66 @@ function notification($params) {
                $sitelink = t('Please visit %s to view and/or reply to your private messages.');
                $tsitelink = sprintf( $sitelink, $siteurl . '/message' );
                $hsitelink = sprintf( $sitelink, '<a href="' . $siteurl . '/message">' . $sitename . '</a>');
+               $itemlink = '';
+       }
+
+       if($params['type'] == NOTIFY_COMMENT) {
+
+               $subject = sprintf( t('%s commented on an item at %s'), $params['source_name'], $sitename);
+               $preamble = sprintf( t('%s commented on an item/conversation you have been following.'), $params['source_name']); 
+               $sitelink = t('Please visit %s to view and/or reply to the conversation.');
+               $tsitelink = sprintf( $sitelink, $siteurl );
+               $hsitelink = sprintf( $sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
+               $itemlink =  $params['link'];
+       }
+
+       if($params['type'] == NOTIFY_WALL) {
+               $preamble = $subject =  sprintf( t('%s posted to your profile wall at %s') , $params['source_name'], $sitename);
+
+               $sitelink = t('Please visit %s to view and/or reply to the conversation.');
+               $tsitelink = sprintf( $sitelink, $siteurl );
+               $hsitelink = sprintf( $sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
+               $itemlink =  $params['link'];
+       }
+
+       if($params['type'] == NOTIFY_INTRO) {
+               $subject = sprintf( t('Introduction received at %s'), $sitename);
+               $preamble = sprintf( t('You\'ve received an introduction from \'%s\' at %s'), $params['source_name'], $sitename); 
+               $body = sprintf( t('You may visit their profile at %s'),$params['source_link']);
+
+               $sitelink = t('Please visit %s to approve or reject the introduction.');
+               $tsitelink = sprintf( $sitelink, $siteurl );
+               $hsitelink = sprintf( $sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
+               $itemlink =  $params['link'];
+       }
+
+       if($params['type'] == NOTIFY_SUGGEST) {
+               $subject = sprintf( t('Friend suggestion received at %s'), $sitename);
+               $preamble = sprintf( t('You\'ve received a friend suggestion from \'%s\' at %s'), $params['source_name'], $sitename); 
+               $body = t('Name:') . ' ' . $params['item']['name'] . "\n";
+               $body .= t('Photo:') . ' ' . $params['item']['photo'] . "\n";
+               $body .= sprintf( t('You may visit their profile at %s'),$params['item']['url']);
+
+               $sitelink = t('Please visit %s to approve or reject the suggestion.');
+               $tsitelink = sprintf( $sitelink, $siteurl );
+               $hsitelink = sprintf( $sitelink, '<a href="' . $siteurl . '">' . $sitename . '</a>');
+               $itemlink =  $params['link'];
        }
 
+       if($params['type'] == NOTIFY_CONFIRM) {
+
+       }
+
+       // TODO - create notification entry in DB
+
+
 
        // send email notification if notification preferences permit
 
        require_once('bbcode.php');
        if(intval($params['notify_flags']) & intval($params['type'])) {
 
-               logger('notification: sending email');
+               logger('notification: sending notification email');
 
                push_lang($params['language']);
 
@@ -77,6 +113,7 @@ function notification($params) {
                        '$source_photo' => $params['source_photo'],
                        '$username'     => $params['to_name'],
                        '$hsitelink'    => $hsitelink,
+                       '$itemlink'     => '<a href="' . $itemlink . '">' . $itemlink . '</a>',
                        '$thanks'       => $thanks,
                        '$site_admin'   => $site_admin,
                        '$title'                => stripslashes($title),
@@ -96,13 +133,14 @@ function notification($params) {
                        '$source_photo' => $params['source_photo'],
                        '$username'     => $params['to_name'],
                        '$tsitelink'    => $tsitelink,
+                       '$itemlink'     => $itemlink,
                        '$thanks'       => $thanks,
                        '$site_admin'   => $site_admin,
                        '$title'                => stripslashes($title),
                        '$textversion'  => $textversion,        
                ));
 
-               logger('text: ' . $email_text_body);
+//             logger('text: ' . $email_text_body);
 
                // use the EmailNotification library to send the message
 
@@ -135,11 +173,9 @@ class enotify {
         */
        static public function send($params) {
 
-               logger('enotify: send: ' . print_r($params,true));
                $fromName = email_header_encode($params['fromName'],'UTF-8'); 
                $messageSubject = email_header_encode($params['messageSubject'],'UTF-8');
                
-               
                // generate a mime boundary
                $mimeBoundary   =rand(0,9)."-"
                                .rand(10000000000,9999999999)."-"
@@ -149,7 +185,7 @@ class enotify {
                // generate a multipart/alternative message header
                $messageHeader =
                        "From: {$params['fromName']} <{$params['fromEmail']}>\n" . 
-                       "Reply-To: {$params['replyTo']}\n" .
+                       "Reply-To: {$params['fromName']} <{$params['replyTo']}>\n" .
                        "MIME-Version: 1.0\n" .
                        "Content-Type: multipart/alternative; boundary=\"{$mimeBoundary}\"";
 
@@ -174,7 +210,7 @@ class enotify {
                        $multipartMessageBody,                                                  // message body
                        $messageHeader                                                                  // message headers
                );
-               logger("sendTextHtmlEmail: returns " . $res, LOGGER_DEBUG);
+               logger("notification: enotify::send returns " . $res, LOGGER_DEBUG);
        }
 }
 ?>
\ No newline at end of file