]> git.mxchange.org Git - friendica.git/commitdiff
Notifications are now storing the uri-id as well
authorMichael <heluecht@pirati.ca>
Sat, 2 May 2020 13:12:11 +0000 (13:12 +0000)
committerMichael <heluecht@pirati.ca>
Sat, 2 May 2020 13:12:11 +0000 (13:12 +0000)
include/enotify.php
static/dbstructure.config.php

index 2ae7a99157a2c72f43111020f9369f8bb22536ad..bd96ca5d2e80fdc8e084b8b22a45e0afd2d3d0b5 100644 (file)
@@ -107,12 +107,24 @@ function notification($params)
                $item_id = 0;
        }
 
+       if (isset($params['item']['uri-id'])) {
+               $uri_id = $params['item']['uri-id'];
+       } else {
+               $uri_id = 0;
+       }
+
        if (isset($params['parent'])) {
                $parent_id = $params['parent'];
        } else {
                $parent_id = 0;
        }
 
+       if (isset($params['item']['parent-uri-id'])) {
+               $parent_uri_id = $params['item']['parent-uri-id'];
+       } else {
+               $parent_uri_id = 0;
+       }
+
        $epreamble = '';
        $preamble  = '';
        $subject   = '';
@@ -452,17 +464,19 @@ function notification($params)
 
        if ($show_in_notification_page) {
                $notification = DI::notify()->insert([
-                       'name'       => $params['source_name'] ?? '',
-                       'name_cache' => substr(strip_tags(BBCode::convert($params['source_name'] ?? '')), 0, 255),
-                       'url'        => $params['source_link'] ?? '',
-                       'photo'      => $params['source_photo'] ?? '',
-                       'link'       => $itemlink ?? '',
-                       'uid'        => $params['uid'] ?? 0,
-                       'iid'        => $item_id ?? 0,
-                       'parent'     => $parent_id ?? 0,
-                       'type'       => $params['type'] ?? '',
-                       'verb'       => $params['verb'] ?? '',
-                       'otype'      => $params['otype'] ?? '',
+                       'name'          => $params['source_name'] ?? '',
+                       'name_cache'    => substr(strip_tags(BBCode::convert($params['source_name'] ?? '')), 0, 255),
+                       'url'           => $params['source_link'] ?? '',
+                       'photo'         => $params['source_photo'] ?? '',
+                       'link'          => $itemlink ?? '',
+                       'uid'           => $params['uid'] ?? 0,
+                       'iid'           => $item_id ?? 0,
+                       'uri-id'        => $uri_id ?? 0,
+                       'parent'        => $parent_id ?? 0,
+                       'parent-uri-id' => $parent_uri_id ?? 0,                 
+                       'type'          => $params['type'] ?? '',
+                       'verb'          => $params['verb'] ?? '',
+                       'otype'         => $params['otype'] ?? '',
                ]);
 
                $notification->msg = Renderer::replaceMacros($epreamble, ['$itemlink' => $notification->link]);
@@ -486,8 +500,9 @@ function notification($params)
                        if (!DBA::exists('notify-threads', ['master-parent-item' => $params['parent'], 'receiver-uid' => $params['uid']])) {
                                Logger::log("notify_id:" . intval($notify_id) . ", parent: " . intval($params['parent']) . "uid: " . intval($params['uid']), Logger::DEBUG);
 
-                               $fields = ['notify-id'    => $notify_id, 'master-parent-item' => $params['parent'],
-                                          'receiver-uid' => $params['uid'], 'parent-item' => 0];
+                               $fields = ['notify-id' => $notify_id, 'master-parent-item' => $params['parent'],
+                                       'master-parent-uri-id' => $parent_uri_id,
+                                       'receiver-uid' => $params['uid'], 'parent-item' => 0];
                                DBA::insert('notify-threads', $fields);
 
                                $additional_mail_header .= "Message-ID: <${id_for_parent}>\n";
@@ -574,7 +589,7 @@ function check_user_notification($itemid) {
  * @throws \Friendica\Network\HTTPException\InternalServerErrorException
  */
 function check_item_notification($itemid, $uid, $notification_type) {
-       $fields = ['id', 'mention', 'tag', 'parent', 'title', 'body',
+       $fields = ['id', 'uri-id', 'mention', 'tag', 'parent', 'parent-uri-id', 'title', 'body',
                'author-link', 'author-name', 'author-avatar', 'author-id',
                'guid', 'parent-uri', 'uri', 'contact-id', 'network'];
        $condition = ['id' => $itemid, 'gravity' => [GRAVITY_PARENT, GRAVITY_COMMENT], 'deleted' => false];
index 2c3a9fb5fd42c3b97899d7773b80dba66db535ba..6f4c069e5e00100ff1dbbb5bd293832d9c2ec78b 100755 (executable)
@@ -51,7 +51,7 @@
 use Friendica\Database\DBA;
 
 if (!defined('DB_UPDATE_VERSION')) {
-       define('DB_UPDATE_VERSION', 1343);
+       define('DB_UPDATE_VERSION', 1344);
 }
 
 return [
@@ -927,6 +927,8 @@ return [
                        "link" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
                        "iid" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"], "comment" => "item.id"],
                        "parent" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"], "comment" => ""],
+                       "uri-id" => ["type" => "int unsigned", "relation" => ["item-uri" => "id"], "comment" => "Item-uri id of the related post"],
+                       "parent-uri-id" => ["type" => "int unsigned", "relation" => ["item-uri" => "id"], "comment" => "Item-uri id of the parent of the related post"],
                        "seen" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                        "verb" => ["type" => "varchar(100)", "not null" => "1", "default" => "", "comment" => ""],
                        "otype" => ["type" => "varchar(10)", "not null" => "1", "default" => "", "comment" => ""],
@@ -945,8 +947,8 @@ return [
                "fields" => [
                        "id" => ["type" => "int unsigned", "not null" => "1", "extra" => "auto_increment", "primary" => "1", "comment" => "sequential ID"],
                        "notify-id" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["notify" => "id"], "comment" => ""],
-                       "master-parent-item" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"],
-                               "comment" => ""],
+                       "master-parent-item" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "relation" => ["item" => "id"], "comment" => ""],
+                       "master-parent-uri-id" => ["type" => "int unsigned", "relation" => ["item-uri" => "id"], "comment" => "Item-uri id of the parent of the related post"],
                        "parent-item" => ["type" => "int unsigned", "not null" => "1", "default" => "0", "comment" => ""],
                        "receiver-uid" => ["type" => "mediumint unsigned", "not null" => "1", "default" => "0", "relation" => ["user" => "uid"],
                                "comment" => "User id"],