Fehler nach Löschen von js Datei in EyeCandy

Thema wurde von sirtet, 22. Mai 2015 erstellt.

  1. sirtet

    sirtet Erfahrener Benutzer

    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.120
    Danke erhalten:
    88
    Danke vergeben:
    89
    Ich hab die Datei templates/EyeCandy/javascript/social_share_plugin.js gelöscht, da ich sie nicht mehr brauche.
    Dachte, nach Cache löschen sollte alles io sein, aber dem ist nicht so. Kein JS läuft mehr auf der Seite, weil eine Fehlermeldung, die eigentlich im HTML erscheinen sollte, in die aggregierte JS Datei geschrieben wird.
    <b>WARNING(2): </b>"include_once(): Failed opening '/usr/...catalog/templates/EyeCandy/javascript/social_share_plugin.js' for inclusion

    Ich hatte das Problem schon mal, bis es nach einer Weile von selbst verschwand...
    Ich sollte die Dateien im javascript Verzeichnis schon nach lust löschen können, oder?
     
  2. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.310
    Danke vergeben:
    2.208
    Nein, das geht nicht solange die irgendwo anders eingebunden wird. Die Fehlermeldung beklagt genau das.
     
  3. sirtet

    sirtet Erfahrener Benutzer

    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.120
    Danke erhalten:
    88
    Danke vergeben:
    89
    hmm, und wo wird sie das? konnte den dateinamen nirgends ergreppen...

    PS:
    Dass das fehler-html in die JS geschrieben wird ist als Bug, bekannt?
     
  4. soprao

    soprao Erfahrener Benutzer

    Registriert seit:
    26. Februar 2015
    Beiträge:
    160
    Danke erhalten:
    18
    Danke vergeben:
    28
    lass die Datei bestehen und lösche nur den Inhalt. Eventuell bekommst du deinen Wunsch so gelöst oder aber der Errorlog spuckt dir die Datei aus, in der eine bestimmte Funktion nicht aufgerufen werden kann.
     
  5. soprao

    soprao Erfahrener Benutzer

    Registriert seit:
    26. Februar 2015
    Beiträge:
    160
    Danke erhalten:
    18
    Danke vergeben:
    28
    Bei mir sieht die social_share_plugin.js nun wie folgt aus und verursacht keine Fehler in der Konsole oder im Frontend:
    PHP:
    /* social_share_plugin.js <?php
    #   --------------------------------------------------------------
    #   social_share_plugin.js 2014-03-14 tb@gambio
    #   Gambio GmbH
    #   http://www.gambio.de
    #   Copyright (c) 2014 Gambio GmbH
    #   Released under the GNU General Public License (Version 2)
    #   [http://www.gnu.org/licenses/gpl-2.0.html]
    #   --------------------------------------------------------------
    ?>*/

    (function($){
        $.fn.social_share_plugin = function(){};  
    });
     
  6. Torben Wark

    Torben Wark Gambio GmbH

    Registriert seit:
    15. Juli 2014
    Beiträge:
    2.581
    Danke erhalten:
    1.178
    Danke vergeben:
    399
    Die Datei social_share_plugin.js wird im JSGlobalExtender eingebunden, zu finden im Shop unter system/overloads/JSGlobalExtenderComponent/JSGlobalExtender.inc.php in Zeile 45. Wenn du verhindern willst, dass die Datei eingebunden wird, musst du den include_once-Befehl entfernen. Das ist aber keine updatesichere Lösung.

    LG Torben
     
  7. sirtet

    sirtet Erfahrener Benutzer

    Registriert seit:
    4. Juli 2012
    Beiträge:
    1.120
    Danke erhalten:
    88
    Danke vergeben:
    89
    #7 sirtet, 29. Mai 2015
    Zuletzt bearbeitet: 29. Mai 2015
    Der updatesichere Weg ist also, von der Datei eine -USERMOD Variante zu machen, die dann einfach leer sein darf, oder nur einen Kommentar enthält, warum sie leer ist.
    Bei mir funktioniert es so: social_share_plugin-USERMOD.js
    PHP:
    /* social_share_plugin.js <?php
    #   --------------------------------------------------------------
    #   social_share_plugin.js 2012-09-24 tb@gambio
    #   Gambio GmbH
    #   http://www.gambio.de
    #   Copyright (c) 2012 Gambio GmbH
    #   Released under the GNU General Public License (Version 2)
    #   [http://www.gnu.org/licenses/gpl-2.0.html]
    #   --------------------------------------------------------------

    // No JS needed here, sharing done by Shariff now.
    // Need to keep this file, to be update-proof.

    ?>*/
    In der aggregierten JS im Browser steht dann nur noch der Dateiname als Kommentar.


    @soprano:
    Warum hast du noch die leere Funktion drin? Sehe bei mir mit einer leeren Datei auch keine Probleme...
     
  8. soprao

    soprao Erfahrener Benutzer

    Registriert seit:
    26. Februar 2015
    Beiträge:
    160
    Danke erhalten:
    18
    Danke vergeben:
    28
    ich hatte die drin gelassen damit eventuelle funktionsaufrufe nicht in ein fehler laufen. muss mal schauen wie es sich mit der leeren datei verhält