Medienordner: Fehler beim Löschen von Bildern

  • Noch einmal versucht, jetzt habe ich die Fehlermeldung auch erhalten. Mit der SHIFT-Taste.
    Mit 5 Bildern, und es kamen aber auch grüne meldungen.

    Aber die Bilder werden ja gelöscht, ist die Hauptsache.

    Ja klar werden die gelöscht aber ich finde es trotzdem nicht in Ordnung.

  • Ich habe mir das mal genauer angesehen. Der Fehler lässt sich eindeutig auf die Mehrfachauswahl mit der SHIFT-Taste zurückführen.

    Bei einer Auswahl von oben nach unten wird das zuerst ausgewählte Bild erneut in die interne Auswahlliste aufgenommen.

    Vereinfacht sieht das so aus:

    Erstes ausgewähltes Bild: A
    SHIFT-Auswahl: A, B, C, D, E
    Interne Auswahlliste: A, A, B, C, D, E

    Beim anschließenden Löschen sendet Joomla deshalb für Bild A zwei DELETE-Anfragen:

    • Die erste Anfrage löscht das Bild erfolgreich und liefert HTTP 200.
    • Die zweite Anfrage findet das bereits gelöschte Bild nicht mehr und liefert HTTP 404.

    Dadurch erscheinen sowohl grüne Erfolgsmeldungen als auch eine rote Fehlermeldung, obwohl alle Bilder tatsächlich gelöscht wurden.

    Der Fehler liegt in: administrator/components/com_media/resources/scripts/components/browser/utils/utils.es6.js

    Bei der SHIFT-Auswahl wird aktuell der bereits ausgewählte Ausgangspunkt erneut übernommen:

    Code
    slice(currentIndex, endIndex + 1)

    Für die Auswahl von oben nach unten müsste der Ausgangspunkt ausgeschlossen werden:

    Code
    slice(currentIndex + 1, endIndex + 1)

    Zusätzlich sollte Joomla grundsätzlich verhindern, dass derselbe Dateipfad mehrfach in selectedItems gespeichert wird:

    Code
    [types.SELECT_BROWSER_ITEM]: (state, payload) => {const alreadySelected = state.selectedItems.some( (item) => item.path === payload.path, ); if (!alreadySelected) { state.selectedItems.push(payload); } },

    Als zusätzliche Absicherung sollte die Löschroutine die ausgewählten Elemente vor dem Löschen anhand des Dateipfads deduplizieren.

    Damit ist auch erklärt, warum der Fehler bei der Auswahl mit STRG nicht auftritt: Dabei wird jedes Bild einzeln ausgewählt und nicht erneut über eine Bereichsauswahl hinzugefügt.

  • Rolf Dautrich bei Github bin ich raus. Ich finde es einfach nur unübersichtlich.

    Ich kann es aktuell nicht machen. Gestern hatte ich noch keine abschließende Bewertung. Bei Joomla /Github muss ich alles einzeln aufbröseln statt ein Textfeld mit den abgeteilten Infos zu kopieren. Das ist mir gerade zu aufwendig und ich Poste es mal hier in einen Thread damit ich es die Tage noch bei Github als Issue einstelle.