[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Modul mit Javascript blockiert Backend ?
Seite 1 von 1

Modul mit Javascript blockiert Backend ?

Verfasst: 16. Feb 2018, 13:42
von katematsuda
Ich habe ein Modul in dem lediglich ein Javascript enthalten ist. Das Javascript zeigt im Frontend Bilder an in einer Art Diashow. Im Frontend funktioniert es wie gedacht. Im Backend wird nichts angezeigt ausser dass die Dateien der Bilder geladen werden weil ich ein animiertes gif eingebaut habe falls das Laden länger dauert.

Die Javascriptlib dazu liegt in einem extra Ordner und wird im Template auch erfolgreich eingebunden und geladen. Diese Lib ist natürlich im Backend nicht verfügbar. Daher kann eine Ausgabe im Backend auch nicht klappen.

Dass die Bilder im Backend nicht angezeigt werden stört nicht, aber solange dieses Modul eingebunden ist kann ich im Backend kein weiteres Modul hinzufügen, bzw. der Inputteil weiterer Module wird zwar angezeigt aber unter dem grauen Overlay mit dem schwarzen Quadratspinner. Der läuft ewig.

Anscheinend wartet das ganze Backend dieses Artikels darauf, dass in dem Javascript-Modul die Bilder geladen werden?

Das hat unter Redaxo4 geklappt, allerdings auch ohne Anzeige im Backend. Wie kriege ich es hin, dass er die fehlende Anzeige im Backend ignoriert, oder einfach das Hinzufügen weiterer Module erlaubt, meinetwegen auch indem im Backend auch das Javascript läuft?


Das Modul besteht aus einem bis auf einen Kommentar leeren Input und diesem Outputteil:

Code: Alles auswählen

<div id="crs3">
<br></br><p style="text-align: center;"><img src="/files/loading.gif" alt="loading"></img>Loading...</p></div>
<div class="caption"></div>

<script type="text/javascript">

$('#crs3').crossSlide({
  fade: 1
}, [  
.
.
.
  }
});
$('div.caption').show().css({ opacity: 0 });
</script>


Re: Modul mit Javascript blockiert Backend ?

Verfasst: 16. Feb 2018, 14:41
von runstop64
Hi,

Ich würde die Backend-Ausgabe einfach unterdrücken oder eine Alternative fürs Backend anlegen. Das geht ganz einfach mit einer If-Abfrage:

Code: Alles auswählen

<?php if (!rex::isBackend()): ?>
     <!-- Deine Frontend-Ausgabe -->
<?php else: ?>
     <!-- Deine Backend-Ausgabe -->
<?php endif;?>

Re: Modul mit Javascript blockiert Backend ?

Verfasst: 16. Feb 2018, 14:53
von katematsuda
Danke!

Das funktioniert prima.