]> git.mxchange.org Git - friendica.git/commitdiff
Replace "forum" by "group" in the rest of the code
authorHypolite Petovan <hypolite@mrpetovan.com>
Tue, 30 May 2023 13:15:17 +0000 (09:15 -0400)
committerHypolite Petovan <hypolite@mrpetovan.com>
Fri, 2 Jun 2023 17:52:41 +0000 (13:52 -0400)
60 files changed:
src/Content/Feature.php
src/Content/ForumManager.php [deleted file]
src/Content/GroupManager.php [new file with mode: 0644]
src/Content/Item.php
src/Content/Nav.php
src/Content/Text/HTML.php
src/Content/Widget.php
src/Core/ACL.php
src/Core/Search.php
src/Model/Circle.php
src/Model/Contact.php
src/Model/Item.php
src/Model/Notification/Type.php
src/Model/Photo.php
src/Model/Tag.php
src/Model/User.php
src/Module/BaseSearch.php
src/Module/Conversation/Network.php
src/Module/Moderation/BaseUsers.php
src/Module/Moderation/Summary.php
src/Module/Notifications/Ping.php
src/Module/Profile/Conversations.php
src/Module/Profile/Profile.php
src/Module/Search/Acl.php
src/Module/Search/Index.php
src/Module/Settings/Account.php
src/Navigation/Notifications/Repository/Notify.php
src/Object/Post.php
src/Protocol/ActivityPub.php
src/Protocol/ActivityPub/Processor.php
src/Protocol/ActivityPub/Receiver.php
src/Protocol/ActivityPub/Transmitter.php
src/Protocol/DFRN.php
src/Protocol/Delivery.php
src/Worker/ExpireAndRemoveUsers.php
src/Worker/Notifier.php
static/defaults.config.php
static/routes.config.php
view/global.css
view/js/autocomplete.js
view/js/main.js
view/templates/widget/group_list.tpl [new file with mode: 0644]
view/templates/widget_forumlist.tpl [deleted file]
view/theme/duepuntozero/deriv/slackr.css
view/theme/duepuntozero/style.css
view/theme/frio/README.md
view/theme/frio/css/style.css
view/theme/frio/js/theme.js
view/theme/frio/templates/contact/entry.tpl
view/theme/frio/templates/jot-header.tpl
view/theme/frio/templates/wall_thread.tpl
view/theme/quattro/js/quattro.js
view/theme/quattro/templates/widget/group_list.tpl [new file with mode: 0644]
view/theme/quattro/templates/widget_forumlist.tpl [deleted file]
view/theme/vier/config.php
view/theme/vier/style.css
view/theme/vier/templates/nav.tpl
view/theme/vier/templates/widget_forumlist_right.tpl [deleted file]
view/theme/vier/theme.php
view/theme/vier/wide.css

index f97a030118f4e01dc4554ea03192464c1fd90a2c..b9b9d2e0e62647e67ca0ae92c42bdf8d4a846c52 100644 (file)
@@ -102,7 +102,7 @@ class Feature
                        // Post composition
                        'composition' => [
                                DI::l10n()->t('Post Composition Features'),
-                               ['aclautomention', DI::l10n()->t('Auto-mention Forums'), DI::l10n()->t('Add/remove mention when a forum page is selected/deselected in ACL window.'), false, DI::config()->get('feature_lock', 'aclautomention', false)],
+                               ['aclautomention', DI::l10n()->t('Auto-mention Groups'), DI::l10n()->t('Add/remove mention when a group page is selected/deselected in ACL window.'), false, DI::config()->get('feature_lock', 'aclautomention', false)],
                                ['explicit_mentions', DI::l10n()->t('Explicit Mentions'), DI::l10n()->t('Add explicit mentions to comment box for manual control over who gets mentioned in replies.'), false, DI::config()->get('feature_lock', 'explicit_mentions', false)],
                                ['add_abstract', DI::l10n()->t('Add an abstract from ActivityPub content warnings'), DI::l10n()->t('Add an abstract when commenting on ActivityPub posts with a content warning. Abstracts are displayed as content warning on systems like Mastodon or Pleroma.'), false, DI::config()->get('feature_lock', 'add_abstract', false)],
                        ],
@@ -116,7 +116,7 @@ class Feature
                        // Advanced Profile Settings
                        'advanced_profile' => [
                                DI::l10n()->t('Advanced Profile Settings'),
-                               ['forumlist_profile',   DI::l10n()->t('List Forums'),             DI::l10n()->t('Show visitors public community forums at the Advanced Profile Page'), false, DI::config()->get('feature_lock', 'forumlist_profile', false)],
+                               ['forumlist_profile',   DI::l10n()->t('List Groups'),             DI::l10n()->t('Show visitors public groups at the Advanced Profile Page'), false, DI::config()->get('feature_lock', 'forumlist_profile', false)],
                                ['tagadelic',           DI::l10n()->t('Tag Cloud'),               DI::l10n()->t('Provide a personal tag cloud on your profile page'), false, DI::config()->get('feature_lock', 'tagadelic', false)],
                                ['profile_membersince', DI::l10n()->t('Display Membership Date'), DI::l10n()->t('Display membership date in profile'), false, DI::config()->get('feature_lock', 'profile_membersince', false)],
                        ],
diff --git a/src/Content/ForumManager.php b/src/Content/ForumManager.php
deleted file mode 100644 (file)
index 5decaac..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-<?php
-/**
- * @copyright Copyright (C) 2010-2023, the Friendica project
- *
- * @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\Content;
-
-use Friendica\Content\Text\HTML;
-use Friendica\Core\Protocol;
-use Friendica\Core\Renderer;
-use Friendica\Database\DBA;
-use Friendica\DI;
-use Friendica\Model\Contact;
-
-/**
- * This class handles methods related to the forum functionality
- */
-class ForumManager
-{
-       /**
-        * Function to list all forums a user is connected with
-        *
-        * @param int     $uid         of the profile owner
-        * @param boolean $lastitem    Sort by lastitem
-        * @param boolean $showhidden  Show forums which are not hidden
-        * @param boolean $showprivate Show private groups
-        *
-        * @return array
-        *    'url'    => forum url
-        *    'name'    => forum name
-        *    'id'    => number of the key from the array
-        *    'micro' => contact photo in format micro
-        *    'thumb' => contact photo in format thumb
-        * @throws \Exception
-        */
-       public static function getList($uid, $lastitem, $showhidden = true, $showprivate = false)
-       {
-               if ($lastitem) {
-                       $params = ['order' => ['last-item' => true]];
-               } else {
-                       $params = ['order' => ['name']];
-               }
-
-               $condition = [
-                       'contact-type' => Contact::TYPE_COMMUNITY,
-                       'network' => [Protocol::DFRN, Protocol::ACTIVITYPUB],
-                       'uid' => $uid,
-                       'blocked' => false,
-                       'pending' => false,
-                       'archive' => false,
-               ];
-
-               $condition = DBA::mergeConditions($condition, ["`platform` != ?", 'peertube']);
-
-               if (!$showprivate) {
-                       $condition = DBA::mergeConditions($condition, ['manually-approve' => false]);
-               }
-
-               if (!$showhidden) {
-                       $condition = DBA::mergeConditions($condition, ['hidden' => false]);
-               }
-
-               $forumlist = [];
-
-               $fields = ['id', 'url', 'name', 'micro', 'thumb', 'avatar', 'network', 'uid'];
-               $contacts = DBA::select('account-user-view', $fields, $condition, $params);
-               if (!$contacts) {
-                       return($forumlist);
-               }
-
-               while ($contact = DBA::fetch($contacts)) {
-                       $forumlist[] = [
-                               'url'   => $contact['url'],
-                               'name'  => $contact['name'],
-                               'id'    => $contact['id'],
-                               'micro' => $contact['micro'],
-                               'thumb' => $contact['thumb'],
-                       ];
-               }
-               DBA::close($contacts);
-
-               return($forumlist);
-       }
-
-
-       /**
-        * Forumlist widget
-        *
-        * Sidebar widget to show subscribed friendica forums. If activated
-        * in the settings, it appears at the notwork page sidebar
-        *
-        * @param string $baseurl Base module path
-        * @param int    $uid     The ID of the User
-        * @param int    $cid     The contact id which is used to mark a forum as "selected"
-        * @return string
-        * @throws \Friendica\Network\HTTPException\InternalServerErrorException
-        * @throws \ImagickException
-        */
-       public static function widget(string $baseurl, int $uid, int $cid = 0)
-       {
-               $o = '';
-
-               //sort by last updated item
-               $lastitem = true;
-
-               $contacts = self::getList($uid, $lastitem, true, true);
-               $total = count($contacts);
-               $visible_forums = 10;
-
-               if (DBA::isResult($contacts)) {
-                       $id = 0;
-
-                       $entries = [];
-
-                       foreach ($contacts as $contact) {
-                               $selected = (($cid == $contact['id']) ? ' forum-selected' : '');
-
-                               $entry = [
-                                       'url' => $baseurl . '/' . $contact['id'],
-                                       'external_url' => Contact::magicLinkByContact($contact),
-                                       'name' => $contact['name'],
-                                       'cid' => $contact['id'],
-                                       'selected'      => $selected,
-                                       'micro' => DI::baseUrl()->remove(Contact::getMicro($contact)),
-                                       'id' => ++$id,
-                               ];
-                               $entries[] = $entry;
-                       }
-
-                       $tpl = Renderer::getMarkupTemplate('widget_forumlist.tpl');
-
-                       $o .= Renderer::replaceMacros(
-                               $tpl,
-                               [
-                                       '$title'        => DI::l10n()->t('Forums'),
-                                       '$forums'       => $entries,
-                                       '$link_desc'    => DI::l10n()->t('External link to forum'),
-                                       '$total'        => $total,
-                                       '$visible_forums' => $visible_forums,
-                                       '$showless'     => DI::l10n()->t('show less'),
-                                       '$showmore'     => DI::l10n()->t('show more')]
-                       );
-               }
-
-               return $o;
-       }
-
-       /**
-        * Format forumlist as contact block
-        *
-        * This function is used to show the forumlist in
-        * the advanced profile.
-        *
-        * @param int $uid The ID of the User
-        * @return string
-        * @throws \Friendica\Network\HTTPException\InternalServerErrorException
-        * @throws \ImagickException
-        */
-       public static function profileAdvanced($uid)
-       {
-               $profile = intval(Feature::isEnabled($uid, 'forumlist_profile'));
-               if (!$profile) {
-                       return '';
-               }
-
-               $o = '';
-
-               // place holder in case somebody wants configurability
-               $show_total = 9999;
-
-               //don't sort by last updated item
-               $lastitem = false;
-
-               $contacts = self::getList($uid, $lastitem, false, false);
-
-               $total_shown = 0;
-               foreach ($contacts as $contact) {
-                       $o .= HTML::micropro($contact, true, 'forumlist-profile-advanced');
-                       $total_shown++;
-                       if ($total_shown == $show_total) {
-                               break;
-                       }
-               }
-
-               return $o;
-       }
-
-       /**
-        * count unread forum items
-        *
-        * Count unread items of connected forums and private groups
-        *
-        * @return array
-        *    'id' => contact id
-        *    'name' => contact/forum name
-        *    'count' => counted unseen forum items
-        * @throws \Exception
-        */
-       public static function countUnseenItems()
-       {
-               $stmtContacts = DBA::p(
-                       "SELECT `contact`.`id`, `contact`.`name`, COUNT(*) AS `count` FROM `post-user-view`
-                               INNER JOIN `contact` ON `post-user-view`.`contact-id` = `contact`.`id`
-                               WHERE `post-user-view`.`uid` = ? AND `post-user-view`.`visible` AND NOT `post-user-view`.`deleted` AND `post-user-view`.`unseen`
-                               AND `contact`.`network` IN (?, ?) AND `contact`.`contact-type` = ?
-                               AND NOT `contact`.`blocked` AND NOT `contact`.`hidden`
-                               AND NOT `contact`.`pending` AND NOT `contact`.`archive`
-                               AND `contact`.`uid` = ?
-                               GROUP BY `contact`.`id`",
-                       DI::userSession()->getLocalUserId(), Protocol::DFRN, Protocol::ACTIVITYPUB, Contact::TYPE_COMMUNITY, DI::userSession()->getLocalUserId()
-               );
-
-               return DBA::toArray($stmtContacts);
-       }
-}
diff --git a/src/Content/GroupManager.php b/src/Content/GroupManager.php
new file mode 100644 (file)
index 0000000..9377ea3
--- /dev/null
@@ -0,0 +1,231 @@
+<?php
+/**
+ * @copyright Copyright (C) 2010-2023, the Friendica project
+ *
+ * @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\Content;
+
+use Friendica\Content\Text\HTML;
+use Friendica\Core\Protocol;
+use Friendica\Core\Renderer;
+use Friendica\Database\DBA;
+use Friendica\DI;
+use Friendica\Model\Contact;
+
+/**
+ * This class handles methods related to the group functionality
+ */
+class GroupManager
+{
+       /**
+        * Function to list all groups a user is connected with
+        *
+        * @param int     $uid         of the profile owner
+        * @param boolean $lastitem    Sort by lastitem
+        * @param boolean $showhidden  Show groups which are not hidden
+        * @param boolean $showprivate Show private groups
+        *
+        * @return array
+        *    'url'    => group url
+        *    'name'    => group name
+        *    'id'    => number of the key from the array
+        *    'micro' => contact photo in format micro
+        *    'thumb' => contact photo in format thumb
+        * @throws \Exception
+        */
+       public static function getList($uid, $lastitem, $showhidden = true, $showprivate = false)
+       {
+               if ($lastitem) {
+                       $params = ['order' => ['last-item' => true]];
+               } else {
+                       $params = ['order' => ['name']];
+               }
+
+               $condition = [
+                       'contact-type' => Contact::TYPE_COMMUNITY,
+                       'network' => [Protocol::DFRN, Protocol::ACTIVITYPUB],
+                       'uid' => $uid,
+                       'blocked' => false,
+                       'pending' => false,
+                       'archive' => false,
+               ];
+
+               $condition = DBA::mergeConditions($condition, ["`platform` != ?", 'peertube']);
+
+               if (!$showprivate) {
+                       $condition = DBA::mergeConditions($condition, ['manually-approve' => false]);
+               }
+
+               if (!$showhidden) {
+                       $condition = DBA::mergeConditions($condition, ['hidden' => false]);
+               }
+
+               $groupList = [];
+
+               $fields = ['id', 'url', 'name', 'micro', 'thumb', 'avatar', 'network', 'uid'];
+               $contacts = DBA::select('account-user-view', $fields, $condition, $params);
+               if (!$contacts) {
+                       return $groupList;
+               }
+
+               while ($contact = DBA::fetch($contacts)) {
+                       $groupList[] = [
+                               'url'   => $contact['url'],
+                               'name'  => $contact['name'],
+                               'id'    => $contact['id'],
+                               'micro' => $contact['micro'],
+                               'thumb' => $contact['thumb'],
+                       ];
+               }
+               DBA::close($contacts);
+
+               return($groupList);
+       }
+
+
+       /**
+        * Group list widget
+        *
+        * Sidebar widget to show subscribed Friendica groups. If activated
+        * in the settings, it appears in the network page sidebar
+        *
+        * @param string $baseurl Base module path
+        * @param int    $uid     The ID of the User
+        * @param int    $cid     The contact id which is used to mark a group as "selected"
+        * @return string
+        * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+        * @throws \ImagickException
+        */
+       public static function widget(string $baseurl, int $uid, int $cid = 0)
+       {
+               $o = '';
+
+               //sort by last updated item
+               $lastitem = true;
+
+               $contacts = self::getList($uid, $lastitem, true, true);
+               $total = count($contacts);
+               $visibleGroups = 10;
+
+               if (DBA::isResult($contacts)) {
+                       $id = 0;
+
+                       $entries = [];
+
+                       foreach ($contacts as $contact) {
+                               $selected = (($cid == $contact['id']) ? ' group-selected' : '');
+
+                               $entry = [
+                                       'url' => $baseurl . '/' . $contact['id'],
+                                       'external_url' => Contact::magicLinkByContact($contact),
+                                       'name' => $contact['name'],
+                                       'cid' => $contact['id'],
+                                       'selected'      => $selected,
+                                       'micro' => DI::baseUrl()->remove(Contact::getMicro($contact)),
+                                       'id' => ++$id,
+                               ];
+                               $entries[] = $entry;
+                       }
+
+                       $tpl = Renderer::getMarkupTemplate('widget/group_list.tpl');
+
+                       $o .= Renderer::replaceMacros(
+                               $tpl,
+                               [
+                                       '$title'        => DI::l10n()->t('Groups'),
+                                       '$groups'       => $entries,
+                                       '$link_desc'    => DI::l10n()->t('External link to group'),
+                                       '$total'        => $total,
+                                       '$visible_groups' => $visibleGroups,
+                                       '$showless'     => DI::l10n()->t('show less'),
+                                       '$showmore'     => DI::l10n()->t('show more')]
+                       );
+               }
+
+               return $o;
+       }
+
+       /**
+        * Format group list as contact block
+        *
+        * This function is used to show the group list in
+        * the advanced profile.
+        *
+        * @param int $uid The ID of the User
+        * @return string
+        * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+        * @throws \ImagickException
+        */
+       public static function profileAdvanced($uid)
+       {
+               $profile = intval(Feature::isEnabled($uid, 'forumlist_profile'));
+               if (!$profile) {
+                       return '';
+               }
+
+               $o = '';
+
+               // placeholder in case somebody wants configurability
+               $show_total = 9999;
+
+               //don't sort by last updated item
+               $lastitem = false;
+
+               $contacts = self::getList($uid, $lastitem, false, false);
+
+               $total_shown = 0;
+               foreach ($contacts as $contact) {
+                       $o .= HTML::micropro($contact, true, 'grouplist-profile-advanced');
+                       $total_shown++;
+                       if ($total_shown == $show_total) {
+                               break;
+                       }
+               }
+
+               return $o;
+       }
+
+       /**
+        * count unread group items
+        *
+        * Count unread items of connected groups and private groups
+        *
+        * @return array
+        *    'id' => contact id
+        *    'name' => contact/group name
+        *    'count' => counted unseen group items
+        * @throws \Exception
+        */
+       public static function countUnseenItems()
+       {
+               $stmtContacts = DBA::p(
+                       "SELECT `contact`.`id`, `contact`.`name`, COUNT(*) AS `count` FROM `post-user-view`
+                               INNER JOIN `contact` ON `post-user-view`.`contact-id` = `contact`.`id`
+                               WHERE `post-user-view`.`uid` = ? AND `post-user-view`.`visible` AND NOT `post-user-view`.`deleted` AND `post-user-view`.`unseen`
+                               AND `contact`.`network` IN (?, ?) AND `contact`.`contact-type` = ?
+                               AND NOT `contact`.`blocked` AND NOT `contact`.`hidden`
+                               AND NOT `contact`.`pending` AND NOT `contact`.`archive`
+                               AND `contact`.`uid` = ?
+                               GROUP BY `contact`.`id`",
+                       DI::userSession()->getLocalUserId(), Protocol::DFRN, Protocol::ACTIVITYPUB, Contact::TYPE_COMMUNITY, DI::userSession()->getLocalUserId()
+               );
+
+               return DBA::toArray($stmtContacts);
+       }
+}
index ede78a2173b073db866f347fc170e06960bb77ad..3981978f4eae6abcfbeb9a234a31f9d0b18b8c9d 100644 (file)
@@ -484,16 +484,16 @@ class Item
        {
                // Look for any tags and linkify them
                $item['inform'] = '';
-               $private_forum  = false;
+               $private_group  = false;
                $private_id     = null;
-               $only_to_forum  = false;
-               $forum_contact  = [];
+               $only_to_group  = false;
+               $group_contact  = [];
                $receivers      = [];
 
                // Convert mentions in the body to a unified format
                $item['body'] = BBCode::setMentions($item['body'], $item['uid'], $item['network']);
 
-               // Search for forum mentions
+               // Search for group mentions
                foreach (Tag::getFromBody($item['body'], Tag::TAG_CHARACTER[Tag::MENTION] . Tag::TAG_CHARACTER[Tag::EXCLUSIVE_MENTION]) as $tag) {
                        $contact = Contact::getByURLForUser($tag[2], $item['uid']);
                        if (empty($contact)) {
@@ -512,37 +512,37 @@ class Item
                        }
 
                        if (!empty($contact['prv']) || ($tag[1] == Tag::TAG_CHARACTER[Tag::EXCLUSIVE_MENTION])) {
-                               $private_forum = $contact['prv'];
-                               $only_to_forum = ($tag[1] == Tag::TAG_CHARACTER[Tag::EXCLUSIVE_MENTION]);
+                               $private_group = $contact['prv'];
+                               $only_to_group = ($tag[1] == Tag::TAG_CHARACTER[Tag::EXCLUSIVE_MENTION]);
                                $private_id = $contact['id'];
-                               $forum_contact = $contact;
-                               Logger::info('Private forum or exclusive mention', ['url' => $tag[2], 'mention' => $tag[1]]);
+                               $group_contact = $contact;
+                               Logger::info('Private group or exclusive mention', ['url' => $tag[2], 'mention' => $tag[1]]);
                        } elseif ($item['allow_cid'] == '<' . $contact['id'] . '>') {
-                               $private_forum = false;
-                               $only_to_forum = true;
+                               $private_group = false;
+                               $only_to_group = true;
                                $private_id = $contact['id'];
-                               $forum_contact = $contact;
-                               Logger::info('Public forum', ['url' => $tag[2], 'mention' => $tag[1]]);
+                               $group_contact = $contact;
+                               Logger::info('Public group', ['url' => $tag[2], 'mention' => $tag[1]]);
                        } else {
-                               Logger::info('Post with forum mention will not be converted to a forum post', ['url' => $tag[2], 'mention' => $tag[1]]);
+                               Logger::info('Post with group mention will not be converted to a group post', ['url' => $tag[2], 'mention' => $tag[1]]);
                        }
                }
                Logger::info('Got inform', ['inform' => $item['inform']]);
 
-               if (($item['gravity'] == ItemModel::GRAVITY_PARENT) && !empty($forum_contact) && ($private_forum || $only_to_forum)) {
-                       // we tagged a forum in a top level post. Now we change the post
-                       $item['private'] = $private_forum ? ItemModel::PRIVATE : ItemModel::UNLISTED;
+               if (($item['gravity'] == ItemModel::GRAVITY_PARENT) && !empty($group_contact) && ($private_group || $only_to_group)) {
+                       // we tagged a group in a top level post. Now we change the post
+                       $item['private'] = $private_group ? ItemModel::PRIVATE : ItemModel::UNLISTED;
 
-                       if ($only_to_forum) {
+                       if ($only_to_group) {
                                $item['postopts'] = '';
                        }
 
                        $item['deny_cid'] = '';
                        $item['deny_gid'] = '';
 
-                       if ($private_forum) {
+                       if ($private_group) {
                                $item['allow_cid'] = '<' . $private_id . '>';
-                               $item['allow_gid'] = '<' . Circle::getIdForForum($forum_contact['id']) . '>';
+                               $item['allow_gid'] = '<' . Circle::getIdForGroup($group_contact['id']) . '>';
                        } else {
                                $item['allow_cid'] = '';
                                $item['allow_gid'] = '';
@@ -1011,7 +1011,7 @@ class Item
                $post['body'] = $this->bbCodeVideo->transform($post['body']);
                $post = $this->setObjectType($post);
 
-               // Personal notes must never be altered to a forum post.
+               // Personal notes must never be altered to a group post.
                if ($post['post-type'] != ItemModel::PT_PERSONAL_NOTE) {
                        // Look for any tags and linkify them
                        $post = $this->expandTags($post);
index 470882b0757db3a83dce55f9f90bc46075b6ccbc..c6634a95c44439ca0d9575a9e3dff4ea329ab0dd 100644 (file)
@@ -123,7 +123,7 @@ class Nav
                        '$apps'         => $this->getAppMenu(),
                        '$home'         => $this->l10n->t('Go back'),
                        '$clear_notifs' => $this->l10n->t('Clear notifications'),
-                       '$search_hint'  => $this->l10n->t('@name, !forum, #tags, content')
+                       '$search_hint'  => $this->l10n->t('@name, !group, #tags, content')
                ]);
 
                Hook::callAll('page_header', $nav);
@@ -273,7 +273,7 @@ class Nav
                        ];
 
                        if ($this->config->get('system', 'poco_local_search')) {
-                               $nav['searchoption'][] = $this->l10n->t('Forums');
+                               $nav['searchoption'][] = $this->l10n->t('Groups');
                        }
                }
 
index d17f75f759211f9bfb63ba9e786d3466e6d322f5..01151a6a52f9c70a36036ca3a8ce3927152995e6 100644 (file)
@@ -861,7 +861,7 @@ class HTML
                        '$id'           => $id,
                        '$search_label' => DI::l10n()->t('Search'),
                        '$save_label'   => $save_label,
-                       '$search_hint'  => DI::l10n()->t('@name, !forum, #tags, content'),
+                       '$search_hint'  => DI::l10n()->t('@name, !group, #tags, content'),
                        '$mode'         => $mode,
                        '$return_url'   => urlencode(Search::getSearchPath($s)),
                ];
@@ -874,7 +874,7 @@ class HTML
                        ];
 
                        if (DI::config()->get('system', 'poco_local_search')) {
-                               $values['$searchoption']['forums'] = DI::l10n()->t('Forums');
+                               $values['$searchoption']['groups'] = DI::l10n()->t('Groups');
                        }
                }
 
index c74cd3ec31d1af8b1817d307bbb2cd1b1d6e636e..ae3a950132dcf078436bb3710672b7db6f7e0b23 100644 (file)
@@ -530,7 +530,7 @@ class Widget
                        ['ref' => 'person', 'name' => DI::l10n()->t('Persons')],
                        ['ref' => 'organisation', 'name' => DI::l10n()->t('Organisations')],
                        ['ref' => 'news', 'name' => DI::l10n()->t('News')],
-                       ['ref' => 'community', 'name' => DI::l10n()->t('Forums')],
+                       ['ref' => 'community', 'name' => DI::l10n()->t('Groups')],
                ];
 
                return self::filter('accounttype', DI::l10n()->t('Account Types'), '',
index be32670b7c05b0ba46c0326210b64ff8b1a952c5..1bf8ef03eee9fdc8f8b1a4f2aa1f2fffd9582b27 100644 (file)
@@ -167,12 +167,12 @@ class ACL
 
                $acl_contacts[] = $acl_yourself;
 
-               $acl_forums = Contact::selectToArray($fields,
+               $acl_groups = Contact::selectToArray($fields,
                        ['uid' => $user_id, 'self' => false, 'blocked' => false, 'archive' => false, 'deleted' => false,
                        'network' => Protocol::FEDERATED, 'pending' => false, 'contact-type' => Contact::TYPE_COMMUNITY], $params
                );
 
-               $acl_contacts = array_merge($acl_forums, $acl_contacts);
+               $acl_contacts = array_merge($acl_groups, $acl_contacts);
 
                array_walk($acl_contacts, function (&$value) {
                        $value['type'] = 'contact';
index 4b3bb1c7cfa893306b4248d277ae421813b87ed9..98517361ea34c48a373fcc50380719800a88d9c6 100644 (file)
@@ -42,7 +42,7 @@ class Search
        const DEFAULT_DIRECTORY = 'https://dir.friendica.social';
 
        const TYPE_PEOPLE = 0;
-       const TYPE_FORUM  = 1;
+       const TYPE_GROUP  = 1;
        const TYPE_ALL    = 2;
 
        /**
@@ -55,7 +55,7 @@ class Search
         * @throws HTTPException\InternalServerErrorException
         * @throws \ImagickException
         */
-       public static function getContactsFromProbe(string $user, $only_forum = false): ResultList
+       public static function getContactsFromProbe(string $user, $only_group = false): ResultList
        {
                $emptyResultList = new ResultList();
 
@@ -68,7 +68,7 @@ class Search
                        return $emptyResultList;
                }
 
-               if ($only_forum && ($user_data['contact-type'] != Contact::TYPE_COMMUNITY)) {
+               if ($only_group && ($user_data['contact-type'] != Contact::TYPE_COMMUNITY)) {
                        return $emptyResultList;
                }
 
@@ -112,8 +112,8 @@ class Search
                $searchUrl = $server . '/search';
 
                switch ($type) {
-                       case self::TYPE_FORUM:
-                               $searchUrl .= '/forum';
+                       case self::TYPE_GROUP:
+                               $searchUrl .= '/group';
                                break;
                        case self::TYPE_PEOPLE:
                                $searchUrl .= '/people';
@@ -174,7 +174,7 @@ class Search
        {
                Logger::info('Searching', ['search' => $search, 'type' => $type, 'start' => $start, 'itempage' => $itemPage]);
 
-               $contacts = Contact::searchByName($search, $type == self::TYPE_FORUM ? 'community' : '', true);
+               $contacts = Contact::searchByName($search, $type == self::TYPE_GROUP ? 'community' : '', true);
 
                $resultList = new ResultList($start, count($contacts), $itemPage);
 
@@ -240,7 +240,9 @@ class Search
                                        $return = array_map(function ($result) {
                                                static $contactType = [
                                                        'People'       => Contact::TYPE_PERSON,
+                                                       // Kept for backward compatibility
                                                        'Forum'        => Contact::TYPE_COMMUNITY,
+                                                       'Group'        => Contact::TYPE_COMMUNITY,
                                                        'Organization' => Contact::TYPE_ORGANISATION,
                                                        'News'         => Contact::TYPE_NEWS,
                                                ];
index e1ef4ad3309c11eab1769bbdddc831411a4b5928..89453a0e8c9bb5f8626af153094887fa4f2509ba 100644 (file)
@@ -615,9 +615,9 @@ class Circle
         * @param integer $id Contact ID
         * @return integer Circle ID
         */
-       public static function getIdForForum(int $id): int
+       public static function getIdForGroup(int $id): int
        {
-               Logger::info('Get id for forum id', ['id' => $id]);
+               Logger::info('Get id for group id', ['id' => $id]);
                $contact = Contact::getById($id, ['uid', 'name', 'contact-type', 'manually-approve']);
                if (empty($contact) || ($contact['contact-type'] != Contact::TYPE_COMMUNITY) || !$contact['manually-approve']) {
                        return 0;
@@ -645,9 +645,9 @@ class Circle
         * @param integer $id Contact ID
         * @return void
         */
-       public static function updateMembersForForum(int $id)
+       public static function updateMembersForGroup(int $id)
        {
-               Logger::info('Update forum members', ['id' => $id]);
+               Logger::info('Update group members', ['id' => $id]);
 
                $contact = Contact::getById($id, ['uid', 'url']);
                if (empty($contact)) {
@@ -659,7 +659,7 @@ class Circle
                        return;
                }
 
-               $gid = self::getIdForForum($id);
+               $gid = self::getIdForGroup($id);
                if (empty($gid)) {
                        return;
                }
@@ -682,6 +682,6 @@ class Circle
                }
 
                DBA::delete('group_member', ['gid' => $gid, 'contact-id' => $current]);
-               Logger::info('Updated forum members', ['id' => $id, 'count' => DBA::count('group_member', ['gid' => $gid])]);
+               Logger::info('Updated group members', ['id' => $id, 'count' => DBA::count('group_member', ['gid' => $gid])]);
        }
 }
index 19bb97761cc574bdacf8e4e8e9cf95371f51dad8..3f830c29a41f5f1f36909f00d534ac1d3641c727 100644 (file)
@@ -79,7 +79,7 @@ class Contact
         * TYPE_NEWS - the account is a news reflector
         *      Associated page type: PAGE_SOAPBOX
         *
-        * TYPE_COMMUNITY - the account is community forum
+        * TYPE_COMMUNITY - the account is community group
         *      Associated page types: PAGE_COMMUNITY, PAGE_PRVGROUP
         *
         * TYPE_RELAY - the account is a relay
@@ -1652,7 +1652,7 @@ class Contact
                                break;
 
                        case self::TYPE_COMMUNITY:
-                               $account_type = DI::l10n()->t("Forum");
+                               $account_type = DI::l10n()->t("Group");
                                break;
 
                        default:
@@ -3472,13 +3472,13 @@ class Contact
        }
 
        /**
-        * Is the contact a forum?
+        * Is the contact a group?
         *
         * @param integer $contactid ID of the contact
         *
-        * @return boolean "true" if it is a forum
+        * @return boolean "true" if it is a group
         */
-       public static function isForum(int $contactid): bool
+       public static function isGroup(int $contactid): bool
        {
                $fields = ['contact-type'];
                $condition = ['id' => $contactid];
@@ -3487,7 +3487,7 @@ class Contact
                        return false;
                }
 
-               // Is it a forum?
+               // Is it a group?
                return ($contact['contact-type'] == self::TYPE_COMMUNITY);
        }
 
index 60e88757e051bb9bfe2ba88639feeff3984880bc..fad8ffeff4716cad0e7b8d09bd146020e7efe5f6 100644 (file)
@@ -1004,7 +1004,7 @@ class Item
                        $item['deleted']       = $toplevel_parent['deleted'];
                        $item['wall']          = $toplevel_parent['wall'];
 
-                       // Reshares have to keep their permissions to allow forums to work
+                       // Reshares have to keep their permissions to allow groups to work
                        if (!$defined_permissions && (!$item['origin'] || ($item['verb'] != Activity::ANNOUNCE))) {
                                $item['allow_cid']     = $toplevel_parent['allow_cid'];
                                $item['allow_gid']     = $toplevel_parent['allow_gid'];
@@ -1307,7 +1307,7 @@ class Item
 
                Post::update($fields, ['uri-id' => $posted_item['parent-uri-id'], 'uid' => $posted_item['uid']]);
 
-               // In that function we check if this is a forum post. Additionally we delete the item under certain circumstances
+               // In that function we check if this is a group post. Additionally we delete the item under certain circumstances
                if (self::tagDeliver($posted_item['uid'], $post_user_id)) {
                        // Get the user information for the logging
                        $user = User::getById($uid);
@@ -1418,11 +1418,11 @@ class Item
        }
 
        /**
-        * Change the owner of a parent item if it had been shared by a forum
+        * Change the owner of a parent item if it had been shared by a group
         *
-        * (public) forum posts in the new format consist of the regular post by the author
-        * followed by an announce message sent from the forum account.
-        * Changing the owner helps in grouping forum posts.
+        * (public) group posts in the new format consist of the regular post by the author
+        * followed by an announce message sent from the group account.
+        * Changing the owner helps in grouping group posts.
         *
         * @param array $item
         * @return void
@@ -1458,7 +1458,7 @@ class Item
                        }
 
                        if (Contact::isSharing($parent['owner-id'], $item['uid'])) {
-                               Logger::info('The resharer is no forum: quit', ['resharer' => $item['author-id'], 'owner' => $parent['owner-id'], 'author' => $parent['author-id'], 'uid' => $item['uid']]);
+                               Logger::info('The resharer is no group: quit', ['resharer' => $item['author-id'], 'owner' => $parent['owner-id'], 'author' => $parent['author-id'], 'uid' => $item['uid']]);
                                return;
                        }
                }
@@ -1603,7 +1603,7 @@ class Item
                if (($uid != 0) && ($item['gravity'] == self::GRAVITY_PARENT)) {
                        $owner = User::getOwnerDataById($uid);
                        if (($owner['contact-type'] == User::ACCOUNT_TYPE_COMMUNITY) && !Tag::isMentioned($uri_id, $owner['url'])) {
-                               Logger::info('Target user is a forum but is not mentioned here, thread will not be stored', ['uid' => $uid, 'uri-id' => $uri_id]);
+                               Logger::info('Target user is a group but is not mentioned here, thread will not be stored', ['uid' => $uid, 'uri-id' => $uri_id]);
                                return 0;
                        }
                }
@@ -1709,7 +1709,7 @@ class Item
                        return 0;
                }
 
-               // When the post belongs to a a forum then all forum users are allowed to access it
+               // When the post belongs to a a group then all group users are allowed to access it
                foreach (Tag::getByURIId($uriid, [Tag::MENTION, Tag::EXCLUSIVE_MENTION]) as $tag) {
                        if (DBA::exists('contact', ['uid' => $uid, 'nurl' => Strings::normaliseLink($tag['url']), 'contact-type' => Contact::TYPE_COMMUNITY])) {
                                $target_uid = User::getIdForURL($tag['url']);
@@ -2104,7 +2104,7 @@ class Item
                /// @todo On private posts we could obfuscate the date
                $update = ($arr['private'] != self::PRIVATE) || in_array($arr['network'], Protocol::FEDERATED);
 
-               // Is it a forum? Then we don't care about the rules from above
+               // Is it a group? Then we don't care about the rules from above
                if (!$update && in_array($arr["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN]) && ($arr["parent-uri-id"] === $arr["uri-id"])) {
                        if (DBA::exists('contact', ['id' => $arr['contact-id'], 'forum' => true])) {
                                $update = true;
@@ -2200,7 +2200,7 @@ class Item
        }
 
        /**
-        * look for mention tags and setup a second delivery chain for forum/community posts if appropriate
+        * look for mention tags and setup a second delivery chain for group/community posts if appropriate
         *
         * @param int $uid
         * @param int $item_id
@@ -3663,13 +3663,13 @@ class Item
        }
 
        /**
-        * Does the given uri-id belongs to a post that is sent as starting post to a forum?
+        * Does the given uri-id belongs to a post that is sent as starting post to a group?
         *
         * @param int $uri_id
         *
-        * @return boolean "true" when it is a forum post
+        * @return boolean "true" when it is a group post
         */
-       public static function isForumPost(int $uri_id): bool
+       public static function isGroupPost(int $uri_id): bool
        {
                foreach (Tag::getByURIId($uri_id, [Tag::EXCLUSIVE_MENTION]) as $tag) {
                        if (DBA::exists('contact', ['uid' => 0, 'nurl' => Strings::normaliseLink($tag['url']), 'contact-type' => Contact::TYPE_COMMUNITY])) {
index c823545fbf8b3e84607f69dda815c98c54e4003e..3476a2ca9bfa149f377ae3a43077ce5c5a2e9daf 100644 (file)
@@ -42,7 +42,7 @@ class Type
        const TAG_SELF = 128;
        /** @var int Notification about getting poked/prodded/etc. (Obsolete) */
        const POKE = 512;
-       /** @var int Notification about either a contact had posted something directly or the contact is a mentioned forum */
+       /** @var int Notification about either a contact had posted something directly or the contact is a mentioned group */
        const SHARE = 1024;
 
        /** @var int Global System notifications */
index 44ee6a6706e242c245fce15a9aeca9ea0c49aead..2235137be2f66c036b470082401384c579c37be1 100644 (file)
@@ -830,7 +830,7 @@ class Photo
         * Changes photo permissions that had been embedded in a post
         *
         * @todo This function currently does have some flaws:
-        * - Sharing a post with a forum will create a photo that only the forum can see.
+        * - Sharing a post with a group will create a photo that only the group can see.
         * - Sharing a photo again that been shared non public before doesn't alter the permissions.
         *
         * @return string
@@ -877,7 +877,7 @@ class Photo
                        /**
                         * @todo Existing permissions need to be mixed with the new ones.
                         * Otherwise this creates problems with sharing the same picture multiple times
-                        * Also check if $str_contact_allow does contain a public forum.
+                        * Also check if $str_contact_allow does contain a public group.
                         * Then set the permissions to public.
                         */
 
index 215d817133554a078519ef92d24a86a80ee71a95..9f0f8d29a672738a034cd3167bccf01cfa6814ad 100644 (file)
@@ -50,7 +50,7 @@ class Tag
         */
        const IMPLICIT_MENTION  = 8;
        /**
-        * An exclusive mention transmits the post only to the target account without transmitting it to the followers, usually a forum.
+        * An exclusive mention transmits the post only to the target account without transmitting it to the followers, usually a group.
         */
        const EXCLUSIVE_MENTION = 9;
 
index ed63d67650d7212bbadd08404c6398ab339e5f5c..d6a72fbfe9256b11e9ed027a2f6f16e7b4277eb4 100644 (file)
@@ -88,7 +88,7 @@ class User
         * ACCOUNT_TYPE_NEWS - the account is a news reflector
         *      Associated page type: PAGE_FLAGS_SOAPBOX
         *
-        * ACCOUNT_TYPE_COMMUNITY - the account is community forum
+        * ACCOUNT_TYPE_COMMUNITY - the account is community group
         *      Associated page types: PAGE_COMMUNITY, PAGE_FLAGS_PRVGROUP
         *
         * ACCOUNT_TYPE_RELAY - the account is a relay
index 262ec94a20b8d875f751c15ad0d8ee2ba83c0ff5..4a25b71a561d56fc641205121b63d5193b420e69 100644 (file)
@@ -71,8 +71,8 @@ class BaseSearch extends BaseModule
                        $header  = DI::l10n()->t('People Search - %s', $search);
                } elseif (strpos($search, '!') === 0) {
                        $search = trim(substr($search, 1));
-                       $type   = Search::TYPE_FORUM;
-                       $header = DI::l10n()->t('Forum Search - %s', $search);
+                       $type   = Search::TYPE_GROUP;
+                       $header = DI::l10n()->t('Group Search - %s', $search);
                }
 
                $search = Network::convertToIdn($search);
@@ -98,7 +98,7 @@ class BaseSearch extends BaseModule
                }
 
                if (!$results->getTotal()) {
-                       $results = Search::getContactsFromProbe(Network::convertToIdn($search), $type == Search::TYPE_FORUM);
+                       $results = Search::getContactsFromProbe(Network::convertToIdn($search), $type == Search::TYPE_GROUP);
                }
 
                return self::printResult($results, $pager, $header);
@@ -151,4 +151,4 @@ class BaseSearch extends BaseModule
                        '$paginate' => $pager->renderFull($results->getTotal()),
                ]);
        }
-}
\ No newline at end of file
+}
index 72e541be4b90bf261b05b8351e12ba0f5c5a162c..d4b766ae260020aa93c585d9fd463221505ec62d 100644 (file)
@@ -24,7 +24,7 @@ namespace Friendica\Module\Conversation;
 use Friendica\BaseModule;
 use Friendica\Content\BoundariesPager;
 use Friendica\Content\Conversation;
-use Friendica\Content\ForumManager;
+use Friendica\Content\GroupManager;
 use Friendica\Content\Nav;
 use Friendica\Content\Widget;
 use Friendica\Content\Text\HTML;
@@ -52,7 +52,7 @@ class Network extends BaseModule
        /** @var int */
        private static $circleId;
        /** @var int */
-       private static $forumContactId;
+       private static $groupContactId;
        /** @var string */
        private static $selectedTab;
        /** @var mixed */
@@ -90,9 +90,9 @@ class Network extends BaseModule
 
                DI::page()['aside'] .= Widget::accountTypes($module, self::$accountTypeString);
                DI::page()['aside'] .= Circle::sidebarWidget($module, $module . '/circle', 'standard', self::$circleId);
-               DI::page()['aside'] .= ForumManager::widget($module . '/forum', DI::userSession()->getLocalUserId(), self::$forumContactId);
+               DI::page()['aside'] .= GroupManager::widget($module . '/group', DI::userSession()->getLocalUserId(), self::$groupContactId);
                DI::page()['aside'] .= Widget::postedByYear($module . '/archive', DI::userSession()->getLocalUserId(), false);
-               DI::page()['aside'] .= Widget::networks($module, !self::$forumContactId ? self::$network : '');
+               DI::page()['aside'] .= Widget::networks($module, !self::$groupContactId ? self::$network : '');
                DI::page()['aside'] .= Widget\SavedSearches::getHTML(DI::args()->getQueryString());
                DI::page()['aside'] .= Widget::fileAs('filed', '');
 
@@ -119,9 +119,9 @@ class Network extends BaseModule
 
                        $content = '';
 
-                       if (self::$forumContactId) {
-                               // If self::$forumContactId belongs to a community forum or a private group, add a mention to the status editor
-                               $condition = ["`id` = ? AND `contact-type` = ?", self::$forumContactId, Contact::TYPE_COMMUNITY];
+                       if (self::$groupContactId) {
+                               // If self::$groupContactId belongs to a community group or a private group, add a mention to the status editor
+                               $condition = ["`id` = ? AND `contact-type` = ?", self::$groupContactId, Contact::TYPE_COMMUNITY];
                                $contact = DBA::selectFirst('contact', ['addr'], $condition);
                                if (!empty($contact['addr'])) {
                                        $content = '!' . $contact['addr'];
@@ -136,8 +136,8 @@ class Network extends BaseModule
                        }
 
                        $allowedCids = [];
-                       if (self::$forumContactId) {
-                               $allowedCids[] = (int) self::$forumContactId;
+                       if (self::$groupContactId) {
+                               $allowedCids[] = (int) self::$groupContactId;
                        } elseif (self::$network) {
                                $condition = [
                                        'uid'     => DI::userSession()->getLocalUserId(),
@@ -160,9 +160,9 @@ class Network extends BaseModule
                        }
 
                        $x = [
-                               'lockstate' => self::$circleId || self::$forumContactId || self::$network || ACL::getLockstateForUserId($a->getLoggedInUserId()) ? 'lock' : 'unlock',
+                               'lockstate' => self::$circleId || self::$groupContactId || self::$network || ACL::getLockstateForUserId($a->getLoggedInUserId()) ? 'lock' : 'unlock',
                                'acl' => ACL::getFullSelectorHTML(DI::page(), $a->getLoggedInUserId(), true, $default_permissions),
-                               'bang' => ((self::$circleId || self::$forumContactId || self::$network) ? '!' : ''),
+                               'bang' => ((self::$circleId || self::$groupContactId || self::$network) ? '!' : ''),
                                'content' => $content,
                        ];
 
@@ -178,8 +178,8 @@ class Network extends BaseModule
                        $o = Renderer::replaceMacros(Renderer::getMarkupTemplate('section_title.tpl'), [
                                '$title' => DI::l10n()->t('Circle: %s', $circle['name'])
                        ]) . $o;
-               } elseif (self::$forumContactId) {
-                       $contact = Contact::getById(self::$forumContactId);
+               } elseif (self::$groupContactId) {
+                       $contact = Contact::getById(self::$groupContactId);
                        if (DBA::isResult($contact)) {
                                $o = Renderer::replaceMacros(Renderer::getMarkupTemplate('contact/list.tpl'), [
                                        'contacts' => [ModuleContact::getContactTemplateVars($contact)],
@@ -307,7 +307,7 @@ class Network extends BaseModule
        {
                self::$circleId = $this->parameters['circle_id'] ?? 0;
 
-               self::$forumContactId = $this->parameters['contact_id'] ?? 0;
+               self::$groupContactId = $this->parameters['contact_id'] ?? 0;
 
                self::$selectedTab = self::getTimelineOrderBySession(DI::userSession(), DI::pConfig());
 
@@ -413,10 +413,10 @@ class Network extends BaseModule
 
                if (self::$circleId) {
                        $conditionStrings = DBA::mergeConditions($conditionStrings, ["`contact-id` IN (SELECT `contact-id` FROM `group_member` WHERE `gid` = ?)", self::$circleId]);
-               } elseif (self::$forumContactId) {
+               } elseif (self::$groupContactId) {
                        $conditionStrings = DBA::mergeConditions($conditionStrings,
                                ["((`contact-id` = ?) OR `uri-id` IN (SELECT `parent-uri-id` FROM `post-user-view` WHERE (`contact-id` = ? AND `gravity` = ? AND `vid` = ? AND `uid` = ?)))",
-                               self::$forumContactId, self::$forumContactId, Item::GRAVITY_ACTIVITY, Verb::getID(Activity::ANNOUNCE), DI::userSession()->getLocalUserId()]);
+                               self::$groupContactId, self::$groupContactId, Item::GRAVITY_ACTIVITY, Verb::getID(Activity::ANNOUNCE), DI::userSession()->getLocalUserId()]);
                }
 
                // Currently only the order modes "received" and "commented" are in use
@@ -479,7 +479,7 @@ class Network extends BaseModule
                // We aren't going to try and figure out at the item, circle, and page
                // level which items you've seen and which you haven't. If you're looking
                // at the top level network page just mark everything seen.
-               if (!self::$circleId && !self::$forumContactId && !self::$star && !self::$mention) {
+               if (!self::$circleId && !self::$groupContactId && !self::$star && !self::$mention) {
                        $condition = ['unseen' => true, 'uid' => DI::userSession()->getLocalUserId()];
                        self::setItemsSeenByCondition($condition);
                } elseif (!empty($parents)) {
index cbcb625a863c93ae56153d061d55de5296fcc671..2d352dbdc3e1462ec21f1e331a98ccd6c36f9057 100644 (file)
@@ -118,15 +118,15 @@ abstract class BaseUsers extends BaseModeration
                        $page_types = [
                                User::PAGE_FLAGS_NORMAL    => $this->t('Normal Account Page'),
                                User::PAGE_FLAGS_SOAPBOX   => $this->t('Soapbox Page'),
-                               User::PAGE_FLAGS_COMMUNITY => $this->t('Public Forum'),
+                               User::PAGE_FLAGS_COMMUNITY => $this->t('Public Group'),
                                User::PAGE_FLAGS_FREELOVE  => $this->t('Automatic Friend Page'),
-                               User::PAGE_FLAGS_PRVGROUP  => $this->t('Private Forum')
+                               User::PAGE_FLAGS_PRVGROUP  => $this->t('Private Group')
                        ];
                        $account_types = [
                                User::ACCOUNT_TYPE_PERSON       => $this->t('Personal Page'),
                                User::ACCOUNT_TYPE_ORGANISATION => $this->t('Organisation Page'),
                                User::ACCOUNT_TYPE_NEWS         => $this->t('News Page'),
-                               User::ACCOUNT_TYPE_COMMUNITY    => $this->t('Community Forum'),
+                               User::ACCOUNT_TYPE_COMMUNITY    => $this->t('Community Group'),
                                User::ACCOUNT_TYPE_RELAY        => $this->t('Relay'),
                        ];
 
index 3d7c007a4effd92a01638f5ed90052aa05b1c85d..849eb284f52d11baf5fd2357276c9aaf783a4bec 100644 (file)
@@ -52,10 +52,10 @@ class Summary extends BaseModeration
                $accounts = [
                        [$this->t('Normal Account'), 0],
                        [$this->t('Automatic Follower Account'), 0],
-                       [$this->t('Public Forum Account'), 0],
+                       [$this->t('Public Group Account'), 0],
                        [$this->t('Automatic Friend Account'), 0],
                        [$this->t('Blog Account'), 0],
-                       [$this->t('Private Forum Account'), 0]
+                       [$this->t('Private Group Account'), 0]
                ];
 
                $users = 0;
index dd9e8cccde61a381b48c663c6c69fe27acacf5d1..120035d557643b8493381e26fbe07250ddec41a0 100644 (file)
@@ -24,7 +24,7 @@ namespace Friendica\Module\Notifications;
 use Friendica\App;
 use Friendica\BaseModule;
 use Friendica\Contact\Introduction\Repository\Introduction;
-use Friendica\Content\ForumManager;
+use Friendica\Content\GroupManager;
 use Friendica\Core\Cache\Capability\ICanCache;
 use Friendica\Core\Cache\Enum\Duration;
 use Friendica\Core\Config\Capability\IManageConfigValues;
@@ -109,14 +109,14 @@ class Ping extends BaseModule
                $register_count  = 0;
                $sysnotify_count = 0;
                $circles_unseen   = [];
-               $forums_unseen   = [];
+               $groups_unseen   = [];
 
                $event_count          = 0;
                $today_event_count    = 0;
                $birthday_count       = 0;
                $today_birthday_count = 0;
 
-               // Suppress notification display for forum accounts
+               // Suppress notification display for group accounts
                if ($this->session->getLocalUserId() && $this->session->get('page_flags', '') != User::PAGE_FLAGS_COMMUNITY) {
                        if ($this->pconfig->get($this->session->getLocalUserId(), 'system', 'detailed_notif')) {
                                $notifications = $this->notificationRepo->selectDetailedForUser($this->session->getLocalUserId());
@@ -160,9 +160,9 @@ class Ping extends BaseModule
                                        }
                                }
 
-                               foreach (ForumManager::countUnseenItems() as $forum_count) {
-                                       if ($forum_count['count'] > 0) {
-                                               $forums_unseen[] = $forum_count;
+                               foreach (GroupManager::countUnseenItems() as $group_count) {
+                                       if ($group_count['count'] > 0) {
+                                               $groups_unseen[] = $group_count;
                                        }
                                }
                        }
@@ -290,7 +290,7 @@ class Ping extends BaseModule
                $data['birthdays']       = $birthday_count;
                $data['birthdays-today'] = $today_birthday_count;
                $data['circles']         = $circles_unseen;
-               $data['forums']          = $forums_unseen;
+               $data['groups']          = $groups_unseen;
                $data['notification']    = ($notification_count < 50) ? $notification_count : '49+';
 
                $data['notifications'] = $navNotifications;
index edd99e418fef37f37c0a94473fd63b9d4825e7f0..9d5fea0a6ecc4112261e30c7ff3a033797c3f8b4 100644 (file)
@@ -188,7 +188,7 @@ class Conversations extends BaseProfile
                        $condition = DBA::mergeConditions($condition, ["`received` >= ?", DateTimeFormat::convert($datequery2, 'UTC', $this->app->getTimeZone())]);
                }
 
-               // Does the profile page belong to a forum?
+               // Does the profile page belong to a group?
                // If not then we can improve the performance with an additional condition
                if ($profile['account-type'] != User::ACCOUNT_TYPE_COMMUNITY) {
                        $condition = DBA::mergeConditions($condition, ['contact-id' => $profile['id']]);
index d753cd762ea004509cc936d1a4fb874ccd3e9877..5e5028cb865f76c50a20b73162ce6f5378dae1d1 100644 (file)
@@ -23,7 +23,7 @@ namespace Friendica\Module\Profile;
 
 use Friendica\App;
 use Friendica\Content\Feature;
-use Friendica\Content\ForumManager;
+use Friendica\Content\GroupManager;
 use Friendica\Content\Nav;
 use Friendica\Content\Text\BBCode;
 use Friendica\Core\Config\Capability\IManageConfigValues;
@@ -254,12 +254,12 @@ class Profile extends BaseProfile
                        );
                }
 
-               //show subscribed forum if it is enabled in the usersettings
+               //show subscribed group if it is enabled in the usersettings
                if (Feature::isEnabled($profile['uid'], 'forumlist_profile')) {
                        $custom_fields += self::buildField(
-                               'forumlist',
-                               $this->t('Forums:'),
-                               ForumManager::profileAdvanced($profile['uid'])
+                               'group_list',
+                               $this->t('Groups:'),
+                               GroupManager::profileAdvanced($profile['uid'])
                        );
                }
 
index 4aa8922153b19e08a66aaf87a63fbce7e46e4275..66e371dd17a5aadda34bced550826428faa8777a 100644 (file)
@@ -50,7 +50,7 @@ class Acl extends BaseModule
        const TYPE_MENTION_CONTACT        = 'c';
        const TYPE_MENTION_CIRCLE         = 'g';
        const TYPE_MENTION_CONTACT_CIRCLE = '';
-       const TYPE_MENTION_FORUM          = 'f';
+       const TYPE_MENTION_GROUP          = 'f';
        const TYPE_PRIVATE_MESSAGE        = 'm';
        const TYPE_ANY_CONTACT            = 'a';
 
@@ -100,7 +100,7 @@ class Acl extends BaseModule
                                'nick'    => $contact['addr'] ?: $contact['url'],
                                'network' => $contact['network'],
                                'link'    => $contact['url'],
-                               'forum'   => $contact['contact-type'] == Contact::TYPE_COMMUNITY,
+                               'group'   => $contact['contact-type'] == Contact::TYPE_COMMUNITY,
                        ];
                }
 
@@ -161,7 +161,7 @@ class Acl extends BaseModule
                                        ]);
                                break;
 
-                       case self::TYPE_MENTION_FORUM:
+                       case self::TYPE_MENTION_GROUP:
                                $condition = DBA::mergeConditions($condition,
                                        ["NOT `self` AND NOT `blocked` AND `notify` != ? AND `contact-type` = ?", '', Contact::TYPE_COMMUNITY
                                        ]);
@@ -205,7 +205,7 @@ class Acl extends BaseModule
                                        'id'    => intval($circle['id']),
                                        'uids'  => array_map('intval', explode(',', $circle['uids'])),
                                        'link'  => '',
-                                       'forum' => '0'
+                                       'group' => '0'
                                ];
                        }
                        if ((count($resultCircles) > 0) && ($search == '')) {
@@ -218,7 +218,7 @@ class Acl extends BaseModule
                        $contacts = Contact::selectToArray([], $condition, ['order' => ['name']]);
                }
 
-               $forums = [];
+               $groups = [];
                foreach ($contacts as $contact) {
                        $entry = [
                                'type'    => self::TYPE_MENTION_CONTACT,
@@ -229,21 +229,21 @@ class Acl extends BaseModule
                                'link'    => $contact['url'],
                                'nick'    => htmlentities(($contact['attag'] ?? '') ?: $contact['nick']),
                                'addr'    => htmlentities(($contact['addr'] ?? '') ?: $contact['url']),
-                               'forum'   => $contact['contact-type'] == Contact::TYPE_COMMUNITY,
+                               'group'   => $contact['contact-type'] == Contact::TYPE_COMMUNITY,
                        ];
-                       if ($entry['forum']) {
-                               $forums[] = $entry;
+                       if ($entry['group']) {
+                               $groups[] = $entry;
                        } else {
                                $resultContacts[] = $entry;
                        }
                }
 
-               if ($forums) {
+               if ($groups) {
                        if ($search == '') {
-                               $forums[] = ['separator' => true];
+                               $groups[] = ['separator' => true];
                        }
 
-                       $resultContacts = array_merge($forums, $resultContacts);
+                       $resultContacts = array_merge($groups, $resultContacts);
                }
 
                $resultItems = array_merge($resultCircles, $resultContacts);
@@ -285,7 +285,7 @@ class Acl extends BaseModule
                                                'link'    => $contact['url'],
                                                'nick'    => htmlentities(($contact['nick'] ?? '') ?: $contact['addr']),
                                                'addr'    => htmlentities(($contact['addr'] ?? '') ?: $contact['url']),
-                                               'forum'   => $contact['forum']
+                                               'group'   => $contact['forum']
                                        ];
                                }
                        }
index 167389684240469ccdae63db5210983f24ae2426..b08857a73916a80d758c3d56def04e3be7915ccc 100644 (file)
@@ -139,7 +139,7 @@ class Index extends BaseSearch
                                                break;
                                        case 'contacts':
                                                return self::performContactSearch($search, '@');
-                                       case 'forums':
+                                       case 'groups':
                                                return self::performContactSearch($search, '!');
                                }
                        }
index c2b227c8590ca7267fdf5e77764aa5b630a202ee..fe8e5e626cdc5895967ca97d8998a6b139938cf8 100644 (file)
@@ -452,7 +452,7 @@ class Account extends BaseSettings
                $pagetype    = Renderer::replaceMacros($pageset_tpl, [
                        '$account_types'     => DI::l10n()->t("Account Types"),
                        '$user'              => DI::l10n()->t("Personal Page Subtypes"),
-                       '$community'         => DI::l10n()->t("Community Forum Subtypes"),
+                       '$community'         => DI::l10n()->t("Community Group Subtypes"),
                        '$account_type'      => $user['account-type'],
                        '$type_person'       => User::ACCOUNT_TYPE_PERSON,
                        '$type_organisation' => User::ACCOUNT_TYPE_ORGANISATION,
@@ -481,7 +481,7 @@ class Account extends BaseSettings
                        ],
                        '$account_community' => [
                                'account-type',
-                               DI::l10n()->t('Community Forum'),
+                               DI::l10n()->t('Community Group'),
                                User::ACCOUNT_TYPE_COMMUNITY,
                                DI::l10n()->t('Account for community discussions.'),
                                $user['account-type'] == User::ACCOUNT_TYPE_COMMUNITY
@@ -502,7 +502,7 @@ class Account extends BaseSettings
                        ],
                        '$page_community' => [
                                'page-flags',
-                               DI::l10n()->t('Public Forum'),
+                               DI::l10n()->t('Public Group'),
                                User::PAGE_FLAGS_COMMUNITY,
                                DI::l10n()->t('Automatically approves all contact requests.'),
                                $user['page-flags'] == User::PAGE_FLAGS_COMMUNITY
@@ -516,7 +516,7 @@ class Account extends BaseSettings
                        ],
                        '$page_prvgroup' => [
                                'page-flags',
-                               DI::l10n()->t('Private Forum [Experimental]'),
+                               DI::l10n()->t('Private Group [Experimental]'),
                                User::PAGE_FLAGS_PRVGROUP,
                                DI::l10n()->t('Requires manual approval of contact requests.'),
                                $user['page-flags'] == User::PAGE_FLAGS_PRVGROUP
index 6c386852402f6d50fe5e33ea1cb274f121b54f06..2cacaa728fc18a7735aebdc62af726656303f5d0 100644 (file)
@@ -242,7 +242,7 @@ class Notify extends BaseRepository
                        return false;
                }
 
-               // There is no need to create notifications for forum accounts
+               // There is no need to create notifications for group accounts
                if ($user['account-type'] == Model\User::ACCOUNT_TYPE_COMMUNITY) {
                        return false;
                }
index 0f5e98aed92e7ffc4f6f740a011f209333e7a9c1..1fa7588b412d08292097e45d699c102b5ad5c8d9 100644 (file)
@@ -925,7 +925,7 @@ class Post
 
                if ($conv) {
                        // This will allow us to comment on wall-to-wall items owned by our friends
-                       // and community forums even if somebody else wrote the post.
+                       // and community groups even if somebody else wrote the post.
                        // bug #517 - this fixes for conversation owner
                        if ($conv->getMode() == 'profile' && $conv->getProfileOwner() == DI::userSession()->getLocalUserId()) {
                                return true;
index d1177e0b07375962c58665976e2fb6a0a43b2860..eaf34669ba27c1c514daf9f1e92dd2352bfb4953 100644 (file)
@@ -52,8 +52,8 @@ use Friendica\Util\JsonLD;
  * - Polling the outboxes for missing content?
  *
  * Missing parts from DFRN:
- * - Public Forum
- * - Private Forum
+ * - Public Group
+ * - Private Group
  * - Relocation
  */
 class ActivityPub
index b8d4005a6131df06c35677e79023ca7377611dbc..453525454a51bb0f1589b96473c2b2351d92c5b3 100644 (file)
@@ -415,7 +415,7 @@ class Processor
                        $item['post-type'] = Item::PT_NOTE;
                }
 
-               $item['isForum'] = false;
+               $item['isGroup'] = false;
 
                if (!empty($activity['thread-completion'])) {
                        if ($activity['thread-completion'] != $item['owner-id']) {
@@ -434,7 +434,7 @@ class Processor
                        $item['owner-id'] = $item['author-id'];
                } else {
                        $actor = APContact::getByURL($item['owner-link'], false);
-                       $item['isForum'] = ($actor['type'] ?? 'Person') == 'Group';
+                       $item['isGroup'] = ($actor['type'] ?? 'Person') == 'Group';
                }
 
                $item['uri'] = $activity['id'];
@@ -1059,7 +1059,7 @@ class Processor
                                $item['causer-id'] = ($item['gravity'] == Item::GRAVITY_PARENT) ? $item['owner-id'] : $item['author-id'];
                        }
 
-                       if ($item['isForum'] ?? false) {
+                       if ($item['isGroup'] ?? false) {
                                $item['contact-id'] = Contact::getIdForURL($activity['actor'], $receiver);
                        } else {
                                $item['contact-id'] = Contact::getIdForURL($activity['author'], $receiver);
@@ -1075,7 +1075,7 @@ class Processor
                        }
 
                        if (($receiver != 0) && ($item['gravity'] == Item::GRAVITY_PARENT) && !in_array($item['post-reason'], [Item::PR_FOLLOWER, Item::PR_TAG, item::PR_TO, Item::PR_CC, Item::PR_AUDIENCE])) {
-                               if (!($item['isForum'] ?? false)) {
+                               if (!($item['isGroup'] ?? false)) {
                                        if ($item['post-reason'] == Item::PR_BCC) {
                                                Logger::info('Top level post via BCC from a non sharer, ignoring', ['uid' => $receiver, 'contact' => $item['contact-id'], 'url' => $item['uri']]);
                                                continue;
@@ -1089,16 +1089,16 @@ class Processor
                                        }
                                }
 
-                               $is_forum = false;
+                               $isGroup = false;
                                $user = User::getById($receiver, ['account-type']);
                                if (!empty($user['account-type'])) {
-                                       $is_forum = ($user['account-type'] == User::ACCOUNT_TYPE_COMMUNITY);
+                                       $isGroup = ($user['account-type'] == User::ACCOUNT_TYPE_COMMUNITY);
                                }
 
                                if ((DI::pConfig()->get($receiver, 'system', 'accept_only_sharer') == Item::COMPLETION_NONE)
-                                       && ((!$is_forum && !($item['isForum'] ?? false) && ($activity['type'] != 'as:Announce'))
+                                       && ((!$isGroup && !($item['isGroup'] ?? false) && ($activity['type'] != 'as:Announce'))
                                        || !Contact::isSharingByURL($activity['actor'], $receiver))) {
-                                       Logger::info('Actor is a non sharer, is no forum or it is no announce', ['uid' => $receiver, 'actor' => $activity['actor'], 'url' => $item['uri'], 'type' => $activity['type']]);
+                                       Logger::info('Actor is a non sharer, is no group or it is no announce', ['uid' => $receiver, 'actor' => $activity['actor'], 'url' => $item['uri'], 'type' => $activity['type']]);
                                        continue;
                                }
 
@@ -1141,7 +1141,7 @@ class Processor
                // Store send a follow request for every reshare - but only when the item had been stored
                if ($stored && ($item['private'] != Item::PRIVATE) && ($item['gravity'] == Item::GRAVITY_PARENT) && !empty($item['author-link']) && ($item['author-link'] != $item['owner-link'])) {
                        $author = APContact::getByURL($item['owner-link'], false);
-                       // We send automatic follow requests for reshared messages. (We don't need though for forum posts)
+                       // We send automatic follow requests for reshared messages. (We don't need though for group posts)
                        if ($author['type'] != 'Group') {
                                Logger::info('Send follow request', ['uri' => $item['uri'], 'stored' => $stored, 'to' => $item['author-link']]);
                                ActivityPub\Transmitter::sendFollowObject($item['uri'], $item['author-link']);
index cf2485186af1706821fa08fc72c6f69465b43544..b272c31dd3457f5da1a6196506d396b40852f875 100644 (file)
@@ -1098,7 +1098,7 @@ class Receiver
                if (!empty($actor)) {
                        $profile   = APContact::getByURL($actor);
                        $followers = $profile['followers'] ?? '';
-                       $is_forum  = ($profile['type'] ?? '') == 'Group';
+                       $isGroup  = ($profile['type'] ?? '') == 'Group';
                        if ($push) {
                                Contact::updateByUrlIfNeeded($actor);
                        }
@@ -1106,7 +1106,7 @@ class Receiver
                } else {
                        Logger::info('Empty actor', ['activity' => $activity]);
                        $followers = '';
-                       $is_forum  = false;
+                       $isGroup  = false;
                }
 
                // We have to prevent false follower assumptions upon thread completions
@@ -1129,7 +1129,7 @@ class Receiver
                                }
 
                                // Fetch the receivers for the public and the followers collection
-                               if ((($receiver == $followers) || (($receiver == self::PUBLIC_COLLECTION) && !$is_forum)) && !empty($actor)) {
+                               if ((($receiver == $followers) || (($receiver == self::PUBLIC_COLLECTION) && !$isGroup)) && !empty($actor)) {
                                        $receivers = self::getReceiverForActor($actor, $tags, $receivers, $follower_target, $profile);
                                        continue;
                                }
@@ -1148,7 +1148,7 @@ class Receiver
                                        $condition = ['nurl' => Strings::normaliseLink($actor), 'rel' => [Contact::SHARING, Contact::FRIEND],
                                                'network' => $networks, 'archive' => false, 'pending' => false, 'uid' => $contact['uid']];
 
-                                       // Forum posts are only accepted from forum contacts
+                                       // Group posts are only accepted from group contacts
                                        if ($contact['contact-type'] == Contact::TYPE_COMMUNITY) {
                                                $condition['rel'] = [Contact::SHARING, Contact::FRIEND, Contact::FOLLOWER];
                                        }
index 3d945180a5bf6b9e0cb58053e7b88eedc0dfbeec..e817198ec685e5e4ea0d6ccd570147325fbfdfdb 100644 (file)
@@ -492,13 +492,13 @@ class Transmitter
         * Returns an array with permissions of the thread parent of the given item array
         *
         * @param array $item
-        * @param bool  $is_forum_thread
+        * @param bool  $is_group_thread
         *
         * @return array with permissions
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         * @throws \ImagickException
         */
-       private static function fetchPermissionBlockFromThreadParent(array $item, bool $is_forum_thread): array
+       private static function fetchPermissionBlockFromThreadParent(array $item, bool $is_group_thread): array
        {
                if (empty($item['thr-parent-id'])) {
                        return [];
@@ -528,7 +528,7 @@ class Transmitter
                $type = [Tag::TO => 'to', Tag::CC => 'cc', Tag::BTO => 'bto', Tag::BCC => 'bcc'];
                foreach (Tag::getByURIId($item['thr-parent-id'], [Tag::TO, Tag::CC, Tag::BTO, Tag::BCC]) as $receiver) {
                        if (!empty($parent_profile['followers']) && $receiver['url'] == $parent_profile['followers'] && !empty($item_profile['followers'])) {
-                               if (!$is_forum_thread) {
+                               if (!$is_group_thread) {
                                        $permissions[$type[$receiver['type']]][] = $item_profile['followers'];
                                }
                        } elseif (!in_array($receiver['url'], $exclude)) {
@@ -573,7 +573,7 @@ class Transmitter
                }
 
                $always_bcc = false;
-               $is_forum   = false;
+               $is_group   = false;
                $follower   = '';
 
                // Check if we should always deliver our stuff via BCC
@@ -581,7 +581,7 @@ class Transmitter
                        $owner = User::getOwnerDataById($item['uid']);
                        if (!empty($owner)) {
                                $always_bcc = $owner['hide-friends'];
-                               $is_forum   = ($owner['account-type'] == User::ACCOUNT_TYPE_COMMUNITY) && $owner['manually-approve'];
+                               $is_group   = ($owner['account-type'] == User::ACCOUNT_TYPE_COMMUNITY) && $owner['manually-approve'];
 
                                $profile  = APContact::getByURL($owner['url'], false);
                                $follower = $profile['followers'] ?? '';
@@ -595,9 +595,9 @@ class Transmitter
                $parent = Post::selectFirst(['causer-link', 'post-reason'], ['id' => $item['parent']]);
                if (!empty($parent) && ($parent['post-reason'] == Item::PR_ANNOUNCEMENT) && !empty($parent['causer-link'])) {
                        $profile = APContact::getByURL($parent['causer-link'], false);
-                       $is_forum_thread = isset($profile['type']) && $profile['type'] == 'Group';
+                       $is_group_thread = isset($profile['type']) && $profile['type'] == 'Group';
                } else {
-                       $is_forum_thread = false;
+                       $is_group_thread = false;
                }
 
                if (self::isAnnounce($item) || self::isAPPost($last_id)) {
@@ -619,7 +619,7 @@ class Transmitter
                $exclusive = false;
                $mention   = false;
 
-               if ($is_forum_thread) {
+               if ($is_group_thread) {
                        foreach (Tag::getByURIId($item['parent-uri-id'], [Tag::MENTION, Tag::EXCLUSIVE_MENTION]) as $term) {
                                $profile = APContact::getByURL($term['url'], false);
                                if (!empty($profile) && ($profile['type'] == 'Group')) {
@@ -644,7 +644,7 @@ class Transmitter
                                $data['cc'][] = $announce['actor']['url'];
                        }
 
-                       $data = array_merge($data, self::fetchPermissionBlockFromThreadParent($item, $is_forum_thread));
+                       $data = array_merge($data, self::fetchPermissionBlockFromThreadParent($item, $is_group_thread));
 
                        // Check if the item is completely public or unlisted
                        if ($item['private'] == Item::PUBLIC) {
@@ -702,7 +702,7 @@ class Transmitter
                                $exclusive = false;
                        }
 
-                       if ($is_forum && !$exclusive && !empty($follower)) {
+                       if ($is_group && !$exclusive && !empty($follower)) {
                                $data['cc'][] = $follower;
                        } elseif (!$exclusive) {
                                foreach ($receiver_list as $receiver) {
@@ -739,19 +739,19 @@ class Transmitter
                                        $profile = APContact::getByURL($parent['owner-link'], false);
                                        if (!empty($profile)) {
                                                if ($item['gravity'] != Item::GRAVITY_PARENT) {
-                                                       // Comments to forums are directed to the forum
-                                                       // But comments to forums aren't directed to the followers collection
-                                                       // This rule is only valid when the actor isn't the forum.
-                                                       // The forum needs to transmit their content to their followers.
+                                                       // Comments to groups are directed to the group
+                                                       // But comments to groups aren't directed to the followers collection
+                                                       // This rule is only valid when the actor isn't the group.
+                                                       // The group needs to transmit their content to their followers.
                                                        if (($profile['type'] == 'Group') && ($profile['url'] != ($actor_profile['url'] ?? ''))) {
                                                                $data['to'][] = $profile['url'];
                                                        } else {
                                                                $data['cc'][] = $profile['url'];
-                                                               if (($item['private'] != Item::PRIVATE) && !empty($actor_profile['followers']) && (!$exclusive || !$is_forum_thread)) {
+                                                               if (($item['private'] != Item::PRIVATE) && !empty($actor_profile['followers']) && (!$exclusive || !$is_group_thread)) {
                                                                        $data['cc'][] = $actor_profile['followers'];
                                                                }
                                                        }
-                                               } elseif (!$exclusive && !$is_forum_thread) {
+                                               } elseif (!$exclusive && !$is_group_thread) {
                                                        // Public thread parent post always are directed to the followers.
                                                        if ($item['private'] != Item::PRIVATE) {
                                                                $data['cc'][] = $actor_profile['followers'];
@@ -885,12 +885,11 @@ class Transmitter
        {
                $inboxes = [];
 
-               $isforum = false;
-
+               $isGroup = false;
                if (!empty($item['uid'])) {
                        $profile = User::getOwnerDataById($item['uid']);
                        if (!empty($profile)) {
-                               $isforum = $profile['account-type'] == User::ACCOUNT_TYPE_COMMUNITY;
+                               $isGroup = $profile['account-type'] == User::ACCOUNT_TYPE_COMMUNITY;
                        }
                }
 
@@ -920,7 +919,7 @@ class Transmitter
                                continue;
                        }
 
-                       if ($isforum && ($contact['network'] == Protocol::DFRN)) {
+                       if ($isGroup && ($contact['network'] == Protocol::DFRN)) {
                                continue;
                        }
 
index b29a3676ad062ba01368321bc5d8c5877fd34d31..1fcaaba7f706a7b2c57fc26676fbc2ac8d8791dc 100644 (file)
@@ -2220,8 +2220,8 @@ class DFRN
                        GServer::setProtocol($importer['gsid'], Post\DeliveryData::DFRN);
                }
 
-               // is it a public forum? Private forums aren't exposed with this method
-               $forum = intval(XML::getFirstNodeValue($xpath, '/atom:feed/dfrn:community/text()'));
+               // is it a public group? Private groups aren't exposed with this method
+               $group = intval(XML::getFirstNodeValue($xpath, '/atom:feed/dfrn:community/text()'));
 
                // The account type is new since 3.5.1
                if ($xpath->query('/atom:feed/dfrn:account_type')->length > 0) {
@@ -2235,17 +2235,17 @@ class DFRN
                                // Updating the public contact as well
                                Contact::update(['contact-type' => $accounttype], ['uid' => 0, 'nurl' => $importer['nurl']]);
                        }
-                       // A forum contact can either have set "forum" or "prv" - but not both
+                       // A group contact can either have set "forum" or "prv" - but not both
                        if ($accounttype == User::ACCOUNT_TYPE_COMMUNITY) {
-                               // It's a forum, so either set the public or private forum flag
-                               $condition = ['(`forum` != ? OR `prv` != ?) AND `id` = ?', $forum, !$forum, $importer['id']];
-                               Contact::update(['forum' => $forum, 'prv' => !$forum], $condition);
+                               // It's a group, so either set the public or private forum flag
+                               $condition = ['(`forum` != ? OR `prv` != ?) AND `id` = ?', $group, !$group, $importer['id']];
+                               Contact::update(['forum' => $group, 'prv' => !$group], $condition);
 
                                // Updating the public contact as well
-                               $condition = ['(`forum` != ? OR `prv` != ?) AND `uid` = 0 AND `nurl` = ?', $forum, !$forum, $importer['nurl']];
-                               Contact::update(['forum' => $forum, 'prv' => !$forum], $condition);
+                               $condition = ['(`forum` != ? OR `prv` != ?) AND `uid` = 0 AND `nurl` = ?', $group, !$group, $importer['nurl']];
+                               Contact::update(['forum' => $group, 'prv' => !$group], $condition);
                        } else {
-                               // It's not a forum, so remove the flags
+                               // It's not a group, so remove the flags
                                $condition = ['(`forum` OR `prv`) AND `id` = ?', $importer['id']];
                                Contact::update(['forum' => false, 'prv' => false], $condition);
 
@@ -2253,13 +2253,13 @@ class DFRN
                                $condition = ['(`forum` OR `prv`) AND `uid` = 0 AND `nurl` = ?', $importer['nurl']];
                                Contact::update(['forum' => false, 'prv' => false], $condition);
                        }
-               } elseif ($forum != $importer['forum']) { // Deprecated since 3.5.1
-                       $condition = ['`forum` != ? AND `id` = ?', $forum, $importer['id']];
-                       Contact::update(['forum' => $forum], $condition);
+               } elseif ($group != $importer['forum']) { // Deprecated since 3.5.1
+                       $condition = ['`forum` != ? AND `id` = ?', $group, $importer['id']];
+                       Contact::update(['forum' => $group], $condition);
 
                        // Updating the public contact as well
-                       $condition = ['`forum` != ? AND `uid` = 0 AND `nurl` = ?', $forum, $importer['nurl']];
-                       Contact::update(['forum' => $forum], $condition);
+                       $condition = ['`forum` != ? AND `uid` = 0 AND `nurl` = ?', $group, $importer['nurl']];
+                       Contact::update(['forum' => $group], $condition);
                }
 
 
index c8039344ede14c9f68824aa466705261de35ecd3..9f8174e2d4e08a0ff6e5c87e88e3aa507150dbb2 100644 (file)
@@ -404,7 +404,7 @@ class Delivery
         */
        private static function deliverDiaspora(string $cmd, array $contact, array $owner, array $items, array $target_item, bool $public_message, bool $top_level, bool $followup): bool
        {
-               // We don't treat Forum posts as "wall-to-wall" to be able to post them via Diaspora
+               // We don't treat group posts as "wall-to-wall" to be able to post them via Diaspora
                $walltowall = $top_level && ($owner['id'] != $items[0]['contact-id']) & ($owner['account-type'] != User::ACCOUNT_TYPE_COMMUNITY);
 
                if ($public_message) {
index f29934596a6a193d0de7272f1d6bd515a2cebe7f..c04741462d458a2265a1edcfa915b9a3c8a21b97 100644 (file)
@@ -36,7 +36,7 @@ class ExpireAndRemoveUsers
 {
        public static function execute()
        {
-               // expire any expired regular accounts. Don't expire forums.
+               // expire any expired regular accounts. Don't expire groups.
                $condition = ["NOT `account_expired` AND `account_expires_on` > ? AND `account_expires_on` < ? AND `page-flags` = ? AND `uid` != ?",
                        DBA::NULL_DATETIME, DateTimeFormat::utcNow(), User::PAGE_FLAGS_NORMAL, 0];
                DBA::update('user', ['account_expired' => true], $condition);
index 6eb653dec10efe49259a310af4c197e1d1831cf9..e87a587f598c242e42d35afc6e59fcfb0d4172e5 100644 (file)
@@ -167,8 +167,8 @@ class Notifier
                // Do a PuSH
                $push_notify = false;
 
-               // Deliver directly to a forum, don't PuSH
-               $direct_forum_delivery = false;
+               // Deliver directly to a group, don't PuSH
+               $direct_group_delivery = false;
 
                $only_ap_delivery = false;
 
@@ -249,15 +249,15 @@ class Notifier
                                $relay_to_owner = false;
                        }
 
-                       // Special treatment for forum posts
-                       if (Item::isForumPost($target_item['uri-id'])) {
+                       // Special treatment for group posts
+                       if (Item::isGroupPost($target_item['uri-id'])) {
                                $relay_to_owner = true;
-                               $direct_forum_delivery = true;
+                               $direct_group_delivery = true;
                        }
 
-                       // Avoid that comments in a forum thread are sent to OStatus
-                       if (Item::isForumPost($parent['uri-id'])) {
-                               $direct_forum_delivery = true;
+                       // Avoid that comments in a group thread are sent to OStatus
+                       if (Item::isGroupPost($parent['uri-id'])) {
+                               $direct_group_delivery = true;
                        }
 
                        $exclusive_delivery = false;
@@ -303,7 +303,7 @@ class Notifier
                                        }
                                }
 
-                               if ($direct_forum_delivery) {
+                               if ($direct_group_delivery) {
                                        $push_notify = false;
                                }
 
@@ -793,11 +793,11 @@ class Notifier
 
                $uid = $target_item['contact-uid'] ?: $target_item['uid'];
 
-               // Update the locally stored follower list when we deliver to a forum
+               // Update the locally stored follower list when we deliver to a group
                foreach (Tag::getByURIId($target_item['uri-id'], [Tag::MENTION, Tag::EXCLUSIVE_MENTION]) as $tag) {
                        $target_contact = Contact::getByURL(Strings::normaliseLink($tag['url']), null, [], $uid);
                        if ($target_contact && $target_contact['contact-type'] == Contact::TYPE_COMMUNITY && $target_contact['manually-approve']) {
-                               Circle::updateMembersForForum($target_contact['id']);
+                               Circle::updateMembersForGroup($target_contact['id']);
                        }
                }
 
index 6a0a619a35d99d8d083901f9e79afec44f598e70..273095315789606f13c5fc7f83ec9f0c542baab7 100644 (file)
@@ -633,7 +633,7 @@ return [
                'throttle_limit_month' => 0,
 
                // transmit_pending_events (Boolean)
-               // Transmit pending events upon accepted contact request for forums
+               // Transmit pending events upon accepted contact request for groups
                'transmit_pending_events' => false,
 
                // update_active_contacts (Boolean)
index 8b4b1a9674e54c4def1ce3f9a52725ffd47e8947..7409c408d438beaba261fef1e8d2723e5e418e69 100644 (file)
@@ -667,7 +667,7 @@ return [
        '/network' => [
                '[/]'                         => [Module\Conversation\Network::class, [R::GET]],
                '/archive/{from:\d\d\d\d-\d\d-\d\d}[/{to:\d\d\d\d-\d\d-\d\d}]' => [Module\Conversation\Network::class, [R::GET]],
-               '/forum/{contact_id:\d+}'     => [Module\Conversation\Network::class, [R::GET]],
+               '/group/{contact_id:\d+}'     => [Module\Conversation\Network::class, [R::GET]],
                '/circle/{circle_id:\d+}'     => [Module\Conversation\Network::class, [R::GET]],
        ],
 
@@ -687,7 +687,7 @@ return [
        '/update_network' => [
                '[/]'                        => [Module\Update\Network::class, [R::GET]],
                '/archive/{from:\d\d\d\d-\d\d-\d\d}[/{to:\d\d\d\d-\d\d-\d\d}]' => [Module\Update\Network::class, [R::GET]],
-               '/forum/{contact_id:\d+}'    => [Module\Update\Network::class, [R::GET]],
+               '/group/{contact_id:\d+}'    => [Module\Update\Network::class, [R::GET]],
                '/circle/{circle_id:\d+}'    => [Module\Update\Network::class, [R::GET]],
        ],
 
index 5b701654adb705f4b82e8f2a6e95a6f066415f1c..455174e213e1391016302d73674289b267259ab9 100644 (file)
@@ -452,14 +452,14 @@ td.federation-data {
   max-height: 80px;
 }
 
-/* forumlist widget */
-.forumlist-img {
+/* group list widget */
+.grouplist-img {
   height: 20px;
   width: 20px;
   vertical-align: middle;
 }
 
-#forum-widget-collapse {
+#group-widget-collapse {
   opacity: 0.3;
 }
 
@@ -479,7 +479,7 @@ aside .help-aside-wrapper h1 {
   color: #ffffff;
 }
 
-#forum-widget-collapse:hover {
+#group-widget-collapse:hover {
   opacity: 1.0;
 }
 
index 6d4e88382e606c3bfef89c3eb96f814898e137ac..dc649084afe83b45ae7a91d8c6907cba83aa125c 100644 (file)
@@ -25,7 +25,7 @@ function contact_search(term, callback, backend_url, type, mode) {
                if(lterm.indexOf(t) >= 0) { // A more broad search has been performed already, so use those results
                        // Filter old results locally
                        var matching = contact_search.cache[bt][t].filter(function (x) { return (x.name.toLowerCase().indexOf(lterm) >= 0 || (typeof x.nick !== 'undefined' && x.nick.toLowerCase().indexOf(lterm) >= 0)); }); // Need to check that nick exists because circles don't have one
-                       matching.unshift({forum:false, text: term, replace: term});
+                       matching.unshift({group: false, text: term, replace: term});
                        setTimeout(function() { callback(matching); } , 1); // Use "pseudo-thread" to avoid some problems
                        return;
                }
@@ -69,10 +69,10 @@ function contact_format(item) {
        // Show contact information if not explicitly told to show something else
        if(typeof item.text === 'undefined') {
                var desc = ((item.label) ? item.nick + ' ' + item.label : item.nick);
-               var forum = ((item.forum) ? 'forum' : '');
+               var group = ((item.group) ? 'group' : '');
                if(typeof desc === 'undefined') desc = '';
                if(desc) desc = ' ('+desc+')';
-               return "<div class='{0}' title='{4}'><img class='acpopup-img' src='{1}'><span class='acpopup-contactname'>{2}</span><span class='acpopup-sub-text'>{3}</span><div class='clear'></div></div>".format(forum, item.photo, item.name, desc, item.link);
+               return "<div class='{0}' title='{4}'><img class='acpopup-img' src='{1}'><span class='acpopup-contactname'>{2}</span><span class='acpopup-sub-text'>{3}</span><div class='clear'></div></div>".format(group, item.photo, item.name, desc, item.link);
        }
        else
                return "<div>" + item.text + "</div>";
@@ -258,8 +258,8 @@ function string2bb(element) {
                        template: contact_format,
                };
 
-               // Autocomplete forums
-               forums = {
+               // Autocomplete groups
+               groups = {
                        match: /(^|\s)(!\!*)([^ \n]+)$/,
                        index: 3,
                        search: function(term, callback) { contact_search(term, callback, backend_url, 'f'); },
@@ -294,7 +294,7 @@ function string2bb(element) {
                };
 
                this.attr('autocomplete','off');
-               this.textcomplete([contacts, forums, smilies, tags], {dropdown: {className:'acpopup'}});
+               this.textcomplete([contacts, groups, smilies, tags], {dropdown: {className:'acpopup'}});
                this.fixTextcompleteEscape();
 
                return this;
@@ -310,7 +310,7 @@ function string2bb(element) {
                        template: contact_format,
                };
 
-               // Autocomplete forum accounts
+               // Autocomplete group accounts
                community = {
                        match: /(^!)([^\n]{2,})$/,
                        index: 2,
index a761f44fc8786a2b4dd68071cd48cc920e825269..3e0f8307a2b6b81123c4709f78e98e04cf0850ea 100644 (file)
@@ -296,11 +296,11 @@ $(function() {
                        $(".circle-"+gid+" .notify").addClass("show").text(gcount);
                });
 
-               $(".forum-widget-entry .notify").removeClass("show");
-               $(data.forums).each(function(key, forum) {
-                       var fid = forum.id;
-                       var fcount = forum.count;
-                       $(".forum-"+fid+" .notify").addClass("show").text(fcount);
+               $(".group-widget-entry .notify").removeClass("show");
+               $(data.groups).each(function(key, group) {
+                       var fid = group.id;
+                       var fcount = group.count;
+                       $(".group-"+fid+" .notify").addClass("show").text(fcount);
                });
 
                if (data.notifications.length == 0) {
diff --git a/view/templates/widget/group_list.tpl b/view/templates/widget/group_list.tpl
new file mode 100644 (file)
index 0000000..fd71a8e
--- /dev/null
@@ -0,0 +1,53 @@
+<script>
+function showHideGroupList() {
+       if( $("li[id^='group-widget-entry-extended-']").is(':visible')) {
+               $("li[id^='group-widget-entry-extended-']").hide();
+               $("li#group-widget-collapse").html('{{$showmore}}');
+
+       }
+       else {
+               $("li[id^='group-widget-entry-extended-']").show();
+               $("li#group-widget-collapse").html('{{$showless}}');
+       }
+}
+</script>
+<span id="group-list-sidebar-frame">
+<span id="group-list-sidebar-inflated" class="widget fakelink" onclick="openCloseWidget('group-list-sidebar', 'group-list-sidebar-inflated');">
+       <h3>{{$title}}</h3>
+</span>
+<div id="group-list-sidebar" class="widget">
+       <span class="fakelink" onclick="openCloseWidget('group-list-sidebar', 'group-list-sidebar-inflated');">
+               <h3 id="group-list">{{$title}}</h3>
+       </span>
+       <ul id="group-list-sidebar-ul" role="menu">
+               {{foreach $groups as $group}}
+               {{if $group.id <= $visible_groups}}
+               <li class="group-widget-entry group-{{$group.cid}}" id="group-widget-entry-{{$group.id}}" role="menuitem">
+                       <span class="notify badge pull-right"></span>
+                       <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
+                               <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
+                       </a>
+                       <a class="group-widget-link {{if $group.selected}}group-selected{{/if}}" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
+               </li>
+               {{/if}}
+
+               {{if $group.id > $visible_groups}}
+               <li class="group-widget-entry group-{{$group.cid}}" id="group-widget-entry-extended-{{$group.id}}" role="menuitem" style="display: none;">
+                       <span class="notify badge pull-right"></span>
+                       <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
+                               <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
+                       </a>
+                       <a class="group-widget-link {{if $group.selected}}group-selected{{/if}}" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
+               </li>
+               {{/if}}
+               {{/foreach}}
+
+               {{if $total > $visible_groups }}
+               <li onclick="showHideGroupList(); return false;" id="group-widget-collapse" class="group-widget-link fakelink tool">{{$showmore}}</li>
+               {{/if}}
+       </ul>
+</div>
+</span>
+<script>
+initWidget('group-list-sidebar', 'group-list-sidebar-inflated');
+</script>
diff --git a/view/templates/widget_forumlist.tpl b/view/templates/widget_forumlist.tpl
deleted file mode 100644 (file)
index 7d250a0..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<script>
-function showHideForumlist() {
-       if( $("li[id^='forum-widget-entry-extended-']").is(':visible')) {
-               $("li[id^='forum-widget-entry-extended-']").hide();
-               $("li#forum-widget-collapse").html('{{$showmore}}');
-
-       }
-       else {
-               $("li[id^='forum-widget-entry-extended-']").show();
-               $("li#forum-widget-collapse").html('{{$showless}}');
-       }
-}
-</script>
-<span id="forumlist-sidebar-frame">
-<span id="forumlist-sidebar-inflated" class="widget fakelink" onclick="openCloseWidget('forumlist-sidebar', 'forumlist-sidebar-inflated');">
-       <h3>{{$title}}</h3>
-</span>
-<div id="forumlist-sidebar" class="widget">
-       <span class="fakelink" onclick="openCloseWidget('forumlist-sidebar', 'forumlist-sidebar-inflated');">
-               <h3 id="forumlist">{{$title}}</h3>
-       </span>
-       <ul id="forumlist-sidebar-ul" role="menu">
-               {{foreach $forums as $forum}}
-               {{if $forum.id <= $visible_forums}}
-               <li class="forum-widget-entry forum-{{$forum.cid}}" id="forum-widget-entry-{{$forum.id}}" role="menuitem">
-                       <span class="notify badge pull-right"></span>
-                       <a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
-                               <img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
-                       </a>
-                       <a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
-               </li>
-               {{/if}}
-       
-               {{if $forum.id > $visible_forums}}
-               <li class="forum-widget-entry forum-{{$forum.cid}}" id="forum-widget-entry-extended-{{$forum.id}}" role="menuitem" style="display: none;">
-                       <span class="notify badge pull-right"></span>
-                       <a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
-                               <img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
-                       </a>
-                       <a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
-               </li>
-               {{/if}}
-               {{/foreach}}
-
-               {{if $total > $visible_forums }}
-               <li onclick="showHideForumlist(); return false;" id="forum-widget-collapse" class="forum-widget-link fakelink tool">{{$showmore}}</li>
-               {{/if}}
-       </ul>
-</div>
-</span>
-<script>
-initWidget('forumlist-sidebar', 'forumlist-sidebar-inflated');
-</script>
index 8f6351bcf7ac3d1c007e6ceadfbd41e33db25726..179b6259ce80e648f650bcc4203e346777b73968 100644 (file)
@@ -90,7 +90,7 @@ nav #site-location {
        box-shadow: 4px 4px 3px 0 #444444;
 }
 
-.forumlist-img {
+.group-list-img {
        border-radius: 3px;
        -moz-border-radius: 3px;
        box-shadow: 4px 4px 3px 0 #444444;
index 8b5ffeea65cb814536689259d27852f269fd30f2..802aaf16ff97b46f0f07125adff3b4ce128ac9c5 100644 (file)
@@ -386,7 +386,7 @@ div.wall-item-content-wrapper.shiny {
        margin-bottom: 10px;
 }
 
-.widget .selected, .circle-selected, .forum-selected {
+.widget .selected, .circle-selected, .group-selected {
        padding: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
@@ -1859,7 +1859,7 @@ a.mail-list-link {
 #sidebar-circle-list ul {
        list-style-type: none;
 }
-.sidebar-circle-li .notify, .forum-widget-entry .notify {
+.sidebar-circle-li .notify, .group-widget-entry .notify {
        display: none;
        font-size: 9px;
        border: 1px solid rgb(221, 221, 221);
@@ -1867,7 +1867,7 @@ a.mail-list-link {
        float: right;
        background-color: #BABDB6;
 }
-.sidebar-circle-li .notify.show, .forum-widget-entry .notify.show {
+.sidebar-circle-li .notify.show, .group-widget-entry .notify.show {
        display: block;
 }
 
@@ -1881,7 +1881,7 @@ a.mail-list-link {
        margin-top: 10px;
 }
 
-#forumlist-sidebar ul {
+#group-list-sidebar ul {
        list-style: none;
 }
 
index 4bf53000751726437fc7894b512f8332c0b318b7..db739a0aa91e1eb4c4a913fd4a8b9e19ee9cd165 100644 (file)
@@ -20,7 +20,7 @@ This theme should be the start of a discussion in the friendica community (users
 What frameworks do we want to use? How should default friendica look like? And how do we want to use friendica? What do we need in the core code (At the present time some stuff this is done with ugly javascript hacks and own php code)?
 
 Coding a theme is much work but you will get a really good insight of the limitations of friendica and can start a discussion about doing things differently.
-So join the discussion at the friendica forums ;-)
+So join the discussion at the friendica groups ;-)
 
 If anyone wants to contribute to this theme he/she is welcome to do this.
 
index 82e47331d6bd9c9eb74f702143765208755da6e0..f9e0e5ee7168cdceffd4f7ca1ed23ebecd8d93f5 100644 (file)
@@ -367,7 +367,7 @@ btn-eventnav:hover {
 aside .badge {
        opacity: 0.7;
 }
-.forum-widget-entry .badge,
+.group-widget-entry .badge,
 .sidebar-circle-li .badge {
        margin-top: 6px;
 }
@@ -1102,7 +1102,7 @@ aside .widget li a:hover {
        color: $font_color_darker;
 }
 
-/* forumlist widget */
+/* group-list widget */
 aside > #datebrowse-sidebar li.posted-date-selector-months {
        margin-bottom: 10px;
        padding: 0;
@@ -1122,7 +1122,7 @@ aside > #datebrowse-sidebar .posted-date-selector-months > ul > li:hover {
        padding-left: 27px;
 }
 
-.forumlist-img {
+.group-list-img {
        -webkit-filter: grayscale(100%);
        filter: grayscale(100%);
        opacity: 0.5;
@@ -1133,7 +1133,7 @@ aside > #datebrowse-sidebar .posted-date-selector-months > ul > li:hover {
        -ms-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
 }
-#forumlist-sidebar-ul li:hover a > .forumlist-img {
+#group-list-sidebar-ul li:hover a > .group-list-img {
        -webkit-filter: unset;
        filter: unset;
        opacity: unset;
@@ -2192,7 +2192,7 @@ nav .acpopup {
        border-left: 3px solid $link_color;
        padding-left: 17px !important;
 }
-.textcomplete-item a .forum {
+.textcomplete-item a .group {
        color: $link_color;
 }
 img.acpopup-img {
@@ -2494,7 +2494,7 @@ body.mod-login .navbar #nav-login {
        margin-top: 20px;
        margin-bottom: 20px;
 }
-.contact-block-div.forumlist-profile-advanced {
+.contact-block-div.group-list-profile-advanced {
        float: left;
 }
 
index 3ad81f5c051e47c7f2964810724d1c18470a61b9..ef71b8c1d0339be304ca7e6b4fafa31375ff2a82 100644 (file)
@@ -41,9 +41,9 @@ $(document).ready(function () {
                $("#sidebar-circle-ul li a.circle-selected").parent("li").addClass("selected");
        }
 
-       // add the class "selected" to forums widgets li if li > a does have the class forum-selected
-       if ($("#forumlist-sidebar-ul li a").hasClass("forum-selected")) {
-               $("#forumlist-sidebar-ul li a.forum-selected").parent("li").addClass("selected");
+       // add the class "selected" to groups widgets li if li > a does have the class group-selected
+       if ($("#group-list-sidebar-ul li a").hasClass("group-selected")) {
+               $("#group-list-sidebar-ul li a.group-selected").parent("li").addClass("selected");
        }
 
        // add the class "active" to tabmenuli if li > a does have the class active
@@ -206,7 +206,7 @@ $(document).ready(function () {
                });
        }
 
-       // move the forum contact information of the network page into the second navbar
+       // move the group contact information of the network page into the second navbar
        if ($(".network-content-wrapper > #viewcontact_wrapper-network").length) {
                // get the contact-wrapper element and append it to the second nav bar
                // Note: We need the first() element with this class since at the present time we
index a5fc6d773a363eb975d37677846dc5ece19b8f13..75f0d6d9e55b9b7081147d2e2da5d59293407c40 100644 (file)
@@ -91,7 +91,7 @@
                                <div class="contact-entry-name" id="contact-entry-name-{{$contact.id}}">
                                        <h4 class="media-heading"><a href="{{if !empty($contact.photo_menu.edit)}}{{$contact.photo_menu.edit.1}}{{else}}{{$contact.url}}{{/if}}">{{$contact.name}}</a>
                                        {{if $contact.account_type}} <small class="contact-entry-details" id="contact-entry-accounttype-{{$contact.id}}">({{$contact.account_type}})</small>{{/if}}
-                                       {{if $contact.account_type == 'Forum'}}<i class="fa fa-comments-o" aria-hidden="true"></i>{{/if}}
+                                       {{if $contact.account_type == 'Group'}}<i class="fa fa-comments-o" aria-hidden="true"></i>{{/if}}
                                        {{* @todo this needs some changing in core because $contact.account_type contains a translated string which may not be the same in every language *}}
                                        </h4>
                                </div>
index 643c1d94a92e5e9ae8789f757d6d7c6d46404b53..c5c3576c7e6271c8f52db6a3dcd18622b58400ad 100644 (file)
@@ -50,9 +50,9 @@
                $("#profile-jot-text").focus(enableOnUser);
                $("#profile-jot-text").click(enableOnUser);
 
-               // When clicking on a forum in acl we should remove the profile jot textarea
-               // default value before inserting the forum mention
-               $("body").on('click', '#jot-modal .acl-list-item.forum', function(){
+               // When clicking on a group in acl we should remove the profile jot textarea
+               // default value before inserting the group mention
+               $("body").on('click', '#jot-modal .acl-list-item.group', function(){
                        jotTextOpenUI(document.getElementById("profile-jot-text"));
                });
 
index ecf42610368c480440679d77d6bcab4d56e03b84..3e9d19e02d345242c9337c58575ed1951cbcf237 100644 (file)
@@ -80,7 +80,7 @@ as the value of $top_child_total (this is done at the end of this file)
                                </a>
                        </div>
 
-                       {{* The little overlay avatar picture if someone is posting directly to a wall or a forum *}}
+                       {{* The little overlay avatar picture if someone is posting directly to a wall or a group *}}
                        {{if $item.owner_url}}
                        <div aria-hidden="true" class="contact-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-{{$item.id}}">
                                <a href="{{$item.owner_url}}" target="redir" title="{{$item.olinktitle}}" class="contact-photo-link" id="wall-item-ownerphoto-link-{{$item.id}}">
index 0f16cc35e7d0ff4fe760e6bc61b0485dc0b609ee..23b8cc4c63e13932eebb9484c33b358e7b2d2b7a 100644 (file)
@@ -12,11 +12,11 @@ $(document).ready(function(){
                        $(".circle-"+gid+" .notify").addClass("on").text(gcount);
                });
 
-               $(".forum-widget-entry .notify").removeClass("on");
-               $(data).find("forum").each(function() {
+               $(".group-widget-entry .notify").removeClass("on");
+               $(data).find("group").each(function() {
                        var fid = this.id;
                        var fcount = this.innerHTML;
-                       $(".forum-"+fid+" .notify").addClass("on").text(fcount);
+                       $(".group-"+fid+" .notify").addClass("on").text(fcount);
                });
 
                console.log(intro,mail);
diff --git a/view/theme/quattro/templates/widget/group_list.tpl b/view/theme/quattro/templates/widget/group_list.tpl
new file mode 100644 (file)
index 0000000..e86c2da
--- /dev/null
@@ -0,0 +1,46 @@
+<script>
+
+function showHideGroupList() {
+       if( $("li[id^='group-widget-entry-extended-']").is(':visible')) {
+               $("li[id^='group-widget-entry-extended-']").hide();
+               $("li#group-widget-collapse").html('{{$showmore}}');
+
+       }
+       else {
+               $("li[id^='group-widget-entry-extended-']").show();
+               $("li#group-widget-collapse").html('{{$showless}}');
+       }
+}
+</script>
+
+<div id="group-list-sidebar" class="widget">
+       <h3 id="group-list">{{$title}}</h3>
+
+       <ul id="group-list-sidebar-ul" role="menu">
+               {{foreach $groups as $group}}
+               {{if $group.id <= $visible_groups}}
+               <li class="group-widget-entry group-{{$group.cid}} tool {{if $group.selected}}selected{{/if}}" id="group-widget-entry-{{$group.id}}" role="menuitem">
+                       <span class="notify badge pull-right"></span>
+                       <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
+                               <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
+                       </a>
+                       <a class="group-widget-link" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
+               </li>
+               {{/if}}
+
+               {{if $group.id > $visible_groups}}
+               <li class="group-widget-entry group-{{$group.cid}} tool {{if $group.selected}}selected{{/if}}" id="group-widget-entry-extended-{{$group.id}}" role="menuitem" style="display: none;">
+                       <span class="notify badge pull-right"></span>
+                       <a href="{{$group.external_url}}" title="{{$group.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
+                               <img class="group-list-img" src="{{$group.micro}}" alt="{{$group.link_desc}}" />
+                       </a>
+                       <a class="group-widget-link" id="group-widget-link-{{$group.id}}" href="{{$group.url}}">{{$group.name}}</a>
+               </li>
+               {{/if}}
+               {{/foreach}}
+
+               {{if $total > $visible_groups }}
+               <li onclick="showHideGroupList(); return false;" id="group-widget-collapse" class="group-widget-link fakelink tool">{{$showmore}}</li>
+               {{/if}}
+       </ul>
+</div>
diff --git a/view/theme/quattro/templates/widget_forumlist.tpl b/view/theme/quattro/templates/widget_forumlist.tpl
deleted file mode 100644 (file)
index 1902358..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-<script>
-
-function showHideForumlist() {
-       if( $("li[id^='forum-widget-entry-extended-']").is(':visible')) {
-               $("li[id^='forum-widget-entry-extended-']").hide();
-               $("li#forum-widget-collapse").html('{{$showmore}}');
-
-       }
-       else {
-               $("li[id^='forum-widget-entry-extended-']").show();
-               $("li#forum-widget-collapse").html('{{$showless}}');
-       }
-}
-</script>
-
-<div id="forumlist-sidebar" class="widget">
-       <h3 id="forumlist">{{$title}}</h3>
-
-       <ul id="forumlist-sidebar-ul" role="menu">
-               {{foreach $forums as $forum}}
-               {{if $forum.id <= $visible_forums}}
-               <li class="forum-widget-entry forum-{{$forum.cid}} tool {{if $forum.selected}}selected{{/if}}" id="forum-widget-entry-{{$forum.id}}" role="menuitem">
-                       <span class="notify badge pull-right"></span>
-                       <a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
-                               <img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
-                       </a>
-                       <a class="forum-widget-link" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
-               </li>
-               {{/if}}
-       
-               {{if $forum.id > $visible_forums}}
-               <li class="forum-widget-entry forum-{{$forum.cid}} tool {{if $forum.selected}}selected{{/if}}" id="forum-widget-entry-extended-{{$forum.id}}" role="menuitem" style="display: none;">
-                       <span class="notify badge pull-right"></span>
-                       <a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
-                               <img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
-                       </a>
-                       <a class="forum-widget-link" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
-               </li>
-               {{/if}}
-               {{/foreach}}
-
-               {{if $total > $visible_forums }}
-               <li onclick="showHideForumlist(); return false;" id="forum-widget-collapse" class="forum-widget-link fakelink tool">{{$showmore}}</li>
-               {{/if}}
-       </ul>
-</div>
index 0a559c45c45317f644fec898a9e32ee713e2528b..fceed7b1f9c36089e6b85aaf2976fd1972c7a983 100644 (file)
@@ -88,7 +88,7 @@ function theme_admin(App $a) {
 
        $t = Renderer::getMarkupTemplate("theme_admin_settings.tpl");
        $o = Renderer::replaceMacros($t, [
-               '$helperlist' => ['vier_helperlist', DI::l10n()->t('Comma separated list of helper forums'), $helperlist, '', ''],
+               '$helperlist' => ['vier_helperlist', DI::l10n()->t('Comma separated list of helper groups'), $helperlist, '', ''],
                ]);
 
        $show_pages = get_vier_config('show_pages', true, true);
index 05b6a5ded881d14be5de9184a3b31f9a03f84e95..dd310af3255de1f85efdc4312b37b33816135afd 100644 (file)
@@ -421,7 +421,7 @@ pre code {
 .tool a {
        /* color: #000; */
 }
-.tool a:hover, .widget a:hover, #nets-sidebar a:hover, #forum-widget-collapse:hover, .admin.link a:hover, aside h4 a:hover, right_aside h4 a:hover {
+.tool a:hover, .widget a:hover, #nets-sidebar a:hover, #group-widget-collapse:hover, .admin.link a:hover, aside h4 a:hover, right_aside h4 a:hover {
        /* text-decoration: underline; */
        text-decoration: none;
        color: black;
@@ -435,8 +435,8 @@ pre code {
        opacity: 1;
 }
 
-.sidebar-circle-li:hover, #sidebar-new-circle:hover, #sidebar-edit-circles:hover,#forum-widget-collapse:hover,
-#sidebar-uncircled:hover, .side-link:hover, .nets-ul li:hover, #forumlist-sidebar li:hover, #forumlist-sidebar-right li:hover,
+.sidebar-circle-li:hover, #sidebar-new-circle:hover, #sidebar-edit-circles:hover,#group-widget-collapse:hover,
+#sidebar-uncircled:hover, .side-link:hover, .nets-ul li:hover, #group-list-sidebar li:hover, #group-list-sidebar-right li:hover,
 .nets-all:hover, .saved-search-li:hover, li.tool:hover, .admin.link:hover, aside h4 a:hover, right_aside h4 a:hover, #message-new:hover,
 #sidebar-photos-albums li:hover, .photos-upload-link:hover, .textcomplete-item.active {
        /* background-color: #ddd; */
@@ -452,11 +452,11 @@ pre code {
        /* color: #000; */
 }
 
-.widget .selected, .forum-selected {
+.widget .selected, .group-selected {
        font-weight: bold;
 }
 
-#forum-widget-showmore, #sidebar-new-circle, #sidebar-edit-circles, #forum-widget-collapse, #forumlist-rsidebar-right, #sidebar-uncircled,
+#group-widget-showmore, #sidebar-new-circle, #sidebar-edit-circles, #group-widget-collapse, #group-list-rsidebar-right, #sidebar-uncircled,
 .side-link, #peoplefind-desc, #connect-desc, .nets-all, .admin.link, #message-new {
        padding-left: 10px;
        padding-top: 3px;
@@ -471,22 +471,22 @@ pre code {
        display: block;
 }
 
-#forumlist-sidebar {
+#group-list-sidebar {
        padding-top: 3px;
        padding-bottom: 3px;
        display: block;
 }
 
-.forum-widget-entry {
+.group-widget-entry {
        padding-left: 10px;
        padding-right: 5px;
 }
 
-#forumlist-sidebar .notify, #forumlist-sidebar-right .notify {
+#group-list-sidebar .notify, #group-list-sidebar-right .notify {
        display: none;
 }
 
-#forumlist-sidebar .notify.show, #forumlist-sidebar-right .notify.show {
+#group-list-sidebar .notify.show, #group-list-sidebar-right .notify.show {
        display: inline-block;
 }
 
@@ -517,11 +517,11 @@ a.sidebar-circle-element {
        color: black;
 }
 
-#forumlist-sidebar a, #forumlist-sidebar-right a, .tool a, .admin.link a, #sidebar-photos-albums a {
+#group-list-sidebar a, #group-list-sidebar-right a, .tool a, .admin.link a, #sidebar-photos-albums a {
        color: #737373;
 }
 
-#forumlist-sidebar, #forumlist-sidebar-right {
+#group-list-sidebar, #group-list-sidebar-right {
        margin-top: 2px;
 }
 
@@ -941,11 +941,11 @@ nav .acpopup {
        color: #000;
        padding: 3px 20px;
 }
-.textcomplete-item a .forum, .forum .acpopup-sub-text {
+.textcomplete-item a .group, .group .acpopup-sub-text {
        color: #36C;
        opacity: 0.8;
 }
-.textcomplete-item a .forum:hover {
+.textcomplete-item a .group:hover {
        opacity: 1.0;
 }
 img.acpopup-img {
index 7cbc2eb1ba721f33c48fddc7293a0939e4af44b8..e8b9109ca5ac5fe6dd74de2e6e1f12cf65daf92d 100644 (file)
                                                <option value="fulltext">{{$nav.searchoption.0}}</option>
                                                <option value="tags">{{$nav.searchoption.1}}</option>
                                                <option value="contacts">{{$nav.searchoption.2}}</option>
-                                               {{if $nav.searchoption.3}}<option value="forums">{{$nav.searchoption.3}}</option>{{/if}}
+                                               {{if $nav.searchoption.3}}<option value="groups">{{$nav.searchoption.3}}</option>{{/if}}
                                        </select>
                                </form>
                        </li>
diff --git a/view/theme/vier/templates/widget_forumlist_right.tpl b/view/theme/vier/templates/widget_forumlist_right.tpl
deleted file mode 100644 (file)
index 5716a6f..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<script>
-
-function showHideForumlist() {
-       if( $("li[id^='forum-widget-entry-extended-']").is(':visible')) {
-               $("li[id^='forum-widget-entry-extended-']").hide();
-               $("li#forum-widget-collapse").html('{{$showmore}}');
-
-       }
-       else {
-               $("li[id^='forum-widget-entry-extended-']").show();
-               $("li#forum-widget-collapse").html('{{$showless}}');
-       }
-}
-
-</script>
-
-<div id="forumlist-sidebar-right" class="widget">
-       <h3 id="forumlist">{{$title}}</h3>
-
-       <ul id="forumlist-sidebar-ul" role="menu">
-               {{foreach $forums as $forum}}
-               {{if $forum.id <= $visible_forums}}
-               <li class="forum-widget-entry forum-{{$forum.cid}}" id="forum-widget-entry-{{$forum.id}}" role="menuitem">
-                       <span class="notify badge pull-right"></span>
-                       <a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
-                               <img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
-                       </a>
-                       <a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
-               </li>
-               {{/if}}
-       
-               {{if $forum.id > $visible_forums}}
-               <li class="forum-widget-entry forum-{{$forum.cid}}" id="forum-widget-entry-extended-{{$forum.id}}" role="menuitem" style="display: none;">
-                       <span class="notify badge pull-right"></span>
-                       <a href="{{$forum.external_url}}" title="{{$forum.link_desc}}" class="label sparkle" target="_blank" rel="noopener noreferrer">
-                               <img class="forumlist-img" src="{{$forum.micro}}" alt="{{$forum.link_desc}}" />
-                       </a>
-                       <a class="forum-widget-link {{if $forum.selected}}forum-selected{{/if}}" id="forum-widget-link-{{$forum.id}}" href="{{$forum.url}}">{{$forum.name}}</a>
-               </li>
-               {{/if}}
-               {{/foreach}}
-
-               {{if $total > $visible_forums }}
-               <li onclick="showHideForumlist(); return false;" id="forum-widget-collapse" class="forum-widget-link fakelink tool">{{$showmore}}</li>
-               {{/if}}
-       </ul>
-</div>
index 95cc9bb1fc93ac442958d0401c68ae793af2f574..e264251624eab708b72b37988fc9cc497c5ddb09 100644 (file)
@@ -27,7 +27,7 @@
  */
 
 use Friendica\App;
-use Friendica\Content\ForumManager;
+use Friendica\Content\GroupManager;
 use Friendica\Core\Addon;
 use Friendica\Core\Renderer;
 use Friendica\Core\Search;
@@ -208,7 +208,7 @@ function vier_community_info()
 
        //Community_Pages at right_aside
        if ($show_pages && DI::userSession()->getLocalUserId()) {
-               $aside['$page'] = ForumManager::widget('network/forum', DI::userSession()->getLocalUserId());;
+               $aside['$page'] = GroupManager::widget('network/group', DI::userSession()->getLocalUserId());;
        }
        // END Community Page
 
index 66aaf92212b065a45bd8cbe4b0f9a6eed8c78f22..6b62655b8c15d6a5651e76a66cda1ca80b3ae34d 100644 (file)
@@ -2,9 +2,9 @@ right_aside {
   display: block;
 }
 
-aside #forumlist-sidebar-frame,
-aside #forumlist-sidebar,
-#forumlist-sidebar-inflated {
+aside #group-list-sidebar-frame,
+aside #group-list-sidebar,
+#group-list-sidebar-inflated {
   display: none;
 }