diff --git a/doc/Accesskeys.md b/doc/Accesskeys.md index 599d2b119..1754fd758 100644 --- a/doc/Accesskeys.md +++ b/doc/Accesskeys.md @@ -32,7 +32,7 @@ General * m - Status Messages and Posts * r - Profile Details * h - Photo Albums -* v - Videos +* d - Media * e - Events and Calendar * t - Personal Notes * o - Scheduled Posts @@ -49,12 +49,13 @@ General * h - Only show hidden contacts * e - Edit contact groups -../contacts (single contact view) +../contact (single contact view) ------------------------------- * m - Status messages +* p - Posts and Comments +* d - Media * o - Profile * t - Contacts -* d - Common friends * r - Advanced ../message diff --git a/mod/videos.php b/mod/videos.php deleted file mode 100644 index 2bd5eb8c9..000000000 --- a/mod/videos.php +++ /dev/null @@ -1,261 +0,0 @@ -. - * - */ - -use Friendica\App; -use Friendica\Content\Nav; -use Friendica\Content\Pager; -use Friendica\Content\Widget; -use Friendica\Core\Renderer; -use Friendica\Core\Session; -use Friendica\Database\DBA; -use Friendica\DI; -use Friendica\Model\Attach; -use Friendica\Model\Item; -use Friendica\Model\Profile; -use Friendica\Model\User; -use Friendica\Module\BaseProfile; -use Friendica\Security\Security; -use Friendica\Network\HTTPException; - -function videos_init(App $a) -{ - if (DI::config()->get('system', 'block_public') && !Session::isAuthenticated()) { - return; - } - - Nav::setSelected('home'); - - if (DI::args()->getArgc() > 1) { - $owner = User::getOwnerDataByNick(DI::args()->getArgv()[1]); - if (empty($owner)) { - throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.')); - } - - // If not there, create 'aside' empty - if (!isset(DI::page()['aside'])) { - DI::page()['aside'] = ''; - } - - DI::page()['aside'] .= Widget\VCard::getHTML($owner); - - $tpl = Renderer::getMarkupTemplate("videos_head.tpl"); - DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl); - } - - return; -} - -function videos_post(App $a) -{ - $user = User::getByNickname(DI::args()->getArgv()[1]); - if (!DBA::isResult($user)) { - throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.')); - } - - if (local_user() != $user['uid']) { - DI::baseUrl()->redirect('videos/' . $user['nickname']); - } - - if ((DI::args()->getArgc() == 2) && !empty($_POST['delete']) && !empty($_POST['id'])) { - $video_id = $_POST['id']; - - if (Attach::exists(['id' => $video_id, 'uid' => local_user()])) { - // delete the attachment - Attach::delete(['id' => $video_id, 'uid' => local_user()]); - - // delete items where the attach is used - Item::deleteForUser(['`attach` LIKE ? AND `uid` = ?', - '%attach/' . $video_id . '%', - local_user() - ], local_user()); - } - - DI::baseUrl()->redirect('videos/' . $user['nickname']); - return; // NOTREACHED - } - - DI::baseUrl()->redirect('videos/' . $user['nickname']); -} - -function videos_content(App $a) -{ - // URLs (most aren't currently implemented): - // videos/name - // videos/name/upload - // videos/name/upload/xxxxx (xxxxx is album name) - // videos/name/album/xxxxx - // videos/name/album/xxxxx/edit - // videos/name/video/xxxxx - // videos/name/video/xxxxx/edit - - $user = User::getByNickname(DI::args()->getArgv()[1]); - if (!DBA::isResult($user)) { - throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.')); - } - - if (DI::config()->get('system', 'block_public') && !Session::isAuthenticated()) { - notice(DI::l10n()->t('Public access denied.')); - return; - } - - if (empty($user)) { - notice(DI::l10n()->t('No videos selected') . EOL ); - return; - } - - $profile = Profile::getByUID($user['uid']); - //$phototypes = Photo::supportedTypes(); - - $_SESSION['video_return'] = DI::args()->getCommand(); - - // - // Parse arguments - // - if (DI::args()->getArgc() > 3) { - $datatype = DI::args()->getArgv()[2]; - } elseif((DI::args()->getArgc() > 2) && (DI::args()->getArgv()[2] === 'upload')) { - $datatype = 'upload'; - } else { - $datatype = 'summary'; - } - - // - // Setup permissions structures - // - $can_post = false; - $visitor = 0; - $remote_contact = false; - $contact_id = 0; - - $community_page = (($user['page-flags'] == User::PAGE_FLAGS_COMMUNITY) ? true : false); - - if ((local_user()) && (local_user() == $user['uid'])) { - $can_post = true; - } elseif ($community_page && !empty(Session::getRemoteContactID($user['uid']))) { - $contact_id = Session::getRemoteContactID($user['uid']); - $can_post = true; - $remote_contact = true; - $visitor = $contact_id; - } - - // perhaps they're visiting - but not a community page, so they wouldn't have write access - if (!empty(Session::getRemoteContactID($user['uid'])) && !$visitor) { - $contact_id = Session::getRemoteContactID($user['uid']); - $remote_contact = true; - } - - if ($user['hidewall'] && (local_user() != $user['uid']) && !$remote_contact) { - notice(DI::l10n()->t('Access to this item is restricted.')); - return; - } - - $sql_extra = Security::getPermissionsSQLByUserId($user['uid']); - - $o = ""; - - // tabs - $_is_owner = (local_user() && (local_user() == $user['uid'])); - $o .= BaseProfile::getTabsHTML($a, 'videos', $_is_owner, $user['nickname'], $profile['hide-friends']); - - // - // dispatch request - // - if ($datatype === 'upload') { - return; // no uploading for now - - // DELETED -- look at mod/photos.php if you want to implement - } - - if ($datatype === 'album') { - return; // no albums for now - - // DELETED -- look at mod/photos.php if you want to implement - } - - - if ($datatype === 'video') { - return; // no single video view for now - - // DELETED -- look at mod/photos.php if you want to implement - } - - // Default - show recent videos (no upload link for now) - //$o = ''; - - $total = 0; - $r = q("SELECT hash FROM `attach` WHERE `uid` = %d AND filetype LIKE '%%video%%' - $sql_extra GROUP BY hash", - intval($user['uid']) - ); - if (DBA::isResult($r)) { - $total = count($r); - } - - $pager = new Pager(DI::l10n(), DI::args()->getQueryString(), 20); - - $r = q("SELECT hash, ANY_VALUE(`id`) AS `id`, ANY_VALUE(`created`) AS `created`, - ANY_VALUE(`filename`) AS `filename`, ANY_VALUE(`filetype`) as `filetype` - FROM `attach` - WHERE `uid` = %d AND filetype LIKE '%%video%%' - $sql_extra GROUP BY hash ORDER BY `created` DESC LIMIT %d , %d", - intval($user['uid']), - $pager->getStart(), - $pager->getItemsPerPage() - ); - - $videos = []; - - if (DBA::isResult($r)) { - foreach ($r as $rr) { - $alt_e = $rr['filename']; - /// @todo The album isn't part of the above query. This seems to be some unfinished code that needs to be reworked completely. - $rr['album'] = ''; - $name_e = $rr['album']; - - $videos[] = [ - 'id' => $rr['id'], - 'link' => DI::baseUrl() . '/videos/' . $user['nickname'] . '/video/' . $rr['hash'], - 'title' => DI::l10n()->t('View Video'), - 'src' => DI::baseUrl() . '/attach/' . $rr['id'] . '?attachment=0', - 'alt' => $alt_e, - 'mime' => $rr['filetype'], - 'album' => [ - 'link' => DI::baseUrl() . '/videos/' . $user['nickname'] . '/album/' . bin2hex($rr['album']), - 'name' => $name_e, - 'alt' => DI::l10n()->t('View Album'), - ], - ]; - } - } - - $tpl = Renderer::getMarkupTemplate('videos_recent.tpl'); - $o .= Renderer::replaceMacros($tpl, [ - '$title' => DI::l10n()->t('Recent Videos'), - '$can_post' => $can_post, - '$upload' => [DI::l10n()->t('Upload New Videos'), DI::baseUrl() . '/videos/' . $user['nickname'] . '/upload'], - '$videos' => $videos, - '$delete_url' => (($can_post) ? DI::baseUrl() . '/videos/' . $user['nickname'] : false) - ]); - - $o .= $pager->renderFull($total); - - return $o; -} diff --git a/src/Model/Contact.php b/src/Model/Contact.php index 2e7d4b68b..ae5c6483c 100644 --- a/src/Model/Contact.php +++ b/src/Model/Contact.php @@ -1370,12 +1370,13 @@ class Contact * @param bool $thread_mode * @param int $update Update mode * @param int $parent Item parent ID for the update mode + * @param bool $only_media Only display media content * @return string posts in HTML * @throws \Exception */ - public static function getPostsFromUrl($contact_url, $thread_mode = false, $update = 0, $parent = 0) + public static function getPostsFromUrl($contact_url, $thread_mode = false, $update = 0, $parent = 0, bool $only_media = false) { - return self::getPostsFromId(self::getIdForURL($contact_url), $thread_mode, $update, $parent); + return self::getPostsFromId(self::getIdForURL($contact_url), $thread_mode, $update, $parent, $only_media); } /** @@ -1384,14 +1385,13 @@ class Contact * @param int $cid Contact ID * @param bool $thread_mode * @param int $update Update mode - * @param int $parent Item parent ID for the update mode + * @param int $parent Item parent ID for the update mode + * @param bool $only_media Only display media content * @return string posts in HTML * @throws \Exception */ - public static function getPostsFromId($cid, $thread_mode = false, $update = 0, $parent = 0) + public static function getPostsFromId($cid, $thread_mode = false, $update = 0, $parent = 0, bool $only_media = false) { - $a = DI::app(); - $contact = DBA::selectFirst('contact', ['contact-type', 'network'], ['id' => $cid]); if (!DBA::isResult($contact)) { return ''; @@ -1422,6 +1422,11 @@ class Contact } } + if ($only_media) { + $condition = DBA::mergeConditions($condition, ["`uri-id` IN (SELECT `uri-id` FROM `post-media` WHERE `type` IN (?, ?, ?))", + Post\Media::AUDIO, Post\Media::IMAGE, Post\Media::VIDEO]); + } + if (DI::mode()->isMobile()) { $itemsPerPage = DI::pConfig()->get(local_user(), 'system', 'itemspage_mobile_network', DI::config()->get('system', 'itemspage_network_mobile')); diff --git a/src/Module/BaseProfile.php b/src/Module/BaseProfile.php index 7ab7b8b7c..5510b9411 100644 --- a/src/Module/BaseProfile.php +++ b/src/Module/BaseProfile.php @@ -68,15 +68,14 @@ class BaseProfile extends BaseModule 'id' => 'photo-tab', 'accesskey' => 'h', ], -// @todo Currently deactivated since it doesn't really work -// [ -// 'label' => DI::l10n()->t('Videos'), -// 'url' => DI::baseUrl() . '/videos/' . $nickname, -// 'sel' => $current == 'videos' ? 'active' : '', -// 'title' => DI::l10n()->t('Videos'), -// 'id' => 'video-tab', -// 'accesskey' => 'v', -// ], + [ + 'label' => DI::l10n()->t('Media'), + 'url' => $baseProfileUrl . '/media', + 'sel' => $current == 'media' ? 'active' : '', + 'title' => DI::l10n()->t('Media'), + 'id' => 'media-tab', + 'accesskey' => 'd', + ], ]; // the calendar link for the full featured events calendar diff --git a/src/Module/Contact.php b/src/Module/Contact.php index a01a2c785..37569ee77 100644 --- a/src/Module/Contact.php +++ b/src/Module/Contact.php @@ -52,6 +52,7 @@ class Contact extends BaseModule const TAB_PROFILE = 3; const TAB_CONTACTS = 4; const TAB_ADVANCED = 5; + const TAB_MEDIA = 6; private static function batchActions() { @@ -372,7 +373,7 @@ class Contact extends BaseModule } if ($cmd === 'posts') { - return self::getPostsHTML($a, $contact_id); + return self::getPostsHTML($contact_id); } if ($cmd === 'conversations') { @@ -913,6 +914,14 @@ class Contact extends BaseModule 'id' => 'posts-tab', 'accesskey' => 'p', ], + [ + 'label' => DI::l10n()->t('Media'), + 'url' => 'contact/' . $pcid . '/media', + 'sel' => (($active_tab == self::TAB_MEDIA) ? 'active' : ''), + 'title' => DI::l10n()->t('Posts containing media objects'), + 'id' => 'media-tab', + 'accesskey' => 'd', + ], [ 'label' => DI::l10n()->t('Profile'), 'url' => 'contact/' . $cid, @@ -981,7 +990,7 @@ class Contact extends BaseModule return $o; } - private static function getPostsHTML($a, $contact_id) + private static function getPostsHTML(int $contact_id) { $contact = DBA::selectFirst('contact', ['uid', 'url', 'id'], ['id' => $contact_id, 'deleted' => false]); diff --git a/src/Module/Contact/Media.php b/src/Module/Contact/Media.php new file mode 100644 index 000000000..956c33ac8 --- /dev/null +++ b/src/Module/Contact/Media.php @@ -0,0 +1,54 @@ +. + * + */ + +namespace Friendica\Module\Contact; + +use Friendica\BaseModule; +use Friendica\Content\Widget; +use Friendica\DI; +use Friendica\Model; +use Friendica\Model\Contact as ModelContact; +use Friendica\Module\Contact; +use Friendica\Network\HTTPException\BadRequestException; + +/** + * GUI for media posts of a contact + */ +class Media extends BaseModule +{ + public static function content(array $parameters = []) + { + $cid = $parameters['id']; + + $contact = Model\Contact::selectFirst([], ['id' => $cid]); + if (empty($contact)) { + throw new BadRequestException(DI::l10n()->t('Contact not found.')); + } + + DI::page()['aside'] = Widget\VCard::getHTML($contact); + + $o = Contact::getTabsHTML($contact, Contact::TAB_MEDIA); + + $o .= ModelContact::getPostsFromUrl($contact['url'], false, 0, 0, true); + + return $o; + } +} diff --git a/src/Module/Profile/Media.php b/src/Module/Profile/Media.php new file mode 100644 index 000000000..e10597199 --- /dev/null +++ b/src/Module/Profile/Media.php @@ -0,0 +1,53 @@ +. + * + */ + +namespace Friendica\Module\Profile; + +use Friendica\DI; +use Friendica\Model\Contact; +use Friendica\Model\Profile as ProfileModel; +use Friendica\Module\BaseProfile; +use Friendica\Network\HTTPException; + +class Media extends BaseProfile +{ + public static function content(array $parameters = []) + { + $a = DI::app(); + + $profile = ProfileModel::load($a, $parameters['nickname']); + if (empty($profile)) { + throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.')); + } + + if (!$profile['net-publish']) { + DI::page()['htmlhead'] .= '' . "\n"; + } + + $is_owner = local_user() == $profile['uid']; + + $o = self::getTabsHTML($a, 'media', $is_owner, $profile['nickname'], $profile['hide-friends']); + + $o .= Contact::getPostsFromUrl($profile['url'], false, 0, 0, true); + + return $o; + } +} diff --git a/static/routes.config.php b/static/routes.config.php index c19392a09..a7b27fcb5 100644 --- a/static/routes.config.php +++ b/static/routes.config.php @@ -37,6 +37,7 @@ $profileRoutes = [ '/contacts/common' => [Module\Profile\Common::class, [R::GET]], '/contacts[/{type}]' => [Module\Profile\Contacts::class, [R::GET]], '/status[/{category}[/{date1}[/{date2}]]]' => [Module\Profile\Status::class, [R::GET]], + '/media' => [Module\Profile\Media::class, [R::GET]], ]; return [ @@ -237,6 +238,7 @@ return [ '/{id:\d+}/contacts[/{type}]' => [Module\Contact\Contacts::class, [R::GET]], '/{id:\d+}/drop' => [Module\Contact::class, [R::GET]], '/{id:\d+}/ignore' => [Module\Contact::class, [R::GET]], + '/{id:\d+}/media' => [Module\Contact\Media::class, [R::GET]], '/{id:\d+}/poke' => [Module\Contact\Poke::class, [R::GET, R::POST]], '/{id:\d+}/posts' => [Module\Contact::class, [R::GET]], '/{id:\d+}/revoke' => [Module\Contact\Revoke::class, [R::GET, R::POST]], diff --git a/view/lang/C/messages.po b/view/lang/C/messages.po index 3ae008f7d..9a7a23623 100644 --- a/view/lang/C/messages.po +++ b/view/lang/C/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: 2021.12-dev\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-10-02 13:56-0400\n" +"POT-Creation-Date: 2021-10-02 19:18+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -311,7 +311,7 @@ msgstr "" #: mod/wallmessage.php:96 mod/wallmessage.php:120 src/Module/Attach.php:55 #: src/Module/BaseApi.php:79 src/Module/BaseApi.php:88 #: src/Module/BaseApi.php:97 src/Module/BaseApi.php:106 -#: src/Module/BaseNotifications.php:88 src/Module/Contact.php:356 +#: src/Module/BaseNotifications.php:88 src/Module/Contact.php:357 #: src/Module/Contact/Advanced.php:44 src/Module/Delegation.php:118 #: src/Module/FollowConfirm.php:16 src/Module/FriendSuggest.php:44 #: src/Module/Group.php:45 src/Module/Group.php:90 src/Module/Invite.php:41 @@ -343,12 +343,11 @@ msgid "Access denied." msgstr "" #: mod/cal.php:61 mod/cal.php:78 mod/photos.php:69 mod/photos.php:143 -#: mod/photos.php:824 mod/videos.php:49 mod/videos.php:70 mod/videos.php:111 -#: src/Model/Profile.php:228 src/Module/HCard.php:52 +#: mod/photos.php:824 src/Model/Profile.php:228 src/Module/HCard.php:52 #: src/Module/Profile/Common.php:41 src/Module/Profile/Common.php:52 #: src/Module/Profile/Contacts.php:40 src/Module/Profile/Contacts.php:50 -#: src/Module/Profile/Status.php:58 src/Module/Register.php:256 -#: src/Module/RemoteFollow.php:49 +#: src/Module/Profile/Media.php:38 src/Module/Profile/Status.php:58 +#: src/Module/Register.php:256 src/Module/RemoteFollow.php:49 msgid "User not found." msgstr "" @@ -359,8 +358,8 @@ msgid "Access to this profile has been restricted." msgstr "" #: mod/cal.php:251 mod/events.php:422 src/Content/Nav.php:194 -#: src/Content/Nav.php:258 src/Module/BaseProfile.php:85 -#: src/Module/BaseProfile.php:96 view/theme/frio/theme.php:230 +#: src/Content/Nav.php:258 src/Module/BaseProfile.php:84 +#: src/Module/BaseProfile.php:95 view/theme/frio/theme.php:230 #: view/theme/frio/theme.php:234 msgid "Events" msgstr "" @@ -419,7 +418,7 @@ msgstr "" msgid "calendar" msgstr "" -#: mod/display.php:165 mod/photos.php:828 mod/videos.php:115 +#: mod/display.php:165 mod/photos.php:828 #: src/Module/Conversation/Community.php:176 src/Module/Debug/Probe.php:39 #: src/Module/Debug/WebFinger.php:38 src/Module/Directory.php:49 #: src/Module/Search/Index.php:50 src/Module/Search/Index.php:55 @@ -553,7 +552,7 @@ msgstr "" #: mod/editpost.php:130 mod/fbrowser.php:105 mod/fbrowser.php:134 #: mod/follow.php:144 mod/photos.php:1026 mod/photos.php:1135 mod/tagrm.php:37 #: mod/tagrm.php:129 mod/unfollow.php:97 src/Content/Conversation.php:373 -#: src/Module/Contact.php:439 src/Module/Contact/Revoke.php:99 +#: src/Module/Contact.php:440 src/Module/Contact/Revoke.php:99 #: src/Module/RemoteFollow.php:116 msgid "Cancel" msgstr "" @@ -639,7 +638,7 @@ msgstr "" #: mod/events.php:568 src/Content/Widget/VCard.php:98 src/Model/Event.php:86 #: src/Model/Event.php:113 src/Model/Event.php:483 src/Model/Event.php:969 -#: src/Model/Profile.php:367 src/Module/Contact.php:625 +#: src/Model/Profile.php:367 src/Module/Contact.php:626 #: src/Module/Directory.php:150 src/Module/Notifications/Introductions.php:166 #: src/Module/Profile/Profile.php:194 msgid "Location:" @@ -656,7 +655,7 @@ msgstr "" #: mod/events.php:580 mod/message.php:204 mod/message.php:367 #: mod/photos.php:947 mod/photos.php:1048 mod/photos.php:1336 #: mod/photos.php:1377 mod/photos.php:1433 mod/photos.php:1507 -#: src/Module/Admin/Item/Source.php:65 src/Module/Contact.php:583 +#: src/Module/Admin/Item/Source.php:65 src/Module/Contact.php:584 #: src/Module/Contact/Advanced.php:133 src/Module/Contact/Poke.php:158 #: src/Module/Debug/ActivityPubConversion.php:141 #: src/Module/Debug/Babel.php:313 src/Module/Debug/Localtime.php:64 @@ -675,7 +674,7 @@ msgstr "" msgid "Basic" msgstr "" -#: mod/events.php:582 src/Module/Admin/Site.php:505 src/Module/Contact.php:934 +#: mod/events.php:582 src/Module/Admin/Site.php:505 src/Module/Contact.php:943 #: src/Module/Profile/Profile.php:249 msgid "Advanced" msgstr "" @@ -733,13 +732,13 @@ msgid "Your Identity Address:" msgstr "" #: mod/follow.php:141 mod/unfollow.php:100 -#: src/Module/Admin/Blocklist/Contact.php:100 src/Module/Contact.php:621 +#: src/Module/Admin/Blocklist/Contact.php:100 src/Module/Contact.php:622 #: src/Module/Notifications/Introductions.php:108 #: src/Module/Notifications/Introductions.php:177 msgid "Profile URL" msgstr "" -#: mod/follow.php:142 src/Module/Contact.php:633 +#: mod/follow.php:142 src/Module/Contact.php:634 #: src/Module/Notifications/Introductions.php:170 #: src/Module/Profile/Profile.php:207 msgid "Tags:" @@ -755,7 +754,7 @@ msgid "Add a personal note:" msgstr "" #: mod/follow.php:163 mod/unfollow.php:109 src/Module/BaseProfile.php:59 -#: src/Module/Contact.php:912 +#: src/Module/Contact.php:913 msgid "Status Messages and Posts" msgstr "" @@ -1054,7 +1053,7 @@ msgid_plural "%d messages" msgstr[0] "" msgstr[1] "" -#: mod/notes.php:51 src/Module/BaseProfile.php:107 +#: mod/notes.php:51 src/Module/BaseProfile.php:106 msgid "Personal Notes" msgstr "" @@ -1193,7 +1192,7 @@ msgstr "" msgid "No photos selected" msgstr "" -#: mod/photos.php:902 mod/videos.php:166 +#: mod/photos.php:902 msgid "Access to this item is restricted." msgstr "" @@ -1318,7 +1317,7 @@ msgid "Rotate CCW (left)" msgstr "" #: mod/photos.php:1374 mod/photos.php:1430 mod/photos.php:1504 -#: src/Module/Contact.php:1064 src/Module/Item/Compose.php:148 +#: src/Module/Contact.php:1073 src/Module/Item/Compose.php:148 #: src/Object/Post.php:960 msgid "This is you" msgstr "" @@ -1334,8 +1333,8 @@ msgstr "" #: mod/photos.php:1466 mod/settings.php:573 src/Content/Conversation.php:616 #: src/Module/Admin/Users/Active.php:139 src/Module/Admin/Users/Blocked.php:140 -#: src/Module/Admin/Users/Index.php:153 src/Module/Contact.php:867 -#: src/Module/Contact.php:1162 +#: src/Module/Admin/Users/Index.php:153 src/Module/Contact.php:868 +#: src/Module/Contact.php:1171 msgid "Delete" msgstr "" @@ -1359,7 +1358,7 @@ msgstr "" msgid "Map" msgstr "" -#: mod/photos.php:1623 mod/videos.php:243 +#: mod/photos.php:1623 msgid "View Album" msgstr "" @@ -1382,8 +1381,8 @@ msgstr "" #: mod/redir.php:55 mod/redir.php:129 src/Module/Contact/Advanced.php:54 #: src/Module/Contact/Advanced.php:105 src/Module/Contact/Contacts.php:36 -#: src/Module/FriendSuggest.php:54 src/Module/FriendSuggest.php:93 -#: src/Module/Group.php:105 +#: src/Module/Contact/Media.php:43 src/Module/FriendSuggest.php:54 +#: src/Module/FriendSuggest.php:93 src/Module/Group.php:105 msgid "Contact not found." msgstr "" @@ -2309,22 +2308,6 @@ msgstr "" msgid "Unable to unfollow this contact, please contact your administrator" msgstr "" -#: mod/videos.php:120 -msgid "No videos selected" -msgstr "" - -#: mod/videos.php:236 -msgid "View Video" -msgstr "" - -#: mod/videos.php:251 -msgid "Recent Videos" -msgstr "" - -#: mod/videos.php:253 -msgid "Upload New Videos" -msgstr "" - #: mod/wall_attach.php:42 mod/wall_attach.php:49 mod/wall_attach.php:87 #: mod/wall_upload.php:52 mod/wall_upload.php:63 mod/wall_upload.php:108 #: mod/wall_upload.php:159 mod/wall_upload.php:162 @@ -2414,16 +2397,16 @@ msgid "All contacts" msgstr "" #: src/BaseModule.php:212 src/Content/Widget.php:238 src/Core/ACL.php:195 -#: src/Module/Contact.php:833 src/Module/PermissionTooltip.php:77 +#: src/Module/Contact.php:834 src/Module/PermissionTooltip.php:77 #: src/Module/PermissionTooltip.php:99 msgid "Followers" msgstr "" -#: src/BaseModule.php:217 src/Content/Widget.php:239 src/Module/Contact.php:834 +#: src/BaseModule.php:217 src/Content/Widget.php:239 src/Module/Contact.php:835 msgid "Following" msgstr "" -#: src/BaseModule.php:222 src/Content/Widget.php:240 src/Module/Contact.php:835 +#: src/BaseModule.php:222 src/Content/Widget.php:240 src/Module/Contact.php:836 msgid "Mutual friends" msgstr "" @@ -3051,13 +3034,13 @@ msgstr "" #: src/Content/Item.php:449 src/Module/Admin/Blocklist/Contact.php:84 #: src/Module/Admin/Users/Active.php:140 src/Module/Admin/Users/Index.php:154 -#: src/Module/Contact.php:604 src/Module/Contact.php:865 -#: src/Module/Contact.php:1135 +#: src/Module/Contact.php:605 src/Module/Contact.php:866 +#: src/Module/Contact.php:1144 msgid "Block" msgstr "" -#: src/Content/Item.php:450 src/Module/Contact.php:605 -#: src/Module/Contact.php:866 src/Module/Contact.php:1143 +#: src/Content/Item.php:450 src/Module/Contact.php:606 +#: src/Module/Contact.php:867 src/Module/Contact.php:1152 #: src/Module/Notifications/Introductions.php:113 #: src/Module/Notifications/Introductions.php:185 #: src/Module/Notifications/Notification.php:59 @@ -3106,7 +3089,7 @@ msgid "Sign in" msgstr "" #: src/Content/Nav.php:190 src/Module/BaseProfile.php:56 -#: src/Module/Contact.php:636 src/Module/Contact.php:901 +#: src/Module/Contact.php:637 src/Module/Contact.php:902 #: src/Module/Settings/TwoFactor/Index.php:112 view/theme/frio/theme.php:226 msgid "Status" msgstr "" @@ -3117,8 +3100,8 @@ msgid "Your posts and conversations" msgstr "" #: src/Content/Nav.php:191 src/Module/BaseProfile.php:48 -#: src/Module/BaseSettings.php:57 src/Module/Contact.php:638 -#: src/Module/Contact.php:917 src/Module/Profile/Profile.php:241 +#: src/Module/BaseSettings.php:57 src/Module/Contact.php:639 +#: src/Module/Contact.php:926 src/Module/Profile/Profile.php:241 #: src/Module/Welcome.php:57 view/theme/frio/theme.php:227 msgid "Profile" msgstr "" @@ -3203,9 +3186,9 @@ msgid "Tags" msgstr "" #: src/Content/Nav.php:235 src/Content/Nav.php:294 -#: src/Content/Text/HTML.php:902 src/Module/BaseProfile.php:126 -#: src/Module/BaseProfile.php:129 src/Module/Contact.php:836 -#: src/Module/Contact.php:924 view/theme/frio/theme.php:237 +#: src/Content/Text/HTML.php:902 src/Module/BaseProfile.php:125 +#: src/Module/BaseProfile.php:128 src/Module/Contact.php:837 +#: src/Module/Contact.php:933 view/theme/frio/theme.php:237 msgid "Contacts" msgstr "" @@ -3217,8 +3200,8 @@ msgstr "" msgid "Conversations on this and other servers" msgstr "" -#: src/Content/Nav.php:258 src/Module/BaseProfile.php:88 -#: src/Module/BaseProfile.php:99 view/theme/frio/theme.php:234 +#: src/Content/Nav.php:258 src/Module/BaseProfile.php:87 +#: src/Module/BaseProfile.php:98 view/theme/frio/theme.php:234 msgid "Events and Calendar" msgstr "" @@ -3435,7 +3418,7 @@ msgstr "" msgid "Examples: Robert Morgenstein, Fishing" msgstr "" -#: src/Content/Widget.php:78 src/Module/Contact.php:857 +#: src/Content/Widget.php:78 src/Module/Contact.php:858 #: src/Module/Directory.php:99 view/theme/vier/theme.php:174 msgid "Find" msgstr "" @@ -3462,7 +3445,7 @@ msgid "Local Directory" msgstr "" #: src/Content/Widget.php:214 src/Model/Group.php:535 -#: src/Module/Contact.php:820 src/Module/Welcome.php:76 +#: src/Module/Contact.php:821 src/Module/Welcome.php:76 msgid "Groups" msgstr "" @@ -3474,7 +3457,7 @@ msgstr "" msgid "Relationships" msgstr "" -#: src/Content/Widget.php:247 src/Module/Contact.php:772 +#: src/Content/Widget.php:247 src/Module/Contact.php:773 #: src/Module/Group.php:292 msgid "All Contacts" msgstr "" @@ -3518,7 +3501,7 @@ msgstr "" msgid "Organisations" msgstr "" -#: src/Content/Widget.php:529 src/Model/Contact.php:1504 +#: src/Content/Widget.php:529 src/Model/Contact.php:1509 msgid "News" msgstr "" @@ -3573,12 +3556,12 @@ msgid "More Trending Tags" msgstr "" #: src/Content/Widget/VCard.php:96 src/Model/Profile.php:372 -#: src/Module/Contact.php:627 src/Module/Profile/Profile.php:176 +#: src/Module/Contact.php:628 src/Module/Profile/Profile.php:176 msgid "XMPP:" msgstr "" #: src/Content/Widget/VCard.php:97 src/Model/Profile.php:373 -#: src/Module/Contact.php:629 src/Module/Profile/Profile.php:180 +#: src/Module/Contact.php:630 src/Module/Profile/Profile.php:180 msgid "Matrix:" msgstr "" @@ -4396,71 +4379,71 @@ msgstr "" msgid "Approve" msgstr "" -#: src/Model/Contact.php:1500 +#: src/Model/Contact.php:1505 msgid "Organisation" msgstr "" -#: src/Model/Contact.php:1508 +#: src/Model/Contact.php:1513 msgid "Forum" msgstr "" -#: src/Model/Contact.php:2364 +#: src/Model/Contact.php:2369 msgid "Disallowed profile URL." msgstr "" -#: src/Model/Contact.php:2369 src/Module/Friendica.php:81 +#: src/Model/Contact.php:2374 src/Module/Friendica.php:81 msgid "Blocked domain" msgstr "" -#: src/Model/Contact.php:2374 +#: src/Model/Contact.php:2379 msgid "Connect URL missing." msgstr "" -#: src/Model/Contact.php:2383 +#: src/Model/Contact.php:2388 msgid "" "The contact could not be added. Please check the relevant network " "credentials in your Settings -> Social Networks page." msgstr "" -#: src/Model/Contact.php:2420 +#: src/Model/Contact.php:2425 msgid "The profile address specified does not provide adequate information." msgstr "" -#: src/Model/Contact.php:2422 +#: src/Model/Contact.php:2427 msgid "No compatible communication protocols or feeds were discovered." msgstr "" -#: src/Model/Contact.php:2425 +#: src/Model/Contact.php:2430 msgid "An author or name was not found." msgstr "" -#: src/Model/Contact.php:2428 +#: src/Model/Contact.php:2433 msgid "No browser URL could be matched to this address." msgstr "" -#: src/Model/Contact.php:2431 +#: src/Model/Contact.php:2436 msgid "" "Unable to match @-style Identity Address with a known protocol or email " "contact." msgstr "" -#: src/Model/Contact.php:2432 +#: src/Model/Contact.php:2437 msgid "Use mailto: in front of address to force email check." msgstr "" -#: src/Model/Contact.php:2438 +#: src/Model/Contact.php:2443 msgid "" "The profile address specified belongs to a network which has been disabled " "on this site." msgstr "" -#: src/Model/Contact.php:2443 +#: src/Model/Contact.php:2448 msgid "" "Limited profile. This person will be unable to receive direct/personal " "notifications from you." msgstr "" -#: src/Model/Contact.php:2502 +#: src/Model/Contact.php:2507 msgid "Unable to retrieve contact information." msgstr "" @@ -4730,7 +4713,7 @@ msgstr "" msgid "Homepage:" msgstr "" -#: src/Model/Profile.php:371 src/Module/Contact.php:631 +#: src/Model/Profile.php:371 src/Module/Contact.php:632 #: src/Module/Notifications/Introductions.php:168 msgid "About:" msgstr "" @@ -5131,8 +5114,8 @@ msgstr "" msgid "List of active accounts" msgstr "" -#: src/Module/Admin/BaseUsers.php:66 src/Module/Contact.php:780 -#: src/Module/Contact.php:840 +#: src/Module/Admin/BaseUsers.php:66 src/Module/Contact.php:781 +#: src/Module/Contact.php:841 msgid "Pending" msgstr "" @@ -5140,8 +5123,8 @@ msgstr "" msgid "List of pending registrations" msgstr "" -#: src/Module/Admin/BaseUsers.php:74 src/Module/Contact.php:788 -#: src/Module/Contact.php:841 +#: src/Module/Admin/BaseUsers.php:74 src/Module/Contact.php:789 +#: src/Module/Contact.php:842 msgid "Blocked" msgstr "" @@ -5198,8 +5181,8 @@ msgstr "" #: src/Module/Admin/Blocklist/Contact.php:85 #: src/Module/Admin/Users/Blocked.php:142 src/Module/Admin/Users/Index.php:156 -#: src/Module/Contact.php:604 src/Module/Contact.php:865 -#: src/Module/Contact.php:1135 +#: src/Module/Contact.php:605 src/Module/Contact.php:866 +#: src/Module/Contact.php:1144 msgid "Unblock" msgstr "" @@ -6545,7 +6528,7 @@ msgid "" "received." msgstr "" -#: src/Module/Admin/Site.php:609 src/Module/Contact.php:533 +#: src/Module/Admin/Site.php:609 src/Module/Contact.php:534 #: src/Module/Settings/TwoFactor/Index.php:118 msgid "Disabled" msgstr "" @@ -7116,8 +7099,8 @@ msgstr "" msgid "Posts from %s can't be unshared" msgstr "" -#: src/Module/Api/Twitter/ContactEndpoint.php:63 src/Module/Contact.php:371 -#: src/Module/Contact.php:386 +#: src/Module/Api/Twitter/ContactEndpoint.php:63 src/Module/Contact.php:372 +#: src/Module/Contact.php:387 msgid "Contact not found" msgstr "" @@ -7238,23 +7221,28 @@ msgstr "" msgid "Too Many Requests" msgstr "" -#: src/Module/BaseProfile.php:51 src/Module/Contact.php:920 +#: src/Module/BaseProfile.php:51 src/Module/Contact.php:929 msgid "Profile Details" msgstr "" -#: src/Module/BaseProfile.php:110 +#: src/Module/BaseProfile.php:72 src/Module/BaseProfile.php:75 +#: src/Module/Contact.php:918 +msgid "Media" +msgstr "" + +#: src/Module/BaseProfile.php:109 msgid "Only You Can See This" msgstr "" -#: src/Module/BaseProfile.php:115 src/Module/Profile/Schedule.php:82 +#: src/Module/BaseProfile.php:114 src/Module/Profile/Schedule.php:82 msgid "Scheduled Posts" msgstr "" -#: src/Module/BaseProfile.php:118 +#: src/Module/BaseProfile.php:117 msgid "Posts that are scheduled for publishing" msgstr "" -#: src/Module/BaseProfile.php:137 src/Module/BaseProfile.php:140 +#: src/Module/BaseProfile.php:136 src/Module/BaseProfile.php:139 msgid "Tips for New Members" msgstr "" @@ -7305,374 +7293,378 @@ msgstr "" msgid "The post was created" msgstr "" -#: src/Module/Contact.php:97 +#: src/Module/Contact.php:98 #, php-format msgid "%d contact edited." msgid_plural "%d contacts edited." msgstr[0] "" msgstr[1] "" -#: src/Module/Contact.php:122 +#: src/Module/Contact.php:123 msgid "Could not access contact record." msgstr "" -#: src/Module/Contact.php:158 +#: src/Module/Contact.php:159 msgid "Failed to update contact record." msgstr "" -#: src/Module/Contact.php:403 +#: src/Module/Contact.php:404 msgid "You can't block yourself" msgstr "" -#: src/Module/Contact.php:409 +#: src/Module/Contact.php:410 msgid "Contact has been blocked" msgstr "" -#: src/Module/Contact.php:409 +#: src/Module/Contact.php:410 msgid "Contact has been unblocked" msgstr "" -#: src/Module/Contact.php:417 +#: src/Module/Contact.php:418 msgid "You can't ignore yourself" msgstr "" -#: src/Module/Contact.php:423 +#: src/Module/Contact.php:424 msgid "Contact has been ignored" msgstr "" -#: src/Module/Contact.php:423 +#: src/Module/Contact.php:424 msgid "Contact has been unignored" msgstr "" -#: src/Module/Contact.php:436 +#: src/Module/Contact.php:437 msgid "Drop contact" msgstr "" -#: src/Module/Contact.php:437 src/Module/Contact.php:861 +#: src/Module/Contact.php:438 src/Module/Contact.php:862 msgid "Do you really want to delete this contact?" msgstr "" -#: src/Module/Contact.php:438 src/Module/Contact/Revoke.php:98 +#: src/Module/Contact.php:439 src/Module/Contact/Revoke.php:98 #: src/Module/Notifications/Introductions.php:123 #: src/Module/OAuth/Acknowledge.php:47 src/Module/Register.php:117 msgid "Yes" msgstr "" -#: src/Module/Contact.php:454 +#: src/Module/Contact.php:455 msgid "Contact has been removed." msgstr "" -#: src/Module/Contact.php:475 +#: src/Module/Contact.php:476 #, php-format msgid "You are mutual friends with %s" msgstr "" -#: src/Module/Contact.php:479 +#: src/Module/Contact.php:480 #, php-format msgid "You are sharing with %s" msgstr "" -#: src/Module/Contact.php:483 +#: src/Module/Contact.php:484 #, php-format msgid "%s is sharing with you" msgstr "" -#: src/Module/Contact.php:507 +#: src/Module/Contact.php:508 msgid "Private communications are not available for this contact." msgstr "" -#: src/Module/Contact.php:509 +#: src/Module/Contact.php:510 msgid "Never" msgstr "" -#: src/Module/Contact.php:512 +#: src/Module/Contact.php:513 msgid "(Update was not successful)" msgstr "" -#: src/Module/Contact.php:512 +#: src/Module/Contact.php:513 msgid "(Update was successful)" msgstr "" -#: src/Module/Contact.php:514 src/Module/Contact.php:1106 +#: src/Module/Contact.php:515 src/Module/Contact.php:1115 msgid "Suggest friends" msgstr "" -#: src/Module/Contact.php:518 +#: src/Module/Contact.php:519 #, php-format msgid "Network type: %s" msgstr "" -#: src/Module/Contact.php:523 +#: src/Module/Contact.php:524 msgid "Communications lost with this contact!" msgstr "" -#: src/Module/Contact.php:529 +#: src/Module/Contact.php:530 msgid "Fetch further information for feeds" msgstr "" -#: src/Module/Contact.php:531 +#: src/Module/Contact.php:532 msgid "" "Fetch information like preview pictures, title and teaser from the feed " "item. You can activate this if the feed doesn't contain much text. Keywords " "are taken from the meta header in the feed item and are posted as hash tags." msgstr "" -#: src/Module/Contact.php:534 +#: src/Module/Contact.php:535 msgid "Fetch information" msgstr "" -#: src/Module/Contact.php:535 +#: src/Module/Contact.php:536 msgid "Fetch keywords" msgstr "" -#: src/Module/Contact.php:536 +#: src/Module/Contact.php:537 msgid "Fetch information and keywords" msgstr "" -#: src/Module/Contact.php:548 src/Module/Contact.php:552 -#: src/Module/Contact.php:555 src/Module/Contact.php:559 +#: src/Module/Contact.php:549 src/Module/Contact.php:553 +#: src/Module/Contact.php:556 src/Module/Contact.php:560 msgid "No mirroring" msgstr "" -#: src/Module/Contact.php:549 +#: src/Module/Contact.php:550 msgid "Mirror as forwarded posting" msgstr "" -#: src/Module/Contact.php:550 src/Module/Contact.php:556 -#: src/Module/Contact.php:560 +#: src/Module/Contact.php:551 src/Module/Contact.php:557 +#: src/Module/Contact.php:561 msgid "Mirror as my own posting" msgstr "" -#: src/Module/Contact.php:553 src/Module/Contact.php:557 +#: src/Module/Contact.php:554 src/Module/Contact.php:558 msgid "Native reshare" msgstr "" -#: src/Module/Contact.php:572 +#: src/Module/Contact.php:573 msgid "Contact Information / Notes" msgstr "" -#: src/Module/Contact.php:573 +#: src/Module/Contact.php:574 msgid "Contact Settings" msgstr "" -#: src/Module/Contact.php:581 +#: src/Module/Contact.php:582 msgid "Contact" msgstr "" -#: src/Module/Contact.php:585 +#: src/Module/Contact.php:586 msgid "Their personal note" msgstr "" -#: src/Module/Contact.php:587 +#: src/Module/Contact.php:588 msgid "Edit contact notes" msgstr "" -#: src/Module/Contact.php:590 src/Module/Contact.php:1072 +#: src/Module/Contact.php:591 src/Module/Contact.php:1081 #, php-format msgid "Visit %s's profile [%s]" msgstr "" -#: src/Module/Contact.php:591 +#: src/Module/Contact.php:592 msgid "Block/Unblock contact" msgstr "" -#: src/Module/Contact.php:592 +#: src/Module/Contact.php:593 msgid "Ignore contact" msgstr "" -#: src/Module/Contact.php:593 +#: src/Module/Contact.php:594 msgid "View conversations" msgstr "" -#: src/Module/Contact.php:598 +#: src/Module/Contact.php:599 msgid "Last update:" msgstr "" -#: src/Module/Contact.php:600 +#: src/Module/Contact.php:601 msgid "Update public posts" msgstr "" -#: src/Module/Contact.php:602 src/Module/Contact.php:1116 +#: src/Module/Contact.php:603 src/Module/Contact.php:1125 msgid "Update now" msgstr "" -#: src/Module/Contact.php:605 src/Module/Contact.php:866 -#: src/Module/Contact.php:1143 +#: src/Module/Contact.php:606 src/Module/Contact.php:867 +#: src/Module/Contact.php:1152 msgid "Unignore" msgstr "" -#: src/Module/Contact.php:609 +#: src/Module/Contact.php:610 msgid "Currently blocked" msgstr "" -#: src/Module/Contact.php:610 +#: src/Module/Contact.php:611 msgid "Currently ignored" msgstr "" -#: src/Module/Contact.php:611 +#: src/Module/Contact.php:612 msgid "Currently archived" msgstr "" -#: src/Module/Contact.php:612 +#: src/Module/Contact.php:613 msgid "Awaiting connection acknowledge" msgstr "" -#: src/Module/Contact.php:613 src/Module/Notifications/Introductions.php:171 +#: src/Module/Contact.php:614 src/Module/Notifications/Introductions.php:171 msgid "Hide this contact from others" msgstr "" -#: src/Module/Contact.php:613 +#: src/Module/Contact.php:614 msgid "" "Replies/likes to your public posts may still be visible" msgstr "" -#: src/Module/Contact.php:614 +#: src/Module/Contact.php:615 msgid "Notification for new posts" msgstr "" -#: src/Module/Contact.php:614 +#: src/Module/Contact.php:615 msgid "Send a notification of every new post of this contact" msgstr "" -#: src/Module/Contact.php:616 +#: src/Module/Contact.php:617 msgid "Keyword Deny List" msgstr "" -#: src/Module/Contact.php:616 +#: src/Module/Contact.php:617 msgid "" "Comma separated list of keywords that should not be converted to hashtags, " "when \"Fetch information and keywords\" is selected" msgstr "" -#: src/Module/Contact.php:634 src/Module/Settings/TwoFactor/Index.php:132 +#: src/Module/Contact.php:635 src/Module/Settings/TwoFactor/Index.php:132 msgid "Actions" msgstr "" -#: src/Module/Contact.php:641 +#: src/Module/Contact.php:642 msgid "Mirror postings from this contact" msgstr "" -#: src/Module/Contact.php:643 +#: src/Module/Contact.php:644 msgid "" "Mark this contact as remote_self, this will cause friendica to repost new " "entries from this contact." msgstr "" -#: src/Module/Contact.php:775 +#: src/Module/Contact.php:776 msgid "Show all contacts" msgstr "" -#: src/Module/Contact.php:783 +#: src/Module/Contact.php:784 msgid "Only show pending contacts" msgstr "" -#: src/Module/Contact.php:791 +#: src/Module/Contact.php:792 msgid "Only show blocked contacts" msgstr "" -#: src/Module/Contact.php:796 src/Module/Contact.php:843 +#: src/Module/Contact.php:797 src/Module/Contact.php:844 #: src/Object/Post.php:309 msgid "Ignored" msgstr "" -#: src/Module/Contact.php:799 +#: src/Module/Contact.php:800 msgid "Only show ignored contacts" msgstr "" -#: src/Module/Contact.php:804 src/Module/Contact.php:844 +#: src/Module/Contact.php:805 src/Module/Contact.php:845 msgid "Archived" msgstr "" -#: src/Module/Contact.php:807 +#: src/Module/Contact.php:808 msgid "Only show archived contacts" msgstr "" -#: src/Module/Contact.php:812 src/Module/Contact.php:842 +#: src/Module/Contact.php:813 src/Module/Contact.php:843 msgid "Hidden" msgstr "" -#: src/Module/Contact.php:815 +#: src/Module/Contact.php:816 msgid "Only show hidden contacts" msgstr "" -#: src/Module/Contact.php:823 +#: src/Module/Contact.php:824 msgid "Organize your contact groups" msgstr "" -#: src/Module/Contact.php:855 +#: src/Module/Contact.php:856 msgid "Search your contacts" msgstr "" -#: src/Module/Contact.php:856 src/Module/Search/Index.php:194 +#: src/Module/Contact.php:857 src/Module/Search/Index.php:194 #, php-format msgid "Results for: %s" msgstr "" -#: src/Module/Contact.php:864 +#: src/Module/Contact.php:865 msgid "Update" msgstr "" -#: src/Module/Contact.php:869 +#: src/Module/Contact.php:870 msgid "Batch Actions" msgstr "" -#: src/Module/Contact.php:904 +#: src/Module/Contact.php:905 msgid "Conversations started by this contact" msgstr "" -#: src/Module/Contact.php:909 +#: src/Module/Contact.php:910 msgid "Posts and Comments" msgstr "" -#: src/Module/Contact.php:927 +#: src/Module/Contact.php:921 +msgid "Posts containing media objects" +msgstr "" + +#: src/Module/Contact.php:936 msgid "View all known contacts" msgstr "" -#: src/Module/Contact.php:937 +#: src/Module/Contact.php:946 msgid "Advanced Contact Settings" msgstr "" -#: src/Module/Contact.php:1031 +#: src/Module/Contact.php:1040 msgid "Mutual Friendship" msgstr "" -#: src/Module/Contact.php:1035 +#: src/Module/Contact.php:1044 msgid "is a fan of yours" msgstr "" -#: src/Module/Contact.php:1039 +#: src/Module/Contact.php:1048 msgid "you are a fan of" msgstr "" -#: src/Module/Contact.php:1057 +#: src/Module/Contact.php:1066 msgid "Pending outgoing contact request" msgstr "" -#: src/Module/Contact.php:1059 +#: src/Module/Contact.php:1068 msgid "Pending incoming contact request" msgstr "" -#: src/Module/Contact.php:1126 +#: src/Module/Contact.php:1135 msgid "Refetch contact data" msgstr "" -#: src/Module/Contact.php:1137 +#: src/Module/Contact.php:1146 msgid "Toggle Blocked status" msgstr "" -#: src/Module/Contact.php:1145 +#: src/Module/Contact.php:1154 msgid "Toggle Ignored status" msgstr "" -#: src/Module/Contact.php:1153 src/Module/Contact/Revoke.php:96 +#: src/Module/Contact.php:1162 src/Module/Contact/Revoke.php:96 msgid "Revoke Follow" msgstr "" -#: src/Module/Contact.php:1155 +#: src/Module/Contact.php:1164 msgid "Revoke the follow from this contact" msgstr "" -#: src/Module/Contact.php:1164 +#: src/Module/Contact.php:1173 msgid "Delete contact" msgstr ""