Files
projektuebersicht/public/js/plan/plan-phasen.js
erikandClaude Opus 5.5 7d65ff813f Notizen je Projekt statt Reiter Leistungsphasen
- Neuer Reiter „Notizen“ im Projektbereich: Liste mit Suche und
  angehefteten Notizen, Editor mit Formatierung, automatisches Speichern,
  Mail per Drag & Drop oder Strg+V als neue Notiz, live bei allen
- Reiter „Leistungsphasen“ entfernt (Phasen weiter im Terminplan)
- Behoben: Umlaute in .eml-Dateien ohne Transfer-Kodierung gingen
  verloren (betraf auch „Termin aus Mail“)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 10:00:20 +01:00

23 lines
1.0 KiB
JavaScript

// -----------------------------
// Projektbereich — Zuordnung Aufgabe → Leistungsphase
// -----------------------------
// Der frühere Reiter „Leistungsphasen“ (Ablaufbalken + Kachel je Phase) ist
// auf Eriks Wunsch entfallen; an seiner Stelle steht „Notizen“. Geblieben ist
// nur aufgabenPhase(), die die Aufgabenliste (plan-tasks.js) und das
// Terminplan-PDF (pdf.js) nutzen.
// aufgabenPhase: zu welcher Leistungsphase eine (gewöhnliche) Aufgabe gehört —
// der Phasenbalken, in dessen Zeitraum sie beginnt. Dieselbe Regel wie die
// Gliederung im Terminplan. Parameter: t (Aufgabe), todos (alle Aufgaben des
// Plans). Rückgabe: Phasenname ('LPH 5') oder ''.
function aufgabenPhase(t, todos){
if(!t || balkenPhase(t)) return '';
const s0 = parseDateISO(t.start);
if(!s0) return '';
const k = (todos || [])
.filter(b => balkenPhase(b) && b.start && b.end)
.sort((a, b) => String(a.start).localeCompare(String(b.start)))
.find(b => s0 >= parseDateISO(b.start) && s0 <= parseDateISO(b.end));
return k ? balkenPhase(k) : '';
}