diff --git a/src/components/attachment/attachment.js b/src/components/attachment/attachment.js
index 57d21b28..f4f6aebf 100644
--- a/src/components/attachment/attachment.js
+++ b/src/components/attachment/attachment.js
@@ -7,16 +7,19 @@ const Attachment = {
'nsfw',
'statusId'
],
- data: () => ({
- nsfwImage,
- showHidden: false
- }),
+ data () {
+ return {
+ nsfwImage,
+ hideNsfwLocal: this.$store.state.config.hideNsfw,
+ showHidden: false
+ }
+ },
computed: {
type () {
return fileTypeService.fileType(this.attachment.mimetype)
},
hidden () {
- return this.nsfw && !this.showHidden
+ return this.nsfw && this.hideNsfwLocal && !this.showHidden
}
},
methods: {
diff --git a/src/components/attachment/attachment.vue b/src/components/attachment/attachment.vue
index e0eba6a9..45cc1929 100644
--- a/src/components/attachment/attachment.vue
+++ b/src/components/attachment/attachment.vue
@@ -3,7 +3,7 @@
-
+
diff --git a/src/components/settings/settings.js b/src/components/settings/settings.js
index 61236af2..c1b88f82 100644
--- a/src/components/settings/settings.js
+++ b/src/components/settings/settings.js
@@ -3,7 +3,8 @@ import StyleSwitcher from '../style_switcher/style_switcher.vue'
const settings = {
data () {
return {
- hideAttachmentsLocal: this.$store.state.config.hideAttachments
+ hideAttachmentsLocal: this.$store.state.config.hideAttachments,
+ hideNsfwLocal: this.$store.state.config.hideNsfw
}
},
components: {
@@ -12,6 +13,9 @@ const settings = {
watch: {
hideAttachmentsLocal (value) {
this.$store.dispatch('setOption', { name: 'hideAttachments', value })
+ },
+ hideNsfwLocal (value) {
+ this.$store.dispatch('setOption', { name: 'hideNsfw', value })
}
}
}
diff --git a/src/components/settings/settings.vue b/src/components/settings/settings.vue
index f2f83953..89b89a39 100644
--- a/src/components/settings/settings.vue
+++ b/src/components/settings/settings.vue
@@ -12,6 +12,8 @@
Attachments
+
+
diff --git a/src/main.js b/src/main.js
index 51d281fa..81534cae 100644
--- a/src/main.js
+++ b/src/main.js
@@ -29,7 +29,10 @@ Vue.use(VueTimeago, {
})
const persistedStateOptions = {
- paths: ['users.users', 'statuses.notifications', 'config.hideAttachments']
+ paths: ['config.hideAttachments',
+ 'config.hideNsfw',
+ 'statuses.notifications',
+ 'users.users']
}
const store = new Vuex.Store({
diff --git a/src/modules/config.js b/src/modules/config.js
index 25de98ea..896a6978 100644
--- a/src/modules/config.js
+++ b/src/modules/config.js
@@ -4,7 +4,8 @@ import StyleSetter from '../services/style_setter/style_setter.js'
const defaultState = {
name: 'Pleroma FE',
colors: {},
- hideAttachments: false
+ hideAttachments: false,
+ hideNsfw: true
}
const config = {