X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FContent%2FContactSelector.php;h=7a36ea8c681be56a7ad77e9755402e2d96f76fce;hb=b852e5842bffcc1df1e5ac5d356fd9f19b7af499;hp=ac14926920601c1acfa78cf85d67f4ba9c31011e;hpb=8b6697b04475aaa282222877ba87e317f1449747;p=friendica.git diff --git a/src/Content/ContactSelector.php b/src/Content/ContactSelector.php index ac14926920..7a36ea8c68 100644 --- a/src/Content/ContactSelector.php +++ b/src/Content/ContactSelector.php @@ -105,12 +105,13 @@ class ContactSelector } /** - * @param string $network network - * @param string $profile optional, default empty + * @param string $network network of the contact + * @param string $profile optional, default empty + * @param string $protocol (Optional) Protocol that is used for the transmission * @return string * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ - public static function networkToName($network, $profile = "") + public static function networkToName($network, $profile = '', $protocol = '') { $nets = [ Protocol::DFRN => L10n::t('DFRN'), @@ -125,6 +126,7 @@ class ContactSelector Protocol::GPLUS => L10n::t('Google+'), Protocol::PUMPIO => L10n::t('pump.io'), Protocol::TWITTER => L10n::t('Twitter'), + Protocol::DISCOURSE => L10n::t('Discourse'), Protocol::DIASPORA2 => L10n::t('Diaspora Connector'), Protocol::STATUSNET => L10n::t('GNU Social Connector'), Protocol::ACTIVITYPUB => L10n::t('ActivityPub'), @@ -161,6 +163,10 @@ class ContactSelector } } + if (!empty($protocol) && ($protocol != $network)) { + $networkname = L10n::t('%s (via %s)', $networkname, self::networkToName($protocol)); + } + return $networkname; } @@ -185,16 +191,23 @@ class ContactSelector Protocol::GPLUS => 'google-plus', Protocol::PUMPIO => 'file-text-o', /// @todo Protocol::TWITTER => 'twitter', + Protocol::DISCOURSE => 'dot-circle-o', /// @todo Protocol::DIASPORA2 => 'diaspora', Protocol::STATUSNET => 'gnu-social', Protocol::ACTIVITYPUB => 'activitypub', Protocol::PNUT => 'file-text-o', /// @todo ]; + $platform_icons = ['diaspora' => 'diaspora', 'friendica' => 'friendica', 'friendika' => 'friendica', + 'GNU Social' => 'gnu-social', 'gnusocial' => 'gnu-social', 'hubzilla' => 'hubzilla', + 'mastodon' => 'mastodon', 'peertube' => 'peertube', 'pixelfed' => 'pixelfed', + 'pleroma' => 'pleroma', 'red' => 'hubzilla', 'redmatrix' => 'hubzilla', + 'socialhome' => 'social-home', 'wordpress' => 'wordpress']; + $search = array_keys($nets); $replace = array_values($nets); - $networkicon = str_replace($search, $replace, $network); + $network_icon = str_replace($search, $replace, $network); if ((in_array($network, Protocol::FEDERATED)) && ($profile != "")) { $server_url = self::getServerURLForProfile($profile); @@ -203,16 +216,11 @@ class ContactSelector $gserver = DBA::selectFirst('gserver', ['platform'], ['nurl' => $server_url]); if (DBA::isResult($gserver) && !empty($gserver['platform'])) { - $icons = ['diaspora' => 'diaspora', 'friendica' => 'friendica', 'friendika' => 'friendica', - 'GNU Social' => 'gnu-social', 'gnusocial' => 'gnu-social', 'hubzilla' => 'hubzilla', - 'mastodon' => 'mastodon', 'peertube' => 'peertube', 'pixelfed' => 'pixelfed', - 'pleroma' => 'pleroma', 'red' => 'hubzilla', 'redmatrix' => 'hubzilla', - 'socialhome' => 'social-home', 'wordpress' => 'wordpress']; - $networkicon = $icons[strtolower($gserver['platform'])] ?? $networkicon; + $network_icon = $platform_icons[strtolower($gserver['platform'])] ?? $network_icon; } } - return $networkicon; + return $network_icon; } /**