About page for instance based on instance descriptions

merge-requests/154/head
Eliot Berriot 2018-02-24 15:28:09 +01:00
rodzic cdabb26989
commit ab2af7a548
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: DD6965E2476E5C27
5 zmienionych plików z 69 dodań i 0 usunięć

Wyświetl plik

@ -9,6 +9,9 @@
<div class="three wide column">
<h4 class="ui header">Links</h4>
<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://docs.funkwhale.audio" class="item" target="_blank">Documentation</a>
<a href="https://code.eliotberriot.com/funkwhale/funkwhale" class="item" target="_blank">Source code</a>

Wyświetl plik

@ -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>

Wyświetl plik

@ -6,6 +6,10 @@
Welcome on funkwhale
</h1>
<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">
Get me to the library
<i class="right arrow icon"></i>

Wyświetl plik

@ -1,6 +1,7 @@
import Vue from 'vue'
import Router from 'vue-router'
import PageNotFound from '@/components/PageNotFound'
import About from '@/components/About'
import Home from '@/components/Home'
import Login from '@/components/auth/Login'
import Signup from '@/components/auth/Signup'
@ -33,6 +34,11 @@ export default new Router({
name: 'index',
component: Home
},
{
path: '/about',
name: 'about',
component: About
},
{
path: '/login',
name: 'login',

Wyświetl plik

@ -6,6 +6,17 @@ export default {
namespaced: true,
state: {
settings: {
instance: {
name: {
value: ''
},
short_description: {
value: ''
},
long_description: {
value: ''
}
},
users: {
registration_enabled: {
value: true