Zufällige Reihenfolge als Standard
Nach Bewertung sortiert sieht man immer dieselben zwanzig Filme. Zufällig kommt auch mal etwas aus der Mitte des Katalogs nach oben. Jeder Film bekommt dafür einen festen Wurf. Mit Math.random() direkt im Vergleich würde die Sortierung bei jedem Filtern neu durcheinanderspringen. Neu gemischt wird beim Neuladen der Seite. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013XVnRop5c3or3B8xE2hpgZ
This commit is contained in:
@@ -15,7 +15,7 @@ const status = ref(null)
|
||||
const loading = ref(true)
|
||||
const error = ref('')
|
||||
const search = ref('')
|
||||
const sort = ref('rating')
|
||||
const sort = ref('random')
|
||||
const selected = ref(null)
|
||||
// Nach dem Neuladen soll derselbe Reiter offen sein
|
||||
const TAB_SCHLUESSEL = 'filmabend_tab'
|
||||
@@ -289,7 +289,17 @@ function score(movie) {
|
||||
)
|
||||
}
|
||||
|
||||
// Ein fester Wurf je Film. Mit Math.random() im Vergleich springen die
|
||||
// Karten bei jedem Filtern neu durcheinander.
|
||||
const wuerfel = new Map()
|
||||
|
||||
function zufall(movie) {
|
||||
if (!wuerfel.has(movie.id)) wuerfel.set(movie.id, Math.random())
|
||||
return wuerfel.get(movie.id)
|
||||
}
|
||||
|
||||
const SORTS = {
|
||||
random: (a, b) => zufall(a) - zufall(b),
|
||||
rating: (a, b) => score(b) - score(a),
|
||||
newest: (a, b) => (b.year || 0) - (a.year || 0),
|
||||
oldest: (a, b) => (a.year || 9999) - (b.year || 9999),
|
||||
|
||||
Reference in New Issue
Block a user