]> git.mxchange.org Git - friendica.git/blobdiff - src/Module/Contact.php
Changes:
[friendica.git] / src / Module / Contact.php
index 21b1793af5b6fd1650ce3be90003e01d957edbb3..d58fde062378c812960ba2be613ff72b34711dc0 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2010-2023, the Friendica project
+ * @copyright Copyright (C) 2010-2024, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -29,7 +29,6 @@ use Friendica\Content\Widget;
 use Friendica\Core\Logger;
 use Friendica\Core\Protocol;
 use Friendica\Core\Renderer;
-use Friendica\Core\System;
 use Friendica\Core\Theme;
 use Friendica\Core\Worker;
 use Friendica\Database\DBA;
@@ -140,7 +139,7 @@ class Contact extends BaseModule
                        try {
                                UpdateContact::add(Worker::PRIORITY_HIGH, $contact_id);
                        } catch (\InvalidArgumentException $e) {
-                               Logger::notice($e->getMessage(), ['contact' => $contact, 'callstack' => System::callstack()]);
+                               Logger::notice($e->getMessage(), ['contact' => $contact]);
                        }
                }
        }
@@ -191,7 +190,7 @@ class Contact extends BaseModule
                $search = trim($_GET['search'] ?? '');
                $nets   = trim($_GET['nets']   ?? '');
                $rel    = trim($_GET['rel']    ?? '');
-               $group  = trim($_GET['group']  ?? '');
+               $circle = trim($_GET['circle'] ?? '');
 
                $accounttype = $_GET['accounttype'] ?? '';
                $accounttypeid = User::getAccountTypeByString($accounttype);
@@ -211,17 +210,15 @@ class Contact extends BaseModule
                        $follow_widget = Widget::follow();
                }
 
-               $account_widget = Widget::accountTypes($_SERVER['REQUEST_URI'], $accounttype);
+               $account_widget  = Widget::accountTypes($_SERVER['REQUEST_URI'], $accounttype);
                $networks_widget = Widget::networks($_SERVER['REQUEST_URI'], $nets);
-               $rel_widget = Widget::contactRels($_SERVER['REQUEST_URI'], $rel);
-               $groups_widget = Widget::groups($_SERVER['REQUEST_URI'], $group);
+               $rel_widget      = Widget::contactRels($_SERVER['REQUEST_URI'], $rel);
+               $circles_widget  = Widget::circles($_SERVER['REQUEST_URI'], $circle);
 
-               DI::page()['aside'] .= $vcard_widget . $findpeople_widget . $follow_widget . $rel_widget . $groups_widget . $networks_widget . $account_widget;
+               DI::page()['aside'] .= $vcard_widget . $findpeople_widget . $follow_widget . $rel_widget . $circles_widget . $networks_widget . $account_widget;
 
                $tpl = Renderer::getMarkupTemplate('contacts-head.tpl');
-               DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
-                       '$baseurl' => DI::baseUrl()->get(true),
-               ]);
+               DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, []);
 
                $o = '';
                Nav::setSelected('contact');
@@ -305,11 +302,19 @@ class Contact extends BaseModule
                                $sql_extra .= " AND `rel` = ?";
                                $sql_values[] = Model\Contact::FRIEND;
                                break;
+                       case 'nothing':
+                               $sql_extra .= " AND `rel` = ?";
+                               $sql_values[] = Model\Contact::NOTHING;
+                               break;
+                       default:
+                               $sql_extra .= " AND `rel` != ?";
+                               $sql_values[] = Model\Contact::NOTHING;
+                               break;
                }
 
-               if ($group) {
+               if ($circle) {
                        $sql_extra .= " AND `id` IN (SELECT `contact-id` FROM `group_member` WHERE `gid` = ?)";
-                       $sql_values[] = $group;
+                       $sql_values[] = $circle;
                }
 
                $networks = Widget::unavailableNetworks();
@@ -392,11 +397,11 @@ class Contact extends BaseModule
                                'accesskey' => 'h',
                        ],
                        [
-                               'label' => DI::l10n()->t('Groups'),
-                               'url'   => 'group',
+                               'label' => DI::l10n()->t('Circles'),
+                               'url'   => 'circle',
                                'sel'   => '',
-                               'title' => DI::l10n()->t('Organize your contact groups'),
-                               'id'    => 'contactgroups-tab',
+                               'title' => DI::l10n()->t('Organize your contact circles'),
+                               'id'    => 'contactcircles-tab',
                                'accesskey' => 'e',
                        ],
                ];
@@ -405,19 +410,41 @@ class Contact extends BaseModule
                $tabs_html = Renderer::replaceMacros($tabs_tpl, ['$tabs' => $tabs]);
 
                switch ($rel) {
-                       case 'followers': $header = DI::l10n()->t('Followers'); break;
-                       case 'following': $header = DI::l10n()->t('Following'); break;
-                       case 'mutuals':   $header = DI::l10n()->t('Mutual friends'); break;
-                       default:          $header = DI::l10n()->t('Contacts');
+                       case 'followers':
+                               $header = DI::l10n()->t('Followers');
+                               break;
+                       case 'following':
+                               $header = DI::l10n()->t('Following');
+                               break;
+                       case 'mutuals':
+                               $header = DI::l10n()->t('Mutual friends');
+                               break;
+                       case 'nothing':
+                               $header = DI::l10n()->t('No relationship');
+                               break;
+                       default:
+                               $header = DI::l10n()->t('Contacts');
                }
 
                switch ($type) {
-                       case 'pending':   $header .= ' - ' . DI::l10n()->t('Pending'); break;
-                       case 'blocked':   $header .= ' - ' . DI::l10n()->t('Blocked'); break;
-                       case 'hidden':    $header .= ' - ' . DI::l10n()->t('Hidden'); break;
-                       case 'ignored':   $header .= ' - ' . DI::l10n()->t('Ignored'); break;
-                       case 'collapsed': $header .= ' - ' . DI::l10n()->t('Collapsed'); break;
-                       case 'archived':  $header .= ' - ' . DI::l10n()->t('Archived'); break;
+                       case 'pending':
+                               $header .= ' - ' . DI::l10n()->t('Pending');
+                               break;
+                       case 'blocked':
+                               $header .= ' - ' . DI::l10n()->t('Blocked');
+                               break;
+                       case 'hidden':
+                               $header .= ' - ' . DI::l10n()->t('Hidden');
+                               break;
+                       case 'ignored':
+                               $header .= ' - ' . DI::l10n()->t('Ignored');
+                               break;
+                       case 'collapsed':
+                               $header .= ' - ' . DI::l10n()->t('Collapsed');
+                               break;
+                       case 'archived':
+                               $header .= ' - ' . DI::l10n()->t('Archived');
+                               break;
                }
 
                $header .= $nets ? ' - ' . ContactSelector::networkToName($nets) : '';
@@ -451,7 +478,7 @@ class Contact extends BaseModule
        /**
         * List of pages for the Contact TabBar
         *
-        * Available Pages are 'Status', 'Profile', 'Contacts' and 'Common Friends'
+        * Available Pages are 'Conversations', 'Profile', 'Contacts' and 'Common Friends'
         *
         * @param array $contact    The contact array
         * @param int   $active_tab 1 if tab should be marked as active
@@ -473,7 +500,15 @@ class Contact extends BaseModule
                // tabs
                $tabs = [
                        [
-                               'label' => DI::l10n()->t('Status'),
+                               'label' => DI::l10n()->t('Profile'),
+                               'url'   => 'contact/' . $cid,
+                               'sel'   => (($active_tab == self::TAB_PROFILE) ? 'active' : ''),
+                               'title' => DI::l10n()->t('Profile Details'),
+                               'id'    => 'profile-tab',
+                               'accesskey' => 'o',
+                       ],
+                       [
+                               'label' => DI::l10n()->t('Conversations'),
                                'url'   => 'contact/' . $pcid . '/conversations',
                                'sel'   => (($active_tab == self::TAB_CONVERSATIONS) ? 'active' : ''),
                                'title' => DI::l10n()->t('Conversations started by this contact'),
@@ -484,7 +519,7 @@ class Contact extends BaseModule
                                'label' => DI::l10n()->t('Posts and Comments'),
                                'url'   => 'contact/' . $pcid . '/posts',
                                'sel'   => (($active_tab == self::TAB_POSTS) ? 'active' : ''),
-                               'title' => DI::l10n()->t('Status Messages and Posts'),
+                               'title' => DI::l10n()->t('Individual Posts and Replies'),
                                'id'    => 'posts-tab',
                                'accesskey' => 'p',
                        ],
@@ -497,14 +532,7 @@ class Contact extends BaseModule
                                'accesskey' => 'd',
                        ],
                        [
-                               'label' => DI::l10n()->t('Profile'),
-                               'url'   => 'contact/' . $cid,
-                               'sel'   => (($active_tab == self::TAB_PROFILE) ? 'active' : ''),
-                               'title' => DI::l10n()->t('Profile Details'),
-                               'id'    => 'profile-tab',
-                               'accesskey' => 'o',
-                       ],
-                       ['label' => DI::l10n()->t('Contacts'),
+                               'label' => DI::l10n()->t('Contacts'),
                                'url'   => 'contact/' . $pcid . '/contacts',
                                'sel'   => (($active_tab == self::TAB_CONTACTS) ? 'active' : ''),
                                'title' => DI::l10n()->t('View all known contacts'),
@@ -514,7 +542,8 @@ class Contact extends BaseModule
                ];
 
                if (!empty($contact['network']) && in_array($contact['network'], [Protocol::FEED, Protocol::MAIL]) && ($cid != $pcid)) {
-                       $tabs[] = ['label' => DI::l10n()->t('Advanced'),
+                       $tabs[] = [
+                               'label' => DI::l10n()->t('Advanced'),
                                'url'   => 'contact/' . $cid . '/advanced/',
                                'sel'   => (($active_tab == self::TAB_ADVANCED) ? 'active' : ''),
                                'title' => DI::l10n()->t('Advanced Contact Settings'),