angrybeanie-front-end/components/episodepager.js

48 lines
1.7 KiB
JavaScript
Raw Normal View History

2021-02-04 14:27:14 +11:00
import ReactPaginate from "react-paginate";
import { useRouter } from "next/router";
import Link from 'next/link'
const EpisodePager = ({ episodedata, config, showdata }) => {
const router = useRouter()
console.log(episodedata)
2021-02-04 14:27:14 +11:00
const handlePagination = page => {
const path = router.pathname
const query = router.query
query.page = page.selected + 1
router.push({
pathname: path,
query: query,
})
}
return (
<div className="main_content col-md-9 col-sm-12">
2021-02-04 14:27:14 +11:00
<div className="show_episodes">
2022-06-22 21:37:22 +10:00
{episodedata.data.map((episode) => (
<div key={episode.attributes.Slug} className="episode">
<div className="episode_title" id ={episode.Title}>
<Link href={episode.attributes.podcast_sery.data.attributes.Slug + "/episodes/" + episode.attributes.Slug}>{episode.attributes.Title}</Link>
2021-02-04 14:27:14 +11:00
</div>
<div className="content-date">
{episode.attributes.publishedAt}
2021-02-04 14:27:14 +11:00
</div>
<div className="episode_body" dangerouslySetInnerHTML={{ __html: episode.attributes.Description}}></div>
2021-02-04 14:27:14 +11:00
</div>
))}
</div>
<ReactPaginate
marginPagesDisplayed={2}
pageRangeDisplayed={5}
previousLabel={"previous"}
nextLabel={"next"}
breakLabel={"..."}
2022-06-22 21:37:22 +10:00
initialPage={episodedata.page}
pageCount={episodedata.meta.pagination.pageCount}
2021-02-04 14:27:14 +11:00
onPageChange={handlePagination}
/>
</div>
)
}
export default EpisodePager