From 1b9c03f6fc67e8230a06e6dddae59974c1f8ba56 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 18 Feb 2012 02:57:42 -0800 Subject: [PATCH] new notifications - implement storage --- include/diaspora.php | 1 + include/enotify.php | 31 +++++++++++++++++++++++++------ include/items.php | 5 +++++ mod/dfrn_request.php | 1 + mod/item.php | 2 ++ 5 files changed, 34 insertions(+), 6 deletions(-) diff --git a/include/diaspora.php b/include/diaspora.php index a116e6a447..a8e02e5097 100755 --- a/include/diaspora.php +++ b/include/diaspora.php @@ -1308,6 +1308,7 @@ function diaspora_conversation($importer,$xml,$msg) { 'language' => $importer['language'], 'to_name' => $importer['username'], 'to_email' => $importer['email'], + 'uid' =>$importer['importer_uid'], 'item' => array('subject' => $subject, 'body' => $body), 'source_name' => $person['name'], 'source_link' => $person['url'], diff --git a/include/enotify.php b/include/enotify.php index 6e7130bc88..ec26439dc6 100755 --- a/include/enotify.php +++ b/include/enotify.php @@ -32,7 +32,7 @@ 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, '' . $sitename . ''); - $itemlink = ''; + $itemlink = $siteurl . '/message'; } if($params['type'] == NOTIFY_COMMENT) { @@ -100,9 +100,27 @@ function notification($params) { } - // TODO - create notification entry in DB + // from here on everything is in the recipients language + push_lang($params['language']); + require_once('include/html2bbcode.php'); + + // create notification entry in DB + + $r = q("insert into notify (name,url,photo,date,msg,uid,link,type,verb,otype) + values('%s','%s','%s','%s','%s',%d,'%s',%d,'%s','%s')", + dbesc($params['source_name']), + dbesc($params['source_link']), + dbesc($params['source_photo']), + dbesc(datetime_convert()), + dbesc($preamble), + intval($params['uid']), + dbesc($itemlink), + intval($params['type']), + dbesc($params['verb']), + dbesc($params['otype']) + ); // send email notification if notification preferences permit @@ -111,7 +129,6 @@ function notification($params) { logger('notification: sending notification email'); - push_lang($params['language']); $textversion = strip_tags(html_entity_decode(bbcode(stripslashes(str_replace(array("\\r\\n", "\\r", "\\n"), "\n", $body))),ENT_QUOTES,'UTF-8')); @@ -126,7 +143,7 @@ function notification($params) { '$preamble' => $preamble, '$sitename' => $sitename, '$siteurl' => $siteurl, - '$source_name' => $parama['source_name'], + '$source_name' => $params['source_name'], '$source_link' => $params['source_link'], '$source_photo' => $params['source_photo'], '$username' => $params['to_name'], @@ -146,7 +163,7 @@ function notification($params) { '$preamble' => $preamble, '$sitename' => $sitename, '$siteurl' => $siteurl, - '$source_name' => $parama['source_name'], + '$source_name' => $params['source_name'], '$source_link' => $params['source_link'], '$source_photo' => $params['source_photo'], '$username' => $params['to_name'], @@ -171,8 +188,10 @@ function notification($params) { 'htmlVersion' => $email_html_body, 'textVersion' => $email_text_body )); - pop_lang(); } + + pop_lang(); + } require_once('include/email.php'); diff --git a/include/items.php b/include/items.php index 1bf73bc360..f4837449d7 100755 --- a/include/items.php +++ b/include/items.php @@ -977,6 +977,7 @@ function tag_deliver($uid,$item_id) { 'language' => $u[0]['language'], 'to_name' => $u[0]['username'], 'to_email' => $u[0]['email'], + 'uid' => $u[0]['uid'], 'item' => $item, 'link' => $a->get_baseurl() . '/display/' . $u[0]['nickname'] . '/' . $item['id'], 'source_name' => $item['author-name'], @@ -1848,6 +1849,7 @@ function local_delivery($importer,$data) { 'language' => $importer['language'], 'to_name' => $importer['username'], 'to_email' => $importer['email'], + 'uid' => $importer['importer_uid'], 'item' => $fsugg, 'link' => $a->get_baseurl() . '/notifications/intros', 'source_name' => $importer['name'], @@ -1899,6 +1901,7 @@ function local_delivery($importer,$data) { 'language' => $importer['language'], 'to_name' => $importer['username'], 'to_email' => $importer['email'], + 'uid' => $importer['importer_uid'], 'item' => $msg, 'source_name' => $msg['from-name'], 'source_link' => $importer['url'], @@ -2171,6 +2174,7 @@ function local_delivery($importer,$data) { 'language' => $importer['language'], 'to_name' => $importer['username'], 'to_email' => $importer['email'], + 'uid' => $importer['importer_uid'], 'item' => $datarray, 'link' => $a->get_baseurl() . '/display/' . $importer['nickname'] . '/' . $posted_id, 'source_name' => stripslashes($datarray['author-name']), @@ -2291,6 +2295,7 @@ function local_delivery($importer,$data) { 'language' => $importer['language'], 'to_name' => $importer['username'], 'to_email' => $importer['email'], + 'uid' => $importer['importer_uid'], 'item' => $datarray, 'link' => $a->get_baseurl() . '/display/' . $importer['nickname'] . '/' . $posted_id, 'source_name' => stripslashes($datarray['author-name']), diff --git a/mod/dfrn_request.php b/mod/dfrn_request.php index aa14bc473d..ceec83e90b 100755 --- a/mod/dfrn_request.php +++ b/mod/dfrn_request.php @@ -577,6 +577,7 @@ function dfrn_request_content(&$a) { 'language' => $r[0]['language'], 'to_name' => $r[0]['username'], 'to_email' => $r[0]['email'], + 'uid' => $r[0]['uid'], 'link' => $a->get_baseurl() . '/notifications/intros', 'source_name' => ((strlen(stripslashes($r[0]['name']))) ? stripslashes($r[0]['name']) : t('[Name Withheld]')), 'source_link' => $r[0]['url'], diff --git a/mod/item.php b/mod/item.php index e59b45acc5..3035989f36 100755 --- a/mod/item.php +++ b/mod/item.php @@ -746,6 +746,7 @@ function item_post(&$a) { 'language' => $user['language'], 'to_name' => $user['username'], 'to_email' => $user['email'], + 'uid' => $user['uid'], 'item' => $datarray, 'link' => $a->get_baseurl() . '/display/' . $user['nickname'] . '/' . $post_id, 'source_name' => $datarray['author-name'], @@ -788,6 +789,7 @@ function item_post(&$a) { 'language' => $user['language'], 'to_name' => $user['username'], 'to_email' => $user['email'], + 'uid' => $user['uid'], 'item' => $datarray, 'link' => $a->get_baseurl() . '/display/' . $user['nickname'] . '/' . $post_id, 'source_name' => $datarray['author-name'],