Merge branch 'feat/max-attachments-configurable' into 'develop'
Fix #399 Make max attachments configurable Closes #399 See merge request pleroma/pleroma-fe!618
This commit is contained in:
commit
058238c3c6
6 changed files with 21 additions and 3 deletions
|
@ -12,6 +12,7 @@ const settings = {
|
||||||
return {
|
return {
|
||||||
hideAttachmentsLocal: user.hideAttachments,
|
hideAttachmentsLocal: user.hideAttachments,
|
||||||
hideAttachmentsInConvLocal: user.hideAttachmentsInConv,
|
hideAttachmentsInConvLocal: user.hideAttachmentsInConv,
|
||||||
|
maxThumbnails: user.maxThumbnails,
|
||||||
hideNsfwLocal: user.hideNsfw,
|
hideNsfwLocal: user.hideNsfw,
|
||||||
useOneClickNsfw: user.useOneClickNsfw,
|
useOneClickNsfw: user.useOneClickNsfw,
|
||||||
hideISPLocal: user.hideISP,
|
hideISPLocal: user.hideISP,
|
||||||
|
@ -186,6 +187,10 @@ const settings = {
|
||||||
},
|
},
|
||||||
useContainFit (value) {
|
useContainFit (value) {
|
||||||
this.$store.dispatch('setOption', { name: 'useContainFit', value })
|
this.$store.dispatch('setOption', { name: 'useContainFit', value })
|
||||||
|
},
|
||||||
|
maxThumbnails (value) {
|
||||||
|
value = this.maxThumbnails = Math.floor(Math.max(value, 0))
|
||||||
|
this.$store.dispatch('setOption', { name: 'maxThumbnails', value })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -136,6 +136,10 @@
|
||||||
<input type="checkbox" id="hideAttachmentsInConv" v-model="hideAttachmentsInConvLocal">
|
<input type="checkbox" id="hideAttachmentsInConv" v-model="hideAttachmentsInConvLocal">
|
||||||
<label for="hideAttachmentsInConv">{{$t('settings.hide_attachments_in_convo')}}</label>
|
<label for="hideAttachmentsInConv">{{$t('settings.hide_attachments_in_convo')}}</label>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="maxThumbnails">{{$t('settings.max_thumbnails')}}</label>
|
||||||
|
<input class="number-input" type="number" id="maxThumbnails" v-model.number="maxThumbnails" min="0" step="1">
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<input type="checkbox" id="hideNsfw" v-model="hideNsfwLocal">
|
<input type="checkbox" id="hideNsfw" v-model="hideNsfwLocal">
|
||||||
<label for="hideNsfw">{{$t('settings.nsfw_clickthrough')}}</label>
|
<label for="hideNsfw">{{$t('settings.nsfw_clickthrough')}}</label>
|
||||||
|
@ -316,6 +320,10 @@
|
||||||
min-width: 10em;
|
min-width: 10em;
|
||||||
padding: 0 2em;
|
padding: 0 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.number-input {
|
||||||
|
max-width: 6em;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.select-multiple {
|
.select-multiple {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
|
@ -40,8 +40,7 @@ const Status = {
|
||||||
expandingSubject: typeof this.$store.state.config.collapseMessageWithSubject === 'undefined'
|
expandingSubject: typeof this.$store.state.config.collapseMessageWithSubject === 'undefined'
|
||||||
? !this.$store.state.instance.collapseMessageWithSubject
|
? !this.$store.state.instance.collapseMessageWithSubject
|
||||||
: !this.$store.state.config.collapseMessageWithSubject,
|
: !this.$store.state.config.collapseMessageWithSubject,
|
||||||
betterShadow: this.$store.state.interface.browserSupport.cssFilter,
|
betterShadow: this.$store.state.interface.browserSupport.cssFilter
|
||||||
maxAttachments: 9
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -225,7 +224,7 @@ const Status = {
|
||||||
attachmentSize () {
|
attachmentSize () {
|
||||||
if ((this.$store.state.config.hideAttachments && !this.inConversation) ||
|
if ((this.$store.state.config.hideAttachments && !this.inConversation) ||
|
||||||
(this.$store.state.config.hideAttachmentsInConv && this.inConversation) ||
|
(this.$store.state.config.hideAttachmentsInConv && this.inConversation) ||
|
||||||
(this.status.attachments.length > this.maxAttachments)) {
|
(this.status.attachments.length > this.maxThumbnails)) {
|
||||||
return 'hide'
|
return 'hide'
|
||||||
} else if (this.compact) {
|
} else if (this.compact) {
|
||||||
return 'small'
|
return 'small'
|
||||||
|
@ -249,6 +248,9 @@ const Status = {
|
||||||
return this.status.attachments.filter(
|
return this.status.attachments.filter(
|
||||||
file => !fileType.fileMatchesSomeType(this.galleryTypes, file)
|
file => !fileType.fileMatchesSomeType(this.galleryTypes, file)
|
||||||
)
|
)
|
||||||
|
},
|
||||||
|
maxThumbnails () {
|
||||||
|
return this.$store.state.config.maxThumbnails
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
|
|
|
@ -149,6 +149,7 @@
|
||||||
"general": "General",
|
"general": "General",
|
||||||
"hide_attachments_in_convo": "Hide attachments in conversations",
|
"hide_attachments_in_convo": "Hide attachments in conversations",
|
||||||
"hide_attachments_in_tl": "Hide attachments in timeline",
|
"hide_attachments_in_tl": "Hide attachments in timeline",
|
||||||
|
"max_thumbnails": "Maximum amount of thumbnails per post",
|
||||||
"hide_isp": "Hide instance-specific panel",
|
"hide_isp": "Hide instance-specific panel",
|
||||||
"preload_images": "Preload images",
|
"preload_images": "Preload images",
|
||||||
"use_one_click_nsfw": "Open NSFW attachments with just one click",
|
"use_one_click_nsfw": "Open NSFW attachments with just one click",
|
||||||
|
|
|
@ -133,6 +133,7 @@
|
||||||
"general": "Yleinen",
|
"general": "Yleinen",
|
||||||
"hide_attachments_in_convo": "Piilota liitteet keskusteluissa",
|
"hide_attachments_in_convo": "Piilota liitteet keskusteluissa",
|
||||||
"hide_attachments_in_tl": "Piilota liitteet aikajanalla",
|
"hide_attachments_in_tl": "Piilota liitteet aikajanalla",
|
||||||
|
"max_thumbnails": "Suurin sallittu määrä liitteitä esikatselussa",
|
||||||
"hide_isp": "Piilota palvelimenkohtainen ruutu",
|
"hide_isp": "Piilota palvelimenkohtainen ruutu",
|
||||||
"preload_images": "Esilataa kuvat",
|
"preload_images": "Esilataa kuvat",
|
||||||
"use_one_click_nsfw": "Avaa NSFW-liitteet yhdellä painalluksella",
|
"use_one_click_nsfw": "Avaa NSFW-liitteet yhdellä painalluksella",
|
||||||
|
|
|
@ -8,6 +8,7 @@ const defaultState = {
|
||||||
collapseMessageWithSubject: undefined, // instance default
|
collapseMessageWithSubject: undefined, // instance default
|
||||||
hideAttachments: false,
|
hideAttachments: false,
|
||||||
hideAttachmentsInConv: false,
|
hideAttachmentsInConv: false,
|
||||||
|
maxThumbnails: 16,
|
||||||
hideNsfw: true,
|
hideNsfw: true,
|
||||||
preloadImage: true,
|
preloadImage: true,
|
||||||
loopVideo: true,
|
loopVideo: true,
|
||||||
|
|
Loading…
Reference in a new issue