diff options
| author | Pitu <[email protected]> | 2020-12-28 00:10:59 +0900 |
|---|---|---|
| committer | Pitu <[email protected]> | 2020-12-28 00:10:59 +0900 |
| commit | edb3bed98864e34695a5ae0093c414a2b578073a (patch) | |
| tree | c014e52bfc5f24f1f773d51f9306a7138ebdfd8e /src/site/components/album/AlbumDetails.vue | |
| parent | fix: mobile styling (diff) | |
| download | host.fuwn.me-edb3bed98864e34695a5ae0093c414a2b578073a.tar.xz host.fuwn.me-edb3bed98864e34695a5ae0093c414a2b578073a.zip | |
feat: Add warning to nsfw albums
Diffstat (limited to 'src/site/components/album/AlbumDetails.vue')
| -rw-r--r-- | src/site/components/album/AlbumDetails.vue | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/src/site/components/album/AlbumDetails.vue b/src/site/components/album/AlbumDetails.vue index ef07670..10925df 100644 --- a/src/site/components/album/AlbumDetails.vue +++ b/src/site/components/album/AlbumDetails.vue @@ -99,6 +99,13 @@ <div class="level-right"> <div class="level-item"> + <b-switch + v-model="isNsfw" + :false-value="0" + :true-value="1" + @input="toggleNsfw()" /> + </div> + <div class="level-item"> <button class="button is-danger" style="float: right" @@ -133,7 +140,15 @@ export default { isDeletingLinks: [] }; }, - computed: mapState(['config', 'auth']), + computed: { + ...mapState(['config', 'auth']), + isNsfw() { + return this.$store.state.albums.list.find(a => a.id === this.albumId).nsfw; + } + }, + mounted() { + console.log(this.isNsfw); + }, methods: { ...mapActions({ deleteAlbumAction: 'albums/deleteAlbum', @@ -141,6 +156,7 @@ export default { updateLinkOptionsAction: 'albums/updateLinkOptions', createLinkAction: 'albums/createLink', createCustomLinkAction: 'albums/createCustomLink', + toggleNsfw: 'albums/toggleNsfw', alert: 'alert/set' }), promptDeleteAlbum(id) { @@ -199,6 +215,17 @@ export default { this.alert({ text: e.message, error: true }); } }, + async toggleNsfw() { + try { + const response = await this.toggleNsfw({ + albumId: this.albumId, + nsfw: !this.isNsfw + }); + this.alert({ text: response.message, error: false }); + } catch (e) { + this.alert({ text: e.message, error: true }); + } + }, async createCustomLink(albumId) { this.$buefy.dialog.prompt({ message: 'Custom link identifier', |