From aafb29c58978cbd8dbea2898b93bdab9979b5646 Mon Sep 17 00:00:00 2001
From: eugenijm
Date: Fri, 13 Sep 2019 16:15:19 +0300
Subject: [PATCH 01/17] Added a setting to hide follow/follower count from the
user profile
---
src/components/user_settings/user_settings.js | 4 ++++
.../user_settings/user_settings.vue | 22 +++++++++++++++++++
src/i18n/en.json | 2 ++
src/i18n/ru.json | 2 ++
.../entity_normalizer.service.js | 4 ++++
.../entity_normalizer.spec.js | 4 +++-
6 files changed, 37 insertions(+), 1 deletion(-)
diff --git a/src/components/user_settings/user_settings.js b/src/components/user_settings/user_settings.js
index b5a7f0df..108c82d2 100644
--- a/src/components/user_settings/user_settings.js
+++ b/src/components/user_settings/user_settings.js
@@ -41,6 +41,8 @@ const UserSettings = {
newDefaultScope: this.$store.state.users.currentUser.default_scope,
hideFollows: this.$store.state.users.currentUser.hide_follows,
hideFollowers: this.$store.state.users.currentUser.hide_followers,
+ hideFollowsCount: this.$store.state.users.currentUser.hide_follows_count,
+ hideFollowersCount: this.$store.state.users.currentUser.hide_followers_count,
showRole: this.$store.state.users.currentUser.show_role,
role: this.$store.state.users.currentUser.role,
pickAvatarBtnVisible: true,
@@ -142,6 +144,8 @@ const UserSettings = {
no_rich_text: this.newNoRichText,
hide_follows: this.hideFollows,
hide_followers: this.hideFollowers,
+ hide_follows_count: this.hideFollowsCount,
+ hide_followers_count: this.hideFollowersCount,
show_role: this.showRole
/* eslint-enable camelcase */
} }).then((user) => {
diff --git a/src/components/user_settings/user_settings.vue b/src/components/user_settings/user_settings.vue
index 34ea8569..e78f6e7c 100644
--- a/src/components/user_settings/user_settings.vue
+++ b/src/components/user_settings/user_settings.vue
@@ -88,6 +88,15 @@
>
+
+
+
+
+
+
+
+
diff --git a/src/i18n/en.json b/src/i18n/en.json
index ddde471a..a63ee21d 100644
--- a/src/i18n/en.json
+++ b/src/i18n/en.json
@@ -277,6 +277,8 @@
"no_mutes": "No mutes",
"hide_follows_description": "Don't show who I'm following",
"hide_followers_description": "Don't show who's following me",
+ "hide_follows_count_description": "Don't show follow count",
+ "hide_followers_count_description": "Don't show follower count",
"show_admin_badge": "Show Admin badge in my profile",
"show_moderator_badge": "Show Moderator badge in my profile",
"nsfw_clickthrough": "Enable clickthrough NSFW attachment hiding",
diff --git a/src/i18n/ru.json b/src/i18n/ru.json
index 3af65f40..16268425 100644
--- a/src/i18n/ru.json
+++ b/src/i18n/ru.json
@@ -178,6 +178,8 @@
"no_rich_text_description": "Убрать форматирование из всех постов",
"hide_follows_description": "Не показывать кого я читаю",
"hide_followers_description": "Не показывать кто читает меня",
+ "hide_follows_count_description": "Не показывать число читаемых пользователей",
+ "hide_followers_count_description": "Не показывать число моих подписчиков",
"show_admin_badge": "Показывать значок администратора в моем профиле",
"show_moderator_badge": "Показывать значок модератора в моем профиле",
"nsfw_clickthrough": "Включить скрытие NSFW вложений",
diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js
index 7438cd90..b6309336 100644
--- a/src/services/entity_normalizer/entity_normalizer.service.js
+++ b/src/services/entity_normalizer/entity_normalizer.service.js
@@ -74,6 +74,8 @@ export const parseUser = (data) => {
output.hide_follows = data.pleroma.hide_follows
output.hide_followers = data.pleroma.hide_followers
+ output.hide_follows_count = data.pleroma.hide_follows_count
+ output.hide_followers_count = data.pleroma.hide_followers_count
output.rights = {
moderator: data.pleroma.is_moderator,
@@ -140,6 +142,8 @@ export const parseUser = (data) => {
output.default_scope = data.default_scope
output.hide_follows = data.hide_follows
output.hide_followers = data.hide_followers
+ output.hide_follows_count = data.hide_follows_count
+ output.hide_followers_count = data.hide_followers_count
output.background_image = data.background_image
// on mastoapi this info is contained in a "relationship"
output.following = data.following
diff --git a/test/unit/specs/services/entity_normalizer/entity_normalizer.spec.js b/test/unit/specs/services/entity_normalizer/entity_normalizer.spec.js
index 20e03cb0..736b842c 100644
--- a/test/unit/specs/services/entity_normalizer/entity_normalizer.spec.js
+++ b/test/unit/specs/services/entity_normalizer/entity_normalizer.spec.js
@@ -278,10 +278,12 @@ describe('API Entities normalizer', () => {
})
it('adds hide_follows and hide_followers user settings', () => {
- const user = makeMockUserMasto({ pleroma: { hide_followers: true, hide_follows: false } })
+ const user = makeMockUserMasto({ pleroma: { hide_followers: true, hide_follows: false, hide_followers_count: false, hide_follows_count: true } })
expect(parseUser(user)).to.have.property('hide_followers', true)
expect(parseUser(user)).to.have.property('hide_follows', false)
+ expect(parseUser(user)).to.have.property('hide_followers_count', false)
+ expect(parseUser(user)).to.have.property('hide_follows_count', true)
})
})
From 194dd881183a301538033da2d91b76dcf7358565 Mon Sep 17 00:00:00 2001
From: Hakaba Hitoyo
Date: Thu, 26 Sep 2019 22:31:28 +0000
Subject: [PATCH 02/17] Feature/Add _Allow user discovery services_ preference
---
src/components/user_settings/user_settings.js | 2 ++
src/components/user_settings/user_settings.vue | 8 ++++++++
src/i18n/en.json | 1 +
src/i18n/ja.json | 1 +
src/i18n/ja_pedantic.json | 1 +
.../entity_normalizer/entity_normalizer.service.js | 1 +
6 files changed, 14 insertions(+)
diff --git a/src/components/user_settings/user_settings.js b/src/components/user_settings/user_settings.js
index 21b01476..f12cccae 100644
--- a/src/components/user_settings/user_settings.js
+++ b/src/components/user_settings/user_settings.js
@@ -45,6 +45,7 @@ const UserSettings = {
hideFollowersCount: this.$store.state.users.currentUser.hide_followers_count,
showRole: this.$store.state.users.currentUser.show_role,
role: this.$store.state.users.currentUser.role,
+ discoverable: this.$store.state.users.currentUser.discoverable,
pickAvatarBtnVisible: true,
bannerUploading: false,
backgroundUploading: false,
@@ -144,6 +145,7 @@ const UserSettings = {
no_rich_text: this.newNoRichText,
hide_follows: this.hideFollows,
hide_followers: this.hideFollowers,
+ discoverable: this.discoverable,
hide_follows_count: this.hideFollowsCount,
hide_followers_count: this.hideFollowersCount,
show_role: this.showRole
diff --git a/src/components/user_settings/user_settings.vue b/src/components/user_settings/user_settings.vue
index a84e6f5c..ef75ac52 100644
--- a/src/components/user_settings/user_settings.vue
+++ b/src/components/user_settings/user_settings.vue
@@ -131,6 +131,14 @@
for="account-show-role"
>{{ $t('settings.show_moderator_badge') }}
+
+
+
+