angrybeanie-front-end/data/external/cms.js

52 lines
No EOL
1.3 KiB
JavaScript
Executable file

import getConfig from 'next/config'
export const getAllPosts = async (filter) => {
const { serverRuntimeConfig, publicRuntimeConfig } = getConfig()
const qs = require('qs')
const qVal = []
const query = qs.stringify({
sort: ['publishedAt:desc'],
filters: {
tags: {
Slug: {
$contains: filter
}
}
} }, {
encodeValuesOnly: true,
})
const res = await fetch(serverRuntimeConfig.base_path + `articles?${query}`, {
headers: new Headers({
'Authorization': serverRuntimeConfig.strapi_token,
'Content-Type': 'application/x-www-form-urlencoded'
})
})
return await res.json()
}
export const getAllPodcastSeries = async () => {
const { serverRuntimeConfig } = getConfig()
const qs = require('qs')
const query = qs.stringify({
populate: {
podcast_episodes: {
populate:['Audio']
}
}
}, {
encodeValuesOnly: true,
})
const res = await fetch(serverRuntimeConfig.base_path + `podcast-series?${query}`, {
headers: new Headers({
'Authorization': serverRuntimeConfig.strapi_token,
'Content-Type': 'application/x-www-form-urlencoded'
})
})
return await res.json()
}