]> git.mxchange.org Git - friendica.git/blobdiff - src/Module/NoScrape.php
Removed query for "updated" in gcontact
[friendica.git] / src / Module / NoScrape.php
index c8b701e403fd7db2a5070a77bd2b3c0d619e4efe..13a683d974868b53b9f18812de5d884df1d7840e 100644 (file)
@@ -1,4 +1,23 @@
 <?php
+/**
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
 
 namespace Friendica\Module;
 
@@ -33,7 +52,7 @@ class NoScrape extends BaseModule
                        exit();
                }
 
-               Profile::load($a, $nickname);
+               Profile::load($a, $which);
 
                $json_info = [
                        'addr'         => $a->profile['addr'],
@@ -50,7 +69,7 @@ class NoScrape extends BaseModule
                        $json_info["dfrn-{$dfrn}"] = DI::baseUrl() . "/dfrn_{$dfrn}/{$which}";
                }
 
-               if (!$a->profile['net-publish'] || $a->profile['hidewall']) {
+               if (!$a->profile['net-publish']) {
                        $json_info['hide'] = true;
                        System::jsonExit($json_info);
                }
@@ -66,13 +85,11 @@ class NoScrape extends BaseModule
                $json_info['tags']     = $keywords;
                $json_info['language'] = $a->profile['language'];
 
-               if (!($a->profile['hide-friends'] ?? false)) {
-                       /// @todo What should this value tell us?
-                       $result = DBA::p("SELECT `gcontact`.`updated` FROM `contact` INNER JOIN `gcontact` WHERE `gcontact`.`nurl` = `contact`.`nurl` AND `self` AND `uid` = ? LIMIT 1", intval($a->profile['uid']));
-                       if (DBA::isResult($result)) {
-                               $json_info["updated"] = date("c", strtotime($result[0]['updated']));
-                       }
+               if (!empty($a->profile['last-item'])) {
+                       $json_info['updated'] = date("c", strtotime($a->profile['last-item']));
+               }
 
+               if (!($a->profile['hide-friends'] ?? false)) {
                        $json_info['contacts'] = DBA::count('contact',
                                [
                                        'uid'     => $a->profile['uid'],
@@ -103,7 +120,7 @@ class NoScrape extends BaseModule
                $json_info['last-activity'] = date('o-W', $last_active);
 
                //These are optional fields.
-               $profile_fields = ['pdesc', 'locality', 'region', 'postal-code', 'country-name', 'gender', 'marital', 'about'];
+               $profile_fields = ['about', 'locality', 'region', 'postal-code', 'country-name'];
                foreach ($profile_fields as $field) {
                        if (!empty($a->profile[$field])) {
                                $json_info["$field"] = $a->profile[$field];