diff options
author | Simon L'nu <simon.lnu@gmail.com> | 2012-02-29 23:26:49 -0500 |
---|---|---|
committer | Simon L'nu <simon.lnu@gmail.com> | 2012-02-29 23:26:49 -0500 |
commit | b7ab2a2fc92bbd7ec3a506e18f950579e10719eb (patch) | |
tree | 951a691592d7a52a85267da7aba9c2d8e15a53bd /include/enotify.php | |
parent | 68554741465e92fe2e462b8de4470ddd0eb91302 (diff) | |
parent | bd2c8c92f1b30d8f811bd4aab0fe3a2c5496ec61 (diff) | |
download | volse-hubzilla-b7ab2a2fc92bbd7ec3a506e18f950579e10719eb.tar.gz volse-hubzilla-b7ab2a2fc92bbd7ec3a506e18f950579e10719eb.tar.bz2 volse-hubzilla-b7ab2a2fc92bbd7ec3a506e18f950579e10719eb.zip |
Merge branch 'master', remote-tracking branch 'remotes/upstream/master'
* remotes/upstream/master:
yet more work on notifications
notification enhancements
better handling of multiple notifications for same item, and old notifications
* master:
Diffstat (limited to 'include/enotify.php')
-rwxr-xr-x | include/enotify.php | 36 |
1 files changed, 33 insertions, 3 deletions
diff --git a/include/enotify.php b/include/enotify.php index 76e7eb9dc..a505f1f04 100755 --- a/include/enotify.php +++ b/include/enotify.php @@ -25,6 +25,9 @@ function notification($params) { $title = $body = ''; } + // e.g. "your post", "David's photo", etc. + $possess_desc = t('%s <!item_type!>'); + if($params['type'] == NOTIFY_MAIL) { $subject = sprintf( t('[Friendica:Notify] New mail received at %s'),$sitename); @@ -41,7 +44,32 @@ function notification($params) { // logger("notification: params = " . print_r($params, true), LOGGER_DEBUG); $parent_id = $params['parent']; + + + // if it's a post figure out who's post it is. + + $p = null; + + if($params['otype'] === 'item' && $parent_id) { + $p = q("select * from item where id = %d and uid = %d limit 1", + intval($parent_id), + intval($params['uid']) + ); + } + + $possess_desc = str_replace('<!item_type!>',item_post_type($p[0]),$possess_desc); + + // "a post" + $dest_str = sprintf($possess_desc,'a'); + + // "George Bull's post" + if($p) + $dest_str = sprintf($possess_desc,sprintf( t("%s's"),$p[0]['author-name'])); + // "your post" + if($p[0]['owner-name'] == $p[0]['author-name'] && $p[0]['wall']) + $dest_str = sprintf($possess_desc, t('your') ); + // Some mail softwares relies on subject field for threading. // So, we cannot have different subjects for notifications of the same thread. // Before this we have the name of the replier on the subject rendering @@ -49,7 +77,7 @@ function notification($params) { $subject = sprintf( t('[Friendica:Notify] Comment to conversation #%d by %s'), $parent_id, $params['source_name']); $preamble = sprintf( t('%s commented on an item/conversation you have been following.'), $params['source_name']); - $epreamble = sprintf( t('%s commented in %s.'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('a watched conversation') . '[/url]'); + $epreamble = sprintf( t('%s commented on %s.'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . $dest_str . '[/url]'); $sitelink = t('Please visit %s to view and/or reply to the conversation.'); $tsitelink = sprintf( $sitelink, $siteurl ); @@ -149,6 +177,7 @@ function notification($params) { $datarray['date'] = datetime_convert(); $datarray['uid'] = $params['uid']; $datarray['link'] = $itemlink; + $datarray['parent'] = $parent_id; $datarray['type'] = $params['type']; $datarray['verb'] = $params['verb']; $datarray['otype'] = $params['otype']; @@ -157,8 +186,8 @@ function notification($params) { // create notification entry in DB - $r = q("insert into notify (hash,name,url,photo,date,uid,link,type,verb,otype) - values('%s','%s','%s','%s','%s',%d,'%s',%d,'%s','%s')", + $r = q("insert into notify (hash,name,url,photo,date,uid,link,parent,type,verb,otype) + values('%s','%s','%s','%s','%s',%d,'%s',%d,%d,'%s','%s')", dbesc($datarray['hash']), dbesc($datarray['name']), dbesc($datarray['url']), @@ -166,6 +195,7 @@ function notification($params) { dbesc($datarray['date']), intval($datarray['uid']), dbesc($datarray['link']), + intval($datarray['parent']), intval($datarray['type']), dbesc($datarray['verb']), dbesc($datarray['otype']) |