Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Smarty via Javascript ansprechen

    Knechtruprecht

    • Neu im Forum
    • Beiträge: 6
    Smarty via Javascript ansprechen
    am: 11. Februar 2013, 13:08:20
    Hallo,

    ich probier gerade was aus. Ich lasse die Hotline im Shop nur zu einer bestimmten Tageszeit und nur unter der Woche anzeigen mit diesem Javascript:

    Code: Javascript  [Auswählen]
    // Hotline aktivieren zu einer bestimmten Uhrzeit.
            var date = new Date();
            var Std = date.getHours();
            var Tag = date.getDay();
            if (Tag == 0 || Tag == 6){
                    var ul = document.getElementById("global_navi");
                    items = ul.childNodes;
                    items[11].innerHTML = "Hotline: Wir sind von Mo. - Fr. 10:00 - 18:00 Uhr erreichbar.";
            }else if ((Std >= 0 && Std < 10)||(Std >= 18 && Std < 24)) {
                    var ul = document.getElementById("global_navi");
                    items = ul.childNodes;
                    items[11].innerHTML = "Hotline: Wir sind von Mo. - Fr. 10:00 - 18:00 Uhr erreichbar.";

    Wenn alles false ist zeigt er den eigentlichen Inhalt vom Content. Funktioniert auch wunderbar.

    Jetzt zu meiner eigentlichen Frage.
    Ich will
    Code: Javascript  [Auswählen]
    items[11].innerHTML = "Hotline: Wir sind von Mo. - Fr. 10:00 - 18:00 Uhr erreichbar.";
    mit einer Konstanten ersetzen, damit ich mehrere Sprachen einsetzen kann. Ich konnte jetzt herausfinden, das die Konstanten in der Template html zB so aufgerufen weden

    Code: PHP  [Auswählen]
    {$smarty.const.meine_konstante}

    Wie kann ich diese Konstanten jetzt in meinem Javascript ansprechen?
    Der Javascript liegt in einer eigenen .js wird $(document).ready(function()).
    Danke schon mal.

    Linkback: https://www.modified-shop.org/forum/index.php?topic=24723.0
    Shop Hosting

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.018
    • Geschlecht:
    Re: Smarty via Javascript ansprechen
    Antwort #1 am: 11. Februar 2013, 21:06:25
    Der einfachste Weg wäre das mit Sprachkonstanten aus den /lang/LANGUAGE.php-Dateien zu machen.
    Damit die Konstanten "verstanden" werden mußt du den Code durch PHP parsen lassen.
    Das kannst du entweder in der /includes/header.php oder in der /templates/YOUR_TEMPLATE/javascript/general.js.php machen.
    Säh' dann z.B.so aus:
    Code: Javascript  [Auswählen]
    <script type="text/javascript">
    /* <![CDATA[ */
    ...
    items[11].innerHTML = '<?php echo TEXT_HOTLINE; ?>';
    ...
    /* ]]> */
    </script>

    In der entprechenden Sprachdatei:
    Code: PHP  [Auswählen]
     define ('TEXT_HOTLINE', 'Hotline: Wir sind von Mo. - Fr. 10:00 - 18:00 Uhr erreichbar.');

    Gruß,
    noRiddle

    Knechtruprecht

    • Neu im Forum
    • Beiträge: 6
    Re: Smarty via Javascript ansprechen
    Antwort #2 am: 11. Februar 2013, 21:58:46
    Jaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa......

    wie geil!!!!
    Es klappt!

    Danke.
    Suchfeld ansprechen

    Begonnen von miamit am Templates

    0 Antworten
    1673 Aufrufe
    14. August 2012, 12:40:00 von miamit
    3 Antworten
    2961 Aufrufe
    09. Dezember 2012, 18:24:30 von jannemann
    8 Antworten
    4791 Aufrufe
    30. Dezember 2010, 18:17:41 von waldemsesch