add categories in search
This commit is contained in:
parent
b4086ff8f9
commit
352819f877
1 changed files with 88 additions and 64 deletions
|
@ -1,5 +1,6 @@
|
||||||
<script type="text/x-template" id="cider-search">
|
<script type="text/x-template" id="cider-search">
|
||||||
<div class="content-inner">
|
<div class="content-inner">
|
||||||
|
<div v-if="search != null && search != [] && search.term != ''">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-sm" style="width: auto;" v-if="getTopResult()">
|
<div class="col-sm" style="width: auto;" v-if="getTopResult()">
|
||||||
<template>
|
<template>
|
||||||
|
@ -25,7 +26,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<template v-if="search.results['meta']">
|
<template v-if="search.results['meta'] != null">
|
||||||
<template
|
<template
|
||||||
v-for="section in search.results.meta.results.order" v-if="section != 'song' && section != 'top'">
|
v-for="section in search.results.meta.results.order" v-if="section != 'song' && section != 'top'">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
@ -78,6 +79,20 @@
|
||||||
:items="search.resultsSocial.profile.data.data.limit(10)"></mediaitem-scroller-horizontal-large>
|
:items="search.resultsSocial.profile.data.data.limit(10)"></mediaitem-scroller-horizontal-large>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
<div v-else>
|
||||||
|
<div v-if="categoriesReady || getCategories()">
|
||||||
|
<div>
|
||||||
|
<div class="col" v-if="categoriesView != null && categoriesView != [] && categoriesView[0].attributes != null && categoriesView[0].attributes.title != null">
|
||||||
|
<h3>{{categoriesView[0].attributes.title.stringForDisplay ?? ""}}</h3>
|
||||||
|
</div>
|
||||||
|
<mediaitem-square :kind="'385'" size="600"
|
||||||
|
:item="item ? (item.attributes.kind ? item : ((item.relationships && item.relationships.contents ) ? item.relationships.contents.data[0] : item)) : []"
|
||||||
|
:imagesize="800"
|
||||||
|
v-for="item in categoriesView[1].relationships.contents.data.filter(item => item.type != 'editorial-items')">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
@ -86,7 +101,9 @@
|
||||||
props: ['search'],
|
props: ['search'],
|
||||||
data: function () {
|
data: function () {
|
||||||
return {
|
return {
|
||||||
app: this.$root
|
app: this.$root,
|
||||||
|
categoriesView : [],
|
||||||
|
categoriesReady : false,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
@ -96,6 +113,13 @@
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
async getCategories() {
|
||||||
|
if(this.categoriesView != [] && this.categoriesView.length > 0) {this.categoriesReady = true; return await true;} else {
|
||||||
|
let response = await this.app.mk.api.v3.music(`/v1/recommendations/${this.app.mk.storefrontId}?timezone=${encodeURIComponent(this.app.formatTimezoneOffset())}&name=search-landing&platform=web&extend=editorialArtwork&art%5Burl%5D=f%2Cc&types=editorial-items%2Capple-curators%2Cactivities`);
|
||||||
|
this.categoriesView = response.data.data;
|
||||||
|
this.categoriesReady = true;
|
||||||
|
return await true;}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue