About page for instance based on instance descriptions
This commit is contained in:
parent
cdabb26989
commit
ab2af7a548
|
@ -9,6 +9,9 @@
|
||||||
<div class="three wide column">
|
<div class="three wide column">
|
||||||
<h4 class="ui header">Links</h4>
|
<h4 class="ui header">Links</h4>
|
||||||
<div class="ui link list">
|
<div class="ui link list">
|
||||||
|
<router-link class="item" to="/about">
|
||||||
|
About this instance
|
||||||
|
</router-link>
|
||||||
<a href="https://funkwhale.audio" class="item" target="_blank">Official website</a>
|
<a href="https://funkwhale.audio" class="item" target="_blank">Official website</a>
|
||||||
<a href="https://docs.funkwhale.audio" class="item" target="_blank">Documentation</a>
|
<a href="https://docs.funkwhale.audio" class="item" target="_blank">Documentation</a>
|
||||||
<a href="https://code.eliotberriot.com/funkwhale/funkwhale" class="item" target="_blank">Source code</a>
|
<a href="https://code.eliotberriot.com/funkwhale/funkwhale" class="item" target="_blank">Source code</a>
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
<template>
|
||||||
|
<div class="main pusher">
|
||||||
|
<div class="ui vertical center aligned stripe segment">
|
||||||
|
<div class="ui text container">
|
||||||
|
<h1 class="ui huge header">
|
||||||
|
<template v-if="instance.name.value">About {{ instance.name.value }}</template>
|
||||||
|
<template v-else="instance.name.value">About this instance</template>
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="ui vertical stripe segment">
|
||||||
|
<p v-if="!instance.short_description.value && !instance.long_description.value">
|
||||||
|
Unfortunately, owners of this instance did not yet take the time to complete this page.</p>
|
||||||
|
<div
|
||||||
|
v-if="instance.short_description.value"
|
||||||
|
class="ui middle aligned stackable text container">
|
||||||
|
<p>{{ instance.short_description.value }}</p>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
v-if="instance.long_description.value"
|
||||||
|
class="ui middle aligned stackable text container"
|
||||||
|
v-html="$options.filters.markdown(instance.long_description.value)">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {mapState} from 'vuex'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
created () {
|
||||||
|
this.$store.dispatch('instance/fetchSettings')
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
...mapState({
|
||||||
|
instance: state => state.instance.settings.instance
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only -->
|
||||||
|
<style scoped>
|
||||||
|
</style>
|
|
@ -6,6 +6,10 @@
|
||||||
Welcome on funkwhale
|
Welcome on funkwhale
|
||||||
</h1>
|
</h1>
|
||||||
<p>We think listening music should be simple.</p>
|
<p>We think listening music should be simple.</p>
|
||||||
|
<router-link class="ui icon button" to="/about">
|
||||||
|
<i class="info icon"></i>
|
||||||
|
Learn more about this instance
|
||||||
|
</router-link>
|
||||||
<router-link class="ui icon teal button" to="/library">
|
<router-link class="ui icon teal button" to="/library">
|
||||||
Get me to the library
|
Get me to the library
|
||||||
<i class="right arrow icon"></i>
|
<i class="right arrow icon"></i>
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
import Router from 'vue-router'
|
import Router from 'vue-router'
|
||||||
import PageNotFound from '@/components/PageNotFound'
|
import PageNotFound from '@/components/PageNotFound'
|
||||||
|
import About from '@/components/About'
|
||||||
import Home from '@/components/Home'
|
import Home from '@/components/Home'
|
||||||
import Login from '@/components/auth/Login'
|
import Login from '@/components/auth/Login'
|
||||||
import Signup from '@/components/auth/Signup'
|
import Signup from '@/components/auth/Signup'
|
||||||
|
@ -33,6 +34,11 @@ export default new Router({
|
||||||
name: 'index',
|
name: 'index',
|
||||||
component: Home
|
component: Home
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/about',
|
||||||
|
name: 'about',
|
||||||
|
component: About
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/login',
|
path: '/login',
|
||||||
name: 'login',
|
name: 'login',
|
||||||
|
|
|
@ -6,6 +6,17 @@ export default {
|
||||||
namespaced: true,
|
namespaced: true,
|
||||||
state: {
|
state: {
|
||||||
settings: {
|
settings: {
|
||||||
|
instance: {
|
||||||
|
name: {
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
short_description: {
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
long_description: {
|
||||||
|
value: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
users: {
|
users: {
|
||||||
registration_enabled: {
|
registration_enabled: {
|
||||||
value: true
|
value: true
|
||||||
|
|
Loading…
Reference in New Issue