diff --git a/.gitignore b/.gitignore
index 8a37ec621..7efd6da3d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,6 +20,8 @@
/public/hot
/public/storage
/public/vendor/horizon
+/public/_lang
+/public/js
/storage/*.key
/storage/docker
/vendor
diff --git a/app/Console/Commands/ExportLanguages.php b/app/Console/Commands/ExportLanguages.php
deleted file mode 100644
index be315cc44..000000000
--- a/app/Console/Commands/ExportLanguages.php
+++ /dev/null
@@ -1,74 +0,0 @@
-error('This command is meant for development purposes and should only be run in a local environment');
- return Command::FAILURE;
- }
-
- $path = base_path('resources/lang');
- $langs = [];
-
- foreach (new \DirectoryIterator($path) as $io) {
- $name = $io->getFilename();
- $skip = ['vendor'];
- if($io->isDot() || in_array($name, $skip)) {
- continue;
- }
-
- if($io->isDir()) {
- array_push($langs, $name);
- }
- }
-
- $exportDir = resource_path('assets/js/i18n/');
- $exportDirAlt = public_path('_lang/');
-
- foreach($langs as $lang) {
- $strings = \Lang::get('web', [], $lang);
- $json = json_encode($strings, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
- $path = "{$exportDir}{$lang}.json";
- file_put_contents($path, $json);
- $pathAlt = "{$exportDirAlt}{$lang}.json";
- file_put_contents($pathAlt, $json);
- }
-
- return Command::SUCCESS;
- }
-}
diff --git a/build.xml b/build.xml
new file mode 100644
index 000000000..7d49d435e
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build/lib/i18n.php b/build/lib/i18n.php
new file mode 100644
index 000000000..339278dbe
--- /dev/null
+++ b/build/lib/i18n.php
@@ -0,0 +1,108 @@
+lang_code);
+ $json = json_encode($strings, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
+ $path = "{DIRECTORIES::get().export}{$this->lang_code}.json";
+ file_put_contents($path, $json);
+ $pathAlt = "{DIRECTORIES::get().exportAlt}{$this->lang_code}.json";
+ file_put_contents($pathAlt, $json);
+ }
+
+ private function __construct(string $code) {
+ $this->lang_code = $code;
+ $this->rootPath = base_path('resources/lang') . '/' . $code;
+ }
+};
+
+class LanguageCodes {
+ /**
+ * By scanning the translation resources folder, builds
+ * a list of all currently defined translation languages.
+ *
+ * @return array[] Language codes for all defined translations
+ */
+ public static function GetAllDefined() {
+ foreach (new \DirectoryIterator($path) as $io) {
+ $name = $io->getFilename();
+ $skip = ['vendor'];
+ if($io->isDot() || in_array($name, $skip)) {
+ continue;
+ }
+
+ if($io->isDir()) {
+ array_push($langs, $name);
+ }
+ }
+ }
+};
+
+/**
+ * This singleton class efficiently stores and
+ * tracks directories used in various operations
+ * of i18n.
+ */
+class DIRECTORIES {
+ private static $instance;
+
+ // enforce singleton pattern
+ protected function __construct() {
+ $this->export = resource_path('assets/js/i18n/');
+ $this->exportAlt = public_path('_lang/');
+ }
+
+ protected function __clone() { }
+ public function __wakeup()
+ { throw new \Exception("Cannot unserialize a singleton."); }
+
+ public static function get(): DIRECTORIES {
+ if(!isset(self::$instance)) {
+ self::$instance = new DIRECTORIES();
+ }
+
+ return self::$instance;
+ }
+
+ public $export;
+ public $exportAlt;
+}
diff --git a/build/phing/tasks/pixelfed/i18n/generate.php b/build/phing/tasks/pixelfed/i18n/generate.php
new file mode 100644
index 000000000..7e51cc509
--- /dev/null
+++ b/build/phing/tasks/pixelfed/i18n/generate.php
@@ -0,0 +1,18 @@
+=12.0.0",
@@ -10993,13 +10993,13 @@
},
"require-dev": {
"larastan/larastan": "^2.9.8",
- "laravel/framework": "^11.16.0",
- "laravel/pint": "^1.16.2",
- "laravel/sail": "^1.30.2",
+ "laravel/framework": "^11.19.0",
+ "laravel/pint": "^1.17.1",
+ "laravel/sail": "^1.31.0",
"laravel/sanctum": "^4.0.2",
"laravel/tinker": "^2.9.0",
- "orchestra/testbench-core": "^9.2.1",
- "pestphp/pest": "^2.34.9 || ^3.0.0",
+ "orchestra/testbench-core": "^9.2.3",
+ "pestphp/pest": "^2.35.0 || ^3.0.0",
"sebastian/environment": "^6.1.0 || ^7.0.0"
},
"type": "library",
@@ -11062,7 +11062,7 @@
"type": "patreon"
}
],
- "time": "2024-07-16T22:41:01+00:00"
+ "time": "2024-08-03T15:32:23+00:00"
},
{
"name": "phar-io/manifest",
@@ -11182,6 +11182,118 @@
},
"time": "2022-02-21T01:04:05+00:00"
},
+ {
+ "name": "phing/phing",
+ "version": "2.17.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phingofficial/phing.git",
+ "reference": "9f3bc8c72e65452686dcf64497e02a082f138908"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phingofficial/phing/zipball/9f3bc8c72e65452686dcf64497e02a082f138908",
+ "reference": "9f3bc8c72e65452686dcf64497e02a082f138908",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.2.0"
+ },
+ "require-dev": {
+ "ext-pdo_sqlite": "*",
+ "mikey179/vfsstream": "^1.6",
+ "pdepend/pdepend": "2.x",
+ "pear/archive_tar": "1.4.x",
+ "pear/http_request2": "dev-trunk",
+ "pear/net_growl": "dev-trunk",
+ "pear/pear-core-minimal": "1.10.1",
+ "pear/versioncontrol_git": "@dev",
+ "pear/versioncontrol_svn": "~0.5",
+ "phpdocumentor/phpdocumentor": "2.x",
+ "phploc/phploc": "~2.0.6",
+ "phpmd/phpmd": "~2.2",
+ "phpunit/phpunit": ">=3.7",
+ "sebastian/git": "~1.0",
+ "sebastian/phpcpd": "2.x",
+ "siad007/versioncontrol_hg": "^1.0",
+ "simpletest/simpletest": "^1.1",
+ "squizlabs/php_codesniffer": "~2.2",
+ "symfony/yaml": "^2.8 || ^3.1 || ^4.0"
+ },
+ "suggest": {
+ "pdepend/pdepend": "PHP version of JDepend",
+ "pear/archive_tar": "Tar file management class",
+ "pear/versioncontrol_git": "A library that provides OO interface to handle Git repository",
+ "pear/versioncontrol_svn": "A simple OO-style interface for Subversion, the free/open-source version control system",
+ "phpdocumentor/phpdocumentor": "Documentation Generator for PHP",
+ "phploc/phploc": "A tool for quickly measuring the size of a PHP project",
+ "phpmd/phpmd": "PHP version of PMD tool",
+ "phpunit/php-code-coverage": "Library that provides collection, processing, and rendering functionality for PHP code coverage information",
+ "phpunit/phpunit": "The PHP Unit Testing Framework",
+ "sebastian/phpcpd": "Copy/Paste Detector (CPD) for PHP code",
+ "siad007/versioncontrol_hg": "A library for interfacing with Mercurial repositories.",
+ "tedivm/jshrink": "Javascript Minifier built in PHP"
+ },
+ "bin": [
+ "bin/phing"
+ ],
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.16.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "classes/phing/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "include-path": [
+ "classes"
+ ],
+ "license": [
+ "LGPL-3.0-only"
+ ],
+ "authors": [
+ {
+ "name": "Michiel Rook",
+ "email": "mrook@php.net"
+ },
+ {
+ "name": "Phing Community",
+ "homepage": "https://www.phing.info/trac/wiki/Development/Contributors"
+ }
+ ],
+ "description": "PHing Is Not GNU make; it's a PHP project build system or build tool based on Apache Ant.",
+ "homepage": "https://www.phing.info/",
+ "keywords": [
+ "build",
+ "phing",
+ "task",
+ "tool"
+ ],
+ "support": {
+ "irc": "irc://irc.freenode.net/phing",
+ "issues": "https://www.phing.info/trac/report",
+ "source": "https://github.com/phingofficial/phing/tree/2.17.4"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/mrook",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/siad007",
+ "type": "github"
+ },
+ {
+ "url": "https://www.patreon.com/michielrook",
+ "type": "patreon"
+ }
+ ],
+ "time": "2022-07-08T09:07:07+00:00"
+ },
{
"name": "phpunit/php-code-coverage",
"version": "11.0.5",
@@ -11507,16 +11619,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "11.2.8",
+ "version": "11.3.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "a7a29e8d3113806f18f99d670f580a30e8ffff39"
+ "reference": "a8dce73a8938dfec7ac0daa91bdbcaae7d7188a3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a7a29e8d3113806f18f99d670f580a30e8ffff39",
- "reference": "a7a29e8d3113806f18f99d670f580a30e8ffff39",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a8dce73a8938dfec7ac0daa91bdbcaae7d7188a3",
+ "reference": "a8dce73a8938dfec7ac0daa91bdbcaae7d7188a3",
"shasum": ""
},
"require": {
@@ -11555,7 +11667,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "11.2-dev"
+ "dev-main": "11.3-dev"
}
},
"autoload": {
@@ -11587,7 +11699,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/11.2.8"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/11.3.0"
},
"funding": [
{
@@ -11603,7 +11715,7 @@
"type": "tidelift"
}
],
- "time": "2024-07-18T14:56:37+00:00"
+ "time": "2024-08-02T03:56:43+00:00"
},
{
"name": "sebastian/cli-parser",
diff --git a/phpunit.xml b/phpunit.xml
index 2d9fa2676..f897a9c62 100644
--- a/phpunit.xml
+++ b/phpunit.xml
@@ -15,7 +15,7 @@
./app
-
+ #
./tests/Feature
diff --git a/resources/assets/components/partials/profile/ProfileSidebar.vue b/resources/assets/components/partials/profile/ProfileSidebar.vue
index 7f263aec1..4eabb2e62 100644
--- a/resources/assets/components/partials/profile/ProfileSidebar.vue
+++ b/resources/assets/components/partials/profile/ProfileSidebar.vue
@@ -124,14 +124,14 @@
class="btn btn-link stat-item"
@click="toggleTab('followers')">
{{ formatCount(profile.followers_count) }}
- {{ $t('profile.followers') }}
+ {{ $tc('profile.relationship.followerCount', profile.followers_count) }}
@@ -141,9 +141,9 @@
- {{ $t('profile.editProfile') }}
+ {{ $t('profile.actions.editProfile') }}
My Portfolio
NEW
diff --git a/resources/lang/af/web.php b/resources/lang/af/web.php
index 3844f847a..a027ca691 100644
--- a/resources/lang/af/web.php
+++ b/resources/lang/af/web.php
@@ -13,6 +13,7 @@ return [
'shared' => 'Shared',
'shares' => 'Shares',
'unshare' => 'Unshare',
+ 'bookmark' => 'Bookmark',
'cancel' => 'Cancel',
'copyLink' => 'Copy Link',
@@ -23,12 +24,20 @@ return [
'other' => 'Other',
'readMore' => 'Read more',
'success' => 'Success',
+ 'proceed' => 'Proceed',
+ 'next' => 'Next',
+ 'close' => 'Close',
+ 'clickHere' => 'click here',
'sensitive' => 'Sensitive',
'sensitiveContent' => 'Sensitive Content',
'sensitiveContentWarning' => 'This post may contain sensitive content',
],
+ 'login' => [
+ 'header' => 'Account Login'
+ ],
+
'site' => [
'terms' => 'Terms of Use',
'privacy' => 'Privacy Policy',
@@ -49,12 +58,15 @@ return [
'notifications' => 'Notifications',
'groups' => 'Groups',
'stories' => 'Stories',
+ 'uiSettings' => 'UI Settings',
// Self links
'profile' => 'Profile',
'drive' => 'Drive',
'settings' => 'Settings',
- 'compose' => 'Create New',
+ 'compose' => 'Create New Post',
+ 'login' => 'Login',
+ 'register' => 'Register',
'logout' => 'Logout',
// Nav footer
@@ -63,11 +75,89 @@ return [
'language' => 'Language',
'privacy' => 'Privacy',
'terms' => 'Terms',
+ 'poweredByPixelfed' => 'Powered by Pixelfed',
// Temporary links
'backToPreviousDesign' => 'Go back to previous design'
],
+ 'landing' => [
+ 'auth' => [
+ 'login' => 'Login',
+ 'signup' => 'Signup',
+ ],
+ 'navmenu' => [
+ 'about' => 'About',
+ 'directory' => 'Directory',
+ 'explore' => 'Explore',
+ ],
+ 'serverbanner' => [
+ 'alt' => 'Server banner images',
+ ],
+ 'about' => [
+ 'header' => 'Decentralized photo sharing social media powered by {pixelfedLink}',
+ 'stats' => [
+ 'posts' => 'Posts',
+ 'activeUsers' => 'Active Users',
+ 'totalUsers' => 'Total Users',
+ ],
+ 'details' => [
+ 'about' => 'About',
+ 'serverRules' => 'Server Rules',
+ 'supportedFeatures' => 'Supported Features'
+ ],
+ 'features' => [
+ 'photoPosts' => 'Photo Posts',
+ 'photoAlbums' => 'Photo Albums',
+ 'photoFilters' => 'Photo Filters',
+ 'collections' => 'Collections',
+ 'comments' => 'Comments',
+ 'hashtags' => 'Hashtags',
+ 'likes' => 'Likes',
+ 'notifications' => 'Notifications',
+ 'shares' => 'Shares',
+ 'federation' => 'Federation',
+ 'mobileAppSupport' => 'Mobile App Support',
+ 'stories' => 'Stories',
+ 'videos' => 'Videos'
+ ],
+ ],
+ 'discover' => [
+ 'tagline' => 'Discover accounts and people',
+ 'empty' => 'Nothing to show yet! Check back later.',
+ ],
+ 'explore' => [
+ 'tagline' => 'Explore trending posts',
+ ],
+ 'notfound' => [
+ 'header' => '404 - Not Found',
+ 'description' => 'The page you are looking for does not exist',
+ 'goback' => 'Go back home'
+ ],
+ 'footer' => [
+ 'help' => 'Help',
+ 'terms' => 'Terms',
+ 'privacy' => 'Privacy',
+ 'mobileApps' => 'Applications mobiles',
+ 'poweredByPixelfed' => 'Powered by Pixelfed'
+ ]
+ ],
+
+ 'uiSettings' => [
+ 'title' => 'UI Settings',
+ 'theme' => 'Theme',
+ 'themeAutoMode' => 'Auto',
+ 'themeDarkMode' => 'Dark',
+ 'themeLightMode' => 'Light',
+ 'profileLayout' => 'Profile Layout',
+ 'layoutGrid' => 'Grid',
+ 'layoutMasonry' => 'Masonry',
+ 'layoutFeed' => 'Feed',
+ 'compactMediaPreviews' => 'Compact Media Previews',
+ 'loadComments' => 'Load Comments',
+ 'hideCountsStats' => 'Hide Counts & Stats'
+ ],
+
'directMessages' => [
'inbox' => 'Inbox',
'sent' => 'Sent',
@@ -97,6 +187,7 @@ return [
'modlog' => 'modlog',
'post' => 'post',
'story' => 'story',
+ 'noneFound' => 'No notifications found',
],
'post' => [
@@ -107,17 +198,22 @@ return [
],
'profile' => [
+ 'actions' => [
+ 'requestFollow' => 'Follow',
+ 'unfollow' => 'Unfollow',
+ 'editProfile' => 'Edit Profile',
+ ],
+ 'relationship' => [
+ 'followerCount' => 'Follower | Followers',
+ 'followingCount' => 'Following',
+ 'following' => 'Following',
+ 'followRequested' => 'Follow Requested',
+ 'followsYou' => 'Follows You'
+ ],
'posts' => 'Posts',
- 'followers' => 'Followers',
- 'following' => 'Following',
'admin' => 'Admin',
'collections' => 'Collections',
- 'follow' => 'Follow',
- 'unfollow' => 'Unfollow',
- 'editProfile' => 'Edit Profile',
- 'followRequested' => 'Follow Requested',
'joined' => 'Joined',
-
'emptyCollections' => 'We can\'t seem to find any collections',
'emptyPosts' => 'We can\'t seem to find any posts',
],
@@ -176,11 +272,38 @@ return [
],
'timeline' => [
- 'peopleYouMayKnow' => 'People you may know'
+ 'peopleYouMayKnow' => 'People you may know',
+
+ 'onboarding' => [
+ 'welcome' => 'Welcome',
+ 'thisIsYourHomeFeed' => 'This is your home feed, a chronological feed of posts from accounts you follow.',
+ 'letUsHelpYouFind' => 'Let us help you find some interesting people to follow',
+ 'refreshFeed' => 'Refresh my feed',
+ ],
],
'hashtags' => [
'emptyFeed' => 'We can\'t seem to find any posts for this hashtag'
],
+ 'report' => [
+ 'report' => 'Report',
+ 'selectReason' => 'Select a reason',
+ 'reported' => 'Reported',
+ 'sendingReport' => 'Sending report',
+ 'thanksMsg' => 'Thanks for the report, people like you help keep our community safe!',
+ 'contactAdminMsg' => 'If you\'d like to contact an administrator about this post or report',
+ ],
+
+ 'sidebar' => [
+ 'followingCount' => 'Following',
+ 'followersCount' => 'Followers',
+ 'compose' => 'Compose New Post',
+
+ 'createdrop' => [
+ 'collection' => 'Create Collection',
+ 'story' => 'Create Story',
+ 'accountSettings' => 'Account Settings',
+ ],
+ ],
];
diff --git a/resources/lang/ar/web.php b/resources/lang/ar/web.php
index 416d56e53..090efdcd7 100644
--- a/resources/lang/ar/web.php
+++ b/resources/lang/ar/web.php
@@ -13,6 +13,7 @@ return [
'shared' => 'تمَّ مُشارَكَتُه',
'shares' => 'مُشارَكَات',
'unshare' => 'إلغاء المُشارَكَة',
+ 'bookmark' => 'Bookmark',
'cancel' => 'إلغاء',
'copyLink' => 'نَسخ الرابِط',
diff --git a/resources/lang/bn/web.php b/resources/lang/bn/web.php
index 3844f847a..a027ca691 100644
--- a/resources/lang/bn/web.php
+++ b/resources/lang/bn/web.php
@@ -13,6 +13,7 @@ return [
'shared' => 'Shared',
'shares' => 'Shares',
'unshare' => 'Unshare',
+ 'bookmark' => 'Bookmark',
'cancel' => 'Cancel',
'copyLink' => 'Copy Link',
@@ -23,12 +24,20 @@ return [
'other' => 'Other',
'readMore' => 'Read more',
'success' => 'Success',
+ 'proceed' => 'Proceed',
+ 'next' => 'Next',
+ 'close' => 'Close',
+ 'clickHere' => 'click here',
'sensitive' => 'Sensitive',
'sensitiveContent' => 'Sensitive Content',
'sensitiveContentWarning' => 'This post may contain sensitive content',
],
+ 'login' => [
+ 'header' => 'Account Login'
+ ],
+
'site' => [
'terms' => 'Terms of Use',
'privacy' => 'Privacy Policy',
@@ -49,12 +58,15 @@ return [
'notifications' => 'Notifications',
'groups' => 'Groups',
'stories' => 'Stories',
+ 'uiSettings' => 'UI Settings',
// Self links
'profile' => 'Profile',
'drive' => 'Drive',
'settings' => 'Settings',
- 'compose' => 'Create New',
+ 'compose' => 'Create New Post',
+ 'login' => 'Login',
+ 'register' => 'Register',
'logout' => 'Logout',
// Nav footer
@@ -63,11 +75,89 @@ return [
'language' => 'Language',
'privacy' => 'Privacy',
'terms' => 'Terms',
+ 'poweredByPixelfed' => 'Powered by Pixelfed',
// Temporary links
'backToPreviousDesign' => 'Go back to previous design'
],
+ 'landing' => [
+ 'auth' => [
+ 'login' => 'Login',
+ 'signup' => 'Signup',
+ ],
+ 'navmenu' => [
+ 'about' => 'About',
+ 'directory' => 'Directory',
+ 'explore' => 'Explore',
+ ],
+ 'serverbanner' => [
+ 'alt' => 'Server banner images',
+ ],
+ 'about' => [
+ 'header' => 'Decentralized photo sharing social media powered by {pixelfedLink}',
+ 'stats' => [
+ 'posts' => 'Posts',
+ 'activeUsers' => 'Active Users',
+ 'totalUsers' => 'Total Users',
+ ],
+ 'details' => [
+ 'about' => 'About',
+ 'serverRules' => 'Server Rules',
+ 'supportedFeatures' => 'Supported Features'
+ ],
+ 'features' => [
+ 'photoPosts' => 'Photo Posts',
+ 'photoAlbums' => 'Photo Albums',
+ 'photoFilters' => 'Photo Filters',
+ 'collections' => 'Collections',
+ 'comments' => 'Comments',
+ 'hashtags' => 'Hashtags',
+ 'likes' => 'Likes',
+ 'notifications' => 'Notifications',
+ 'shares' => 'Shares',
+ 'federation' => 'Federation',
+ 'mobileAppSupport' => 'Mobile App Support',
+ 'stories' => 'Stories',
+ 'videos' => 'Videos'
+ ],
+ ],
+ 'discover' => [
+ 'tagline' => 'Discover accounts and people',
+ 'empty' => 'Nothing to show yet! Check back later.',
+ ],
+ 'explore' => [
+ 'tagline' => 'Explore trending posts',
+ ],
+ 'notfound' => [
+ 'header' => '404 - Not Found',
+ 'description' => 'The page you are looking for does not exist',
+ 'goback' => 'Go back home'
+ ],
+ 'footer' => [
+ 'help' => 'Help',
+ 'terms' => 'Terms',
+ 'privacy' => 'Privacy',
+ 'mobileApps' => 'Applications mobiles',
+ 'poweredByPixelfed' => 'Powered by Pixelfed'
+ ]
+ ],
+
+ 'uiSettings' => [
+ 'title' => 'UI Settings',
+ 'theme' => 'Theme',
+ 'themeAutoMode' => 'Auto',
+ 'themeDarkMode' => 'Dark',
+ 'themeLightMode' => 'Light',
+ 'profileLayout' => 'Profile Layout',
+ 'layoutGrid' => 'Grid',
+ 'layoutMasonry' => 'Masonry',
+ 'layoutFeed' => 'Feed',
+ 'compactMediaPreviews' => 'Compact Media Previews',
+ 'loadComments' => 'Load Comments',
+ 'hideCountsStats' => 'Hide Counts & Stats'
+ ],
+
'directMessages' => [
'inbox' => 'Inbox',
'sent' => 'Sent',
@@ -97,6 +187,7 @@ return [
'modlog' => 'modlog',
'post' => 'post',
'story' => 'story',
+ 'noneFound' => 'No notifications found',
],
'post' => [
@@ -107,17 +198,22 @@ return [
],
'profile' => [
+ 'actions' => [
+ 'requestFollow' => 'Follow',
+ 'unfollow' => 'Unfollow',
+ 'editProfile' => 'Edit Profile',
+ ],
+ 'relationship' => [
+ 'followerCount' => 'Follower | Followers',
+ 'followingCount' => 'Following',
+ 'following' => 'Following',
+ 'followRequested' => 'Follow Requested',
+ 'followsYou' => 'Follows You'
+ ],
'posts' => 'Posts',
- 'followers' => 'Followers',
- 'following' => 'Following',
'admin' => 'Admin',
'collections' => 'Collections',
- 'follow' => 'Follow',
- 'unfollow' => 'Unfollow',
- 'editProfile' => 'Edit Profile',
- 'followRequested' => 'Follow Requested',
'joined' => 'Joined',
-
'emptyCollections' => 'We can\'t seem to find any collections',
'emptyPosts' => 'We can\'t seem to find any posts',
],
@@ -176,11 +272,38 @@ return [
],
'timeline' => [
- 'peopleYouMayKnow' => 'People you may know'
+ 'peopleYouMayKnow' => 'People you may know',
+
+ 'onboarding' => [
+ 'welcome' => 'Welcome',
+ 'thisIsYourHomeFeed' => 'This is your home feed, a chronological feed of posts from accounts you follow.',
+ 'letUsHelpYouFind' => 'Let us help you find some interesting people to follow',
+ 'refreshFeed' => 'Refresh my feed',
+ ],
],
'hashtags' => [
'emptyFeed' => 'We can\'t seem to find any posts for this hashtag'
],
+ 'report' => [
+ 'report' => 'Report',
+ 'selectReason' => 'Select a reason',
+ 'reported' => 'Reported',
+ 'sendingReport' => 'Sending report',
+ 'thanksMsg' => 'Thanks for the report, people like you help keep our community safe!',
+ 'contactAdminMsg' => 'If you\'d like to contact an administrator about this post or report',
+ ],
+
+ 'sidebar' => [
+ 'followingCount' => 'Following',
+ 'followersCount' => 'Followers',
+ 'compose' => 'Compose New Post',
+
+ 'createdrop' => [
+ 'collection' => 'Create Collection',
+ 'story' => 'Create Story',
+ 'accountSettings' => 'Account Settings',
+ ],
+ ],
];
diff --git a/resources/lang/bs/web.php b/resources/lang/bs/web.php
index 3844f847a..a027ca691 100644
--- a/resources/lang/bs/web.php
+++ b/resources/lang/bs/web.php
@@ -13,6 +13,7 @@ return [
'shared' => 'Shared',
'shares' => 'Shares',
'unshare' => 'Unshare',
+ 'bookmark' => 'Bookmark',
'cancel' => 'Cancel',
'copyLink' => 'Copy Link',
@@ -23,12 +24,20 @@ return [
'other' => 'Other',
'readMore' => 'Read more',
'success' => 'Success',
+ 'proceed' => 'Proceed',
+ 'next' => 'Next',
+ 'close' => 'Close',
+ 'clickHere' => 'click here',
'sensitive' => 'Sensitive',
'sensitiveContent' => 'Sensitive Content',
'sensitiveContentWarning' => 'This post may contain sensitive content',
],
+ 'login' => [
+ 'header' => 'Account Login'
+ ],
+
'site' => [
'terms' => 'Terms of Use',
'privacy' => 'Privacy Policy',
@@ -49,12 +58,15 @@ return [
'notifications' => 'Notifications',
'groups' => 'Groups',
'stories' => 'Stories',
+ 'uiSettings' => 'UI Settings',
// Self links
'profile' => 'Profile',
'drive' => 'Drive',
'settings' => 'Settings',
- 'compose' => 'Create New',
+ 'compose' => 'Create New Post',
+ 'login' => 'Login',
+ 'register' => 'Register',
'logout' => 'Logout',
// Nav footer
@@ -63,11 +75,89 @@ return [
'language' => 'Language',
'privacy' => 'Privacy',
'terms' => 'Terms',
+ 'poweredByPixelfed' => 'Powered by Pixelfed',
// Temporary links
'backToPreviousDesign' => 'Go back to previous design'
],
+ 'landing' => [
+ 'auth' => [
+ 'login' => 'Login',
+ 'signup' => 'Signup',
+ ],
+ 'navmenu' => [
+ 'about' => 'About',
+ 'directory' => 'Directory',
+ 'explore' => 'Explore',
+ ],
+ 'serverbanner' => [
+ 'alt' => 'Server banner images',
+ ],
+ 'about' => [
+ 'header' => 'Decentralized photo sharing social media powered by {pixelfedLink}',
+ 'stats' => [
+ 'posts' => 'Posts',
+ 'activeUsers' => 'Active Users',
+ 'totalUsers' => 'Total Users',
+ ],
+ 'details' => [
+ 'about' => 'About',
+ 'serverRules' => 'Server Rules',
+ 'supportedFeatures' => 'Supported Features'
+ ],
+ 'features' => [
+ 'photoPosts' => 'Photo Posts',
+ 'photoAlbums' => 'Photo Albums',
+ 'photoFilters' => 'Photo Filters',
+ 'collections' => 'Collections',
+ 'comments' => 'Comments',
+ 'hashtags' => 'Hashtags',
+ 'likes' => 'Likes',
+ 'notifications' => 'Notifications',
+ 'shares' => 'Shares',
+ 'federation' => 'Federation',
+ 'mobileAppSupport' => 'Mobile App Support',
+ 'stories' => 'Stories',
+ 'videos' => 'Videos'
+ ],
+ ],
+ 'discover' => [
+ 'tagline' => 'Discover accounts and people',
+ 'empty' => 'Nothing to show yet! Check back later.',
+ ],
+ 'explore' => [
+ 'tagline' => 'Explore trending posts',
+ ],
+ 'notfound' => [
+ 'header' => '404 - Not Found',
+ 'description' => 'The page you are looking for does not exist',
+ 'goback' => 'Go back home'
+ ],
+ 'footer' => [
+ 'help' => 'Help',
+ 'terms' => 'Terms',
+ 'privacy' => 'Privacy',
+ 'mobileApps' => 'Applications mobiles',
+ 'poweredByPixelfed' => 'Powered by Pixelfed'
+ ]
+ ],
+
+ 'uiSettings' => [
+ 'title' => 'UI Settings',
+ 'theme' => 'Theme',
+ 'themeAutoMode' => 'Auto',
+ 'themeDarkMode' => 'Dark',
+ 'themeLightMode' => 'Light',
+ 'profileLayout' => 'Profile Layout',
+ 'layoutGrid' => 'Grid',
+ 'layoutMasonry' => 'Masonry',
+ 'layoutFeed' => 'Feed',
+ 'compactMediaPreviews' => 'Compact Media Previews',
+ 'loadComments' => 'Load Comments',
+ 'hideCountsStats' => 'Hide Counts & Stats'
+ ],
+
'directMessages' => [
'inbox' => 'Inbox',
'sent' => 'Sent',
@@ -97,6 +187,7 @@ return [
'modlog' => 'modlog',
'post' => 'post',
'story' => 'story',
+ 'noneFound' => 'No notifications found',
],
'post' => [
@@ -107,17 +198,22 @@ return [
],
'profile' => [
+ 'actions' => [
+ 'requestFollow' => 'Follow',
+ 'unfollow' => 'Unfollow',
+ 'editProfile' => 'Edit Profile',
+ ],
+ 'relationship' => [
+ 'followerCount' => 'Follower | Followers',
+ 'followingCount' => 'Following',
+ 'following' => 'Following',
+ 'followRequested' => 'Follow Requested',
+ 'followsYou' => 'Follows You'
+ ],
'posts' => 'Posts',
- 'followers' => 'Followers',
- 'following' => 'Following',
'admin' => 'Admin',
'collections' => 'Collections',
- 'follow' => 'Follow',
- 'unfollow' => 'Unfollow',
- 'editProfile' => 'Edit Profile',
- 'followRequested' => 'Follow Requested',
'joined' => 'Joined',
-
'emptyCollections' => 'We can\'t seem to find any collections',
'emptyPosts' => 'We can\'t seem to find any posts',
],
@@ -176,11 +272,38 @@ return [
],
'timeline' => [
- 'peopleYouMayKnow' => 'People you may know'
+ 'peopleYouMayKnow' => 'People you may know',
+
+ 'onboarding' => [
+ 'welcome' => 'Welcome',
+ 'thisIsYourHomeFeed' => 'This is your home feed, a chronological feed of posts from accounts you follow.',
+ 'letUsHelpYouFind' => 'Let us help you find some interesting people to follow',
+ 'refreshFeed' => 'Refresh my feed',
+ ],
],
'hashtags' => [
'emptyFeed' => 'We can\'t seem to find any posts for this hashtag'
],
+ 'report' => [
+ 'report' => 'Report',
+ 'selectReason' => 'Select a reason',
+ 'reported' => 'Reported',
+ 'sendingReport' => 'Sending report',
+ 'thanksMsg' => 'Thanks for the report, people like you help keep our community safe!',
+ 'contactAdminMsg' => 'If you\'d like to contact an administrator about this post or report',
+ ],
+
+ 'sidebar' => [
+ 'followingCount' => 'Following',
+ 'followersCount' => 'Followers',
+ 'compose' => 'Compose New Post',
+
+ 'createdrop' => [
+ 'collection' => 'Create Collection',
+ 'story' => 'Create Story',
+ 'accountSettings' => 'Account Settings',
+ ],
+ ],
];
diff --git a/resources/lang/fr_CA/web.php b/resources/lang/fr_CA/web.php
index 451d60b78..cd87f1214 100644
--- a/resources/lang/fr_CA/web.php
+++ b/resources/lang/fr_CA/web.php
@@ -200,7 +200,7 @@ return [
'editProfile' => 'Modifier mon profil',
],
'relationship' => [
- 'followersCount' => 'Abonné·e | Abonné·e·s',
+ 'followerCount' => 'Abonné·e | Abonné·e·s',
'followingCount' => 'Abonnement | Abonnements',
'following' => 'Abonné',
'followRequested' => 'Abonnement demandé',