Terminplaner: Portal-Ansicht Einstellungen – Nachbesserungen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
0b75b31009
commit
3ad056f261
10 files changed
+568
-342
No files matched your search
@@ -439,6 +439,17 @@ export function verschiebeEintrag(liste, index, richtung) {
|
||||
return kopie
|
||||
}
|
||||
|
||||
/**
|
||||
* Eintraege nach der Reihenfolge der IDs: Kopie der Liste; unbekannte IDs werden uebergangen, Eintraege ohne ID in der Liste der IDs
|
||||
* (z. B. inzwischen neu) folgen hinten in ihrer bisherigen Reihenfolge. So wirkt eine gemerkte Reihenfolge auf den aktuellen Stand der Liste.
|
||||
*/
|
||||
export function ordneNachIds(liste, ids) {
|
||||
const eintraege = Array.isArray(liste) ? liste : []
|
||||
const reihenfolge = new Map((Array.isArray(ids) ? ids : []).map((id, stelle) => [id, stelle]))
|
||||
const stelle = (eintrag) => (reihenfolge.has(eintrag?.id) ? reihenfolge.get(eintrag.id) : Infinity)
|
||||
return eintraege.map((eintrag, alt) => [eintrag, alt]).sort(([a, altA], [b, altB]) => (stelle(a) === stelle(b) ? altA - altB : stelle(a) < stelle(b) ? -1 : 1)).map(([eintrag]) => eintrag)
|
||||
}
|
||||
|
||||
/** 'Aktiv seit 01.10.2026' aus aktivSeit (ISO-Zeit) nach Berliner Kalender; '' ohne brauchbare Zeit. */
|
||||
export function aktivSeitText(iso) {
|
||||
const zeit = typeof iso === 'string' ? new Date(iso) : null
|
||||
|
||||
Reference in new issue
Block a user