]> git.mxchange.org Git - friendica.git/blobdiff - src/Protocol/DFRN.php
rename rawContent() to content()
[friendica.git] / src / Protocol / DFRN.php
index 8433801812d5975cc53c47f46adc5a5436ac4377..e83732ffe2b57c219362995cee2b58136be3aa2a 100644 (file)
@@ -25,10 +25,12 @@ use Friendica\Model\Conversation;
 use Friendica\Model\Event;
 use Friendica\Model\GContact;
 use Friendica\Model\Item;
+use Friendica\Model\Mail;
 use Friendica\Model\PermissionSet;
 use Friendica\Model\Profile;
 use Friendica\Model\User;
 use Friendica\Object\Image;
+use Friendica\Util\BaseURL;
 use Friendica\Util\Crypto;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Network;
@@ -358,7 +360,7 @@ class DFRN
                $ret = Item::select(Item::DELIVER_FIELDLIST, $condition);
                $items = Item::inArray($ret);
                if (!DBA::isResult($items)) {
-                       exit();
+                       return '';
                }
 
                $item = $items[0];
@@ -366,7 +368,7 @@ class DFRN
                if ($item['uid'] != 0) {
                        $owner = User::getOwnerDataById($item['uid']);
                        if (!$owner) {
-                               exit();
+                               return '';
                        }
                } else {
                        $owner = ['uid' => 0, 'nick' => 'feed-item'];
@@ -399,7 +401,7 @@ class DFRN
                                }
                        }
                } else {
-                       $root = self::entry($doc, $type, $item, $owner, true, 0, true);
+                       self::entry($doc, $type, $item, $owner, true, 0, true);
                }
 
                $atom = trim($doc->saveXML());
@@ -986,7 +988,7 @@ class DFRN
                }
 
                // Add conversation data. This is used for OStatus
-               $conversation_href = System::baseUrl()."/display/".$owner["nick"]."/".$item["parent"];
+               $conversation_href = System::baseUrl()."/display/".$item["parent-guid"];
                $conversation_uri = $conversation_href;
 
                if (isset($parent_item)) {
@@ -1208,13 +1210,13 @@ class DFRN
                $ssl_val = intval(Config::get('system', 'ssl_policy'));
 
                switch ($ssl_val) {
-                       case SSL_POLICY_FULL:
+                       case BaseURL::SSL_POLICY_FULL:
                                $ssl_policy = 'full';
                                break;
-                       case SSL_POLICY_SELFSIGN:
+                       case BaseURL::SSL_POLICY_SELFSIGN:
                                $ssl_policy = 'self';
                                break;
-                       case SSL_POLICY_NONE:
+                       case BaseURL::SSL_POLICY_NONE:
                        default:
                                $ssl_policy = 'none';
                                break;
@@ -1864,7 +1866,6 @@ class DFRN
        {
                Logger::log("Processing mails");
 
-               /// @TODO Rewrite this to one statement
                $msg = [];
                $msg["uid"] = $importer["importer_uid"];
                $msg["from-name"] = $xpath->query("dfrn:sender/dfrn:name/text()", $mail)->item(0)->nodeValue;
@@ -1876,34 +1877,8 @@ class DFRN
                $msg["created"] = DateTimeFormat::utc($xpath->query("dfrn:sentdate/text()", $mail)->item(0)->nodeValue);
                $msg["title"] = $xpath->query("dfrn:subject/text()", $mail)->item(0)->nodeValue;
                $msg["body"] = $xpath->query("dfrn:content/text()", $mail)->item(0)->nodeValue;
-               $msg["seen"] = 0;
-               $msg["replied"] = 0;
-
-               DBA::insert('mail', $msg);
-
-               $msg["id"] = DBA::lastInsertId();
-
-               // send notifications.
-               /// @TODO Arange this mess
-               $notif_params = [
-                       "type" => NOTIFY_MAIL,
-                       "notify_flags" => $importer["notify-flags"],
-                       "language" => $importer["language"],
-                       "to_name" => $importer["username"],
-                       "to_email" => $importer["email"],
-                       "uid" => $importer["importer_uid"],
-                       "item" => $msg,
-                       "parent" => $msg["parent-uri"],
-                       "source_name" => $msg["from-name"],
-                       "source_link" => $importer["url"],
-                       "source_photo" => $importer["thumb"],
-                       "verb" => ACTIVITY_POST,
-                       "otype" => "mail"
-               ];
-
-               notification($notif_params);
-
-               Logger::log("Mail is processed, notification was sent.");
+
+               Mail::insert($msg);
        }
 
        /**
@@ -2211,14 +2186,13 @@ class DFRN
        /**
         * @brief Send a "poke"
         *
-        * @param array $item      the new item record
+        * @param array $item      The new item record
         * @param array $importer  Record of the importer user mixed with contact of the content
-        * @param int   $posted_id The record number of item record that was just posted
         * @return void
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         * @todo  set proper type-hints (array?)
         */
-       private static function doPoke($item, $importer, $posted_id)
+       private static function doPoke(array $item, array $importer)
        {
                $verb = urldecode(substr($item["verb"], strpos($item["verb"], "#")+1));
                if (!$verb) {
@@ -2243,8 +2217,6 @@ class DFRN
                        if ($Blink && Strings::compareLink($Blink, System::baseUrl() . "/profile/" . $importer["nickname"])) {
                                $author = DBA::selectFirst('contact', ['name', 'thumb', 'url'], ['id' => $item['author-id']]);
 
-                               $item['id'] = $posted_id;
-
                                $parent = Item::selectFirst(['id'], ['uri' => $item['parent-uri'], 'uid' => $importer["importer_uid"]]);
                                $item["parent"] = $parent['id'];
 
@@ -2258,7 +2230,7 @@ class DFRN
                                        "to_email"     => $importer["email"],
                                        "uid"          => $importer["importer_uid"],
                                        "item"         => $item,
-                                       "link"         => System::baseUrl()."/display/".urlencode(Item::getGuidById($posted_id)),
+                                       "link"         => System::baseUrl()."/display/".urlencode($item['guid']),
                                        "source_name"  => $author["name"],
                                        "source_link"  => $author["url"],
                                        "source_photo" => $author["thumb"],
@@ -2753,7 +2725,8 @@ class DFRN
                        }
 
                        if (stristr($item["verb"], ACTIVITY_POKE)) {
-                               self::doPoke($item, $importer, $posted_id);
+                               $item['id'] = $posted_id;
+                               self::doPoke($item, $importer);
                        }
                }
        }