about: add MRF transparency panel

This commit is contained in:
Ariadne Conill 2019-11-09 00:09:32 -06:00
parent 20ccd93a17
commit 90f764224d
6 changed files with 148 additions and 2 deletions

View file

@ -0,0 +1,33 @@
const MRFTransparencyPanel = {
components: {
},
computed: {
federationPolicy() {
return this.$store.state.instance.federationPolicy
},
mrfPolicies() {
return this.$store.state.instance.federationPolicy.mrf_policies
},
acceptInstances() {
return this.$store.state.instance.federationPolicy.mrf_simple.accept
},
rejectInstances() {
return this.$store.state.instance.federationPolicy.mrf_simple.reject
},
quarantineInstances() {
return this.$store.state.instance.federationPolicy.quarantined_instances
},
ftlRemovalInstances() {
return this.$store.state.instance.federationPolicy.mrf_simple.federated_timeline_removal
},
mediaNsfwInstances() {
return this.$store.state.instance.federationPolicy.mrf_simple.media_nsfw
},
mediaRemovalInstances() {
return this.$store.state.instance.federationPolicy.mrf_simple.media_removal
}
}
}
export default MRFTransparencyPanel

View file

@ -0,0 +1,91 @@
<template>
<div class="mrf-transparency-panel" v-if="federationPolicy">
<div class="panel panel-default base01-background">
<div class="panel-heading timeline-heading base02-background">
<div class="title">
{{ $t("about.federation") }}
</div>
</div>
<div class="panel-body">
<div class="mrf-section">
<h2>{{ $t("about.mrf_policies") }}</h2>
<p>{{ $t("about.mrf_policies_desc") }}</p>
<ul>
<li v-for="policy in mrfPolicies" v-bind:key="policy" v-text="policy" />
</ul>
<h2>{{ $t("about.mrf_policy_simple") }}</h2>
<div v-if="acceptInstances.length">
<h4>{{ $t("about.mrf_policy_simple_accept") }}</h4>
<p>{{ $t("about.mrf_policy_simple_accept_desc") }}</p>
<ul>
<li v-for="instance in acceptInstances" v-bind:key="instance" v-text="instance" />
</ul>
</div>
<div v-if="rejectInstances.length">
<h4>{{ $t("about.mrf_policy_simple_reject") }}</h4>
<p>{{ $t("about.mrf_policy_simple_reject_desc") }}</p>
<ul>
<li v-for="instance in rejectInstances" v-bind:key="instance" v-text="instance" />
</ul>
</div>
<div v-if="quarantineInstances.length">
<h4>{{ $t("about.mrf_policy_simple_quarantine") }}</h4>
<p>{{ $t("about.mrf_policy_simple_quarantine_desc") }}</p>
<ul>
<li v-for="instance in quarantineInstances" v-bind:key="instance" v-text="instance" />
</ul>
</div>
<div v-if="ftlRemovalInstances.length">
<h4>{{ $t("about.mrf_policy_simple_ftl_removal") }}</h4>
<p>{{ $t("about.mrf_policy_simple_ftl_removal_desc") }}</p>
<ul>
<li v-for="instance in ftlRemovalInstances" v-bind:key="instance" v-text="instance" />
</ul>
</div>
<div v-if="mediaNsfwInstances.length">
<h4>{{ $t("about.mrf_policy_simple_media_nsfw") }}</h4>
<p>{{ $t("about.mrf_policy_simple_media_nsfw_desc") }}</p>
<ul>
<li v-for="instance in mediaNsfwInstances" v-bind:key="instance" v-text="instance" />
</ul>
</div>
<div v-if="mediaRemovalInstances.length">
<h4>{{ $t("about.mrf_policy_simple_media_removal") }}</h4>
<p>{{ $t("about.mrf_policy_simple_media_removal_desc") }}</p>
<ul>
<li v-for="instance in mediaRemovalInstances" v-bind:key="instance" v-text="instance" />
</ul>
</div>
</div>
</div>
</div>
</div>
</template>
<script src="./mrf_transparency_panel.js"></script>
<style lang="scss">
.mrf-section {
margin: 1em;
}
</style>