Skip to content

Separate show queries towards Arcsi#325

Open
tuz666 wants to merge 14 commits into
mainfrom
dev/introduce-new-arcsi-endpoints
Open

Separate show queries towards Arcsi#325
tuz666 wants to merge 14 commits into
mainfrom
dev/introduce-new-arcsi-endpoints

Conversation

@tuz666

@tuz666 tuz666 commented May 17, 2026

Copy link
Copy Markdown
Collaborator
  • The radio website currently uses the /all_without_items for each show related queries
    • The usage of this endpoint is entirely removed from the code base
  • As our plan is to extend the schedule with bi-weekly and monthly shows and our intention is to handle this feature on the backend side it is required to separate these incoming requests
  • There should be at least two show related endpoints used by the website, one which returns the strictly schedule related additional fields (week, day, start, end, frequency, later on filtered according to the given week), and another one which returns all the shows with way less fields.
    • The new /all_schedule and /all_tiles endpoints are used for these purposes
  • Some ambiguous namings were also clarififed to make the code cleaner and more readable

@tuz666 tuz666 marked this pull request as draft May 18, 2026 16:37
@tuz666 tuz666 requested review from baxgas, gammaw and pvj May 18, 2026 23:17
@tuz666 tuz666 marked this pull request as ready for review May 19, 2026 15:08
pvj
pvj previously approved these changes May 21, 2026

@pvj pvj left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have one recommendation but even that is just optimisation. So in general good job and I approve. Thank you!

<template>
<div v-if="episode" class="latest-arcsi-blokk">
<NuxtLink :to="`/shows/${showslug}/${episodeLink}`" class="episode-block relative block w-full mb-2 bg-white">
<NuxtLink :to="`/shows/${showSlug}/${episodeSlug}`" class="episode-block relative block w-full mb-2 bg-white">

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Comment thread app/components/arcsi/Latest.vue Outdated
}
return null
arcsiEpisodesSliced () {
return this.arcsiEpisodes.slice(this.startIndex, this.numberOfEpisodes)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

The backend can't send anything not archived or without a name_slug right?

Comment thread app/components/HeaderBlock.vue Outdated
// refresh arcsiShowsForTiles every 10 minutes
if (minutes % 10 === 0) {
this.refreshAllShows()
this.refreshArcsiShowsForTiles()

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question about tiles: Is it only going to change when we add new shows or also whenever a new episode is published?

Anyway I think schedule 10 min is okay but hopefully we can be more relaxed about shows tiles after this split, what do you think?

Comment thread app/pages/shows/_slug/_id.vue Outdated
</div>

<div v-if="arcsiShow" class="show-infos">
<div v-if="this.arcsiShow" class="show-infos">

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this. nem kell a templaten belül, elég csak arcsiShow (pl. máshol is

)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Kosz a commenteket @baxgas !!

}

// refresh arcsiShowsForSchedule every 10 minutes
if (minutes % 10 === 0) {

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a két if (minutes % 10 === 0) ugyanaz, össze lehet vonni és egy blokkon belül menjen a két call?

.slice(this.startIndex, this.numberOfEpisodes)
}
return null
arcsiEpisodesSliced () {

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lehet érdemes be rakni guardot, mint ahogy volt if (this.arcsiEpisodes) {...} return null vagy if (!this.arcsiEpisodes) return null

Comment thread app/components/arcsi/LatestBlock.vue Outdated
computed: {
episodeImage() {
return this.episode.image_url.length > 0 ? this.episode.image_url : this.arcsilist.find(item => item.id === this.episode.shows[0].id).cover_image_url
return this.episode.image_url.length > 0 ? this.episode.image_url : this.showList.find(show => show.id === this.episode.shows[0].id).cover_image_url

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ide is érdemes rakni guardot (? a pont elé) find(...)?.cover_image_url hogy ne törjön az egész ha esetleg nem talál matchet és le akarja kérdezni a keyt az undefined-ből

Comment thread app/components/arcsi/LatestBlock.vue Outdated
},
created() {
this.showslug = this.arcsilist.find(item => item.id === this.episode.shows[0].id).archive_lahmastore_base_url
this.showSlug = this.showList.find(show => show.id === this.episode.shows[0].id).archive_lahmastore_base_url

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ide is érdemes rakni guardot find(...)?.archive_lahmastore_base_url hogy ne törjön az egész ha esetleg nem talál matchet és le akarja kérdezni a keyt az undefined-ből

Comment thread app/components/arcsi/EpisodeBlock.vue Outdated
computed: {
episodeImage() {
return this.episode.image_url.length > 0 ? this.episode.image_url : this.arcsilist.find(item => item.id === this.episode.shows[0].id).cover_image_url
return this.episode.image_url.length > 0 ? this.episode.image_url : this.showList.find(show => show.id === this.episode.shows[0].id).cover_image_url

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ide is érdemes rakni guardot (? a pont elé) find(...)?.cover_image_url hogy ne törjön az egész ha esetleg nem talál matchet és le akarja kérdezni a keyt az undefined-ből

},
created() {
this.showslug = this.arcsilist.find(item => item.id === this.episode.shows[0].id).archive_lahmastore_base_url
this.showSlug = this.showList.find(show => show.id === this.episode.shows[0].id).archive_lahmastore_base_url

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ide is érdemes rakni guardot (? a pont elé) find(...)?.archive_lahmastore_base_url hogy ne törjön az egész ha esetleg nem talál matchet és le akarja kérdezni a keyt az undefined-ből

Comment thread app/pages/shows/index.vue Outdated
<div v-if="defaultArcsiShows" class="mb-8">
<AutoCompleteSearch
:default-items="defaultArcsiShows"
:defaultShows="defaultArcsiShows"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a vue-ban kebab-case kell a komponensek bindingjaira :default-shows="defaultArcsiShows" (régi is default-items volt)

Comment thread README.md Outdated
Node version `=14.18.2`
Node version `=14.21.3`

Node Version Manager (.nvmrc) has 14.18.2 as recommended, run `nvm install` and `nvm use` in `app` folder

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

valóban, itt el lett felejtve frissíteni a readme-t az .nvmrc aktuális állapotáról, köszi! viszont akkor ebben a sorban is frissíteni kellene

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants