Pipeline: bei Lagen-Wechsel auf bereits-queued Lage automatisch beginQueue
Wenn der User in der Sidebar auf eine Lage klickt, die schon in Queue wartet, ruft bindToIncident() die API auf und kriegt den letzten gespeicherten Pipeline-Stand (alles done = gruen). Das ist falsch fuer queued-Status. Fix: nach API-Load pruefen, ob die Lage in App._refreshingIncidents ist UND in UI._progressState mit step=queued -> beginQueue() selbst ausloesen. Damit zeigt die Pipeline grau, sobald man auf die queued-Lage wechselt.
Dieser Commit ist enthalten in:
@@ -104,6 +104,20 @@ const Pipeline = {
|
||||
|
||||
this._render();
|
||||
this._renderMini();
|
||||
|
||||
// Edge-Case: Lage ist gerade in Queue (z.B. via Lagen-Wechsel beim
|
||||
// Klick in der Sidebar). API liefert den LETZTEN gespeicherten Stand
|
||||
// (alles done = gruen), aber tatsaechlich wartet ein neuer Refresh.
|
||||
// -> beginQueue() selbst ausloesen, damit Icons grau zeigen.
|
||||
try {
|
||||
if (typeof App !== 'undefined' && App._refreshingIncidents
|
||||
&& App._refreshingIncidents.has(incidentId)
|
||||
&& typeof UI !== 'undefined' && UI._progressState
|
||||
&& UI._progressState[incidentId]
|
||||
&& UI._progressState[incidentId].step === 'queued') {
|
||||
this.beginQueue(incidentId);
|
||||
}
|
||||
} catch (e) { /* tolerant */ }
|
||||
} catch (e) {
|
||||
console.warn('Pipeline laden fehlgeschlagen:', e);
|
||||
this._renderEmpty('Pipeline-Daten konnten nicht geladen werden.');
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren