This commit is contained in:
Michel Roux 2023-08-24 18:22:40 +02:00
parent d2f59538c1
commit 3ddf7bf7a0
7 changed files with 49 additions and 54 deletions

View File

@ -107,7 +107,10 @@ class EpisodeActionReader extends GPodderSyncEpisodeActionReader
return $episodes; return $episodes;
} }
private function stringOrNull(mixed $value): ?string /**
* @param null|\SimpleXMLElement|string $value
*/
private function stringOrNull($value): ?string
{ {
if ($value) { if ($value) {
return (string) $value; return (string) $value;

View File

@ -1,21 +1,18 @@
<template> <template>
<fragment> <div>
<p> <NcLoadingIcon v-if="loading" />
<span>{{ t('Discover') }}</span> <ul v-if="!loading" class="tops">
<li v-for="top in tops" :key="top.link">
<TopItem :author="top.author"
:image-url="top.imageUrl"
:link="top.link"
:title="top.title" />
</li>
</ul>
<p v-if="!loading" class="caption">
{{ t('Suggests by fyyd') }}
</p> </p>
<p> </div>
<NcLoadingIcon v-if="loading" />
<ul v-if="!loading" class="tops">
<li v-for="top in tops" :key="top.link">
<TopItem :author="top.author"
:image-url="top.imageUrl"
:link="top.link"
:title="top.title" />
</li>
</ul>
<span class="caption">{{ t('Suggests by fyyd') }}</span>
</p>
</fragment>
</template> </template>
<script> <script>
@ -53,20 +50,24 @@ export default {
</script> </script>
<style scoped> <style scoped>
.caption { div {
float: right; margin: 2rem 0;
font-size: small;
margin: .5rem;
} }
.tops { li {
flex-basis: 15%;
}
p {
font-size: small;
margin: .5rem;
text-align: right;
}
ul {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
gap: 2rem 5%; gap: 2rem 5%;
justify-content: center; justify-content: center;
} }
.tops li {
flex-basis: 15%;
}
</style> </style>

View File

@ -107,6 +107,7 @@ export default {
.header { .header {
height: 14rem; height: 14rem;
overflow: hidden;
padding: 2rem; padding: 2rem;
position: relative; position: relative;
} }

View File

@ -46,11 +46,3 @@ export default {
}, },
} }
</script> </script>
<style scoped>
ul {
background-color: rgba(0, 0, 0, .9);
height: 100%;
overflow: auto;
}
</style>

View File

@ -1,20 +1,18 @@
<template> <template>
<div class="main"> <NcAppContent class="main">
<p> <NcTextField class="search" :label="t('Find a podcast')" :value.sync="search">
<NcTextField :label="t('Find a podcast')" :value.sync="search"> <Magnify :size="20" />
<Magnify :size="20" /> </NcTextField>
</NcTextField>
</p>
<Search v-if="search" :value="search" /> <Search v-if="search" :value="search" />
<TopList v-if="!search" /> <TopList v-if="!search" />
<AddRss v-if="!search" /> <AddRss v-if="!search" />
</div> </NcAppContent>
</template> </template>
<script> <script>
import { NcAppContent, NcTextField } from '@nextcloud/vue'
import AddRss from '../components/Discover/AddRss.vue' import AddRss from '../components/Discover/AddRss.vue'
import Magnify from 'vue-material-design-icons/Magnify.vue' import Magnify from 'vue-material-design-icons/Magnify.vue'
import { NcTextField } from '@nextcloud/vue'
import Search from '../components/Discover/Search.vue' import Search from '../components/Discover/Search.vue'
import TopList from '../components/Discover/TopList.vue' import TopList from '../components/Discover/TopList.vue'
@ -23,6 +21,7 @@ export default {
components: { components: {
AddRss, AddRss,
Magnify, Magnify,
NcAppContent,
NcTextField, NcTextField,
Search, Search,
TopList, TopList,
@ -37,9 +36,11 @@ export default {
<style scoped> <style scoped>
.main { .main {
display: flex; padding: 15px 51px;
flex-direction: column; overflow: hidden;
gap: 1rem; }
margin: 15px 51px;
.search {
margin-bottom: 1rem;
} }
</style> </style>

View File

@ -1,5 +1,5 @@
<template> <template>
<fragment> <NcAppContent>
<NcLoadingIcon v-if="loading" /> <NcLoadingIcon v-if="loading" />
<NcEmptyContent v-if="failed" :name="t('Error loading feed')"> <NcEmptyContent v-if="failed" :name="t('Error loading feed')">
<template #icon> <template #icon>
@ -13,11 +13,11 @@
:link="feed.link" :link="feed.link"
:title="feed.title" /> :title="feed.title" />
<List v-if="feed" /> <List v-if="feed" />
</fragment> </NcAppContent>
</template> </template>
<script> <script>
import { NcEmptyContent, NcLoadingIcon } from '@nextcloud/vue' import { NcAppContent, NcEmptyContent, NcLoadingIcon } from '@nextcloud/vue'
import Alert from 'vue-material-design-icons/Alert.vue' import Alert from 'vue-material-design-icons/Alert.vue'
import Banner from '../components/Feed/Banner.vue' import Banner from '../components/Feed/Banner.vue'
import List from '../components/Feed/List.vue' import List from '../components/Feed/List.vue'
@ -29,6 +29,7 @@ export default {
components: { components: {
Alert, Alert,
Banner, Banner,
NcAppContent,
NcEmptyContent, NcEmptyContent,
NcLoadingIcon, NcLoadingIcon,
List, List,

View File

@ -17,15 +17,12 @@
</ul> </ul>
</NcAppContentList> </NcAppContentList>
</NcAppNavigation> </NcAppNavigation>
<NcAppContent> <router-view />
<router-view />
</NcAppContent>
</fragment> </fragment>
</template> </template>
<script> <script>
import { import {
NcAppContent,
NcAppContentList, NcAppContentList,
NcAppNavigation, NcAppNavigation,
NcAppNavigationNew, NcAppNavigationNew,
@ -39,7 +36,6 @@ export default {
name: 'Index', name: 'Index',
components: { components: {
Item, Item,
NcAppContent,
NcAppContentList, NcAppContentList,
NcAppNavigation, NcAppNavigation,
NcAppNavigationNew, NcAppNavigationNew,