[Shopversion 2.5.1.2] Mobiletemplate nach Update offline

Thema wurde von Anonymous, 27. November 2015 erstellt.

  1. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    Hallo,

    ich habe soeben (versucht) die neue Version vom Mobile Candy (v1.2.8) installiert.

    Der Updater lief bis zum Ende durch OHNE einen Fehler zu melden.
    Die vorherige Mobile-Version war 1.1.4.

    Nach Aufruf auf einem üblichen Smartphone bekomme ich die Mitteilung, dass der Shop offline wäre.

    Weiß jemand, woran dies wiederum liegt ?

    Die USERMOD-Dateien haben ich an die neuen Dateien angepasst.

    Vielen Dank im Voraus.
     
  2. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    ;) Scheinbar gibt es da ein kleines "Logik-Problem":

    In der index.html sollte folgenden stehen:

    Statt

    PHP:
    ...
    {if 
    SHOP_OFFLINE}
            {
    html_shop_offline}
        {else}
    ...
    umschreiben in:

    PHP:
    ...
    {if 
    not SHOP_OFFLINE}
            {
    html_shop_offline}
        {else}
    ...
    {/if}
    ...
    Verstehen tu ich zwar nicht so ganz, warum...
    Aber so funktioniert das zumindestens bei mir.
     
  3. KlausK

    KlausK Erfahrener Benutzer

    Registriert seit:
    7. Oktober 2012
    Beiträge:
    547
    Danke erhalten:
    106
    Danke vergeben:
    21
    Davon abgesehen, dass die Syntax if not falsch ist, es müsste != heißen, befindet sich in der Smarty Variable html_shop_offline der Text für den Offline-Modus.
    Demnach würdest du jetzt im Online-Modus den Offline-Text anzeigen, korrekte Syntax vorausgesetzt.

    Offenbar hast du jedoch ein anderes Problem. Denn im MobileCandy 1.2.8 sieht die if-Anweisung eigentlich so aus:
    PHP:
        {if $smarty.const.SHOP_OFFLINE}
            {
    html_shop_offline}
        {else}
     
  4. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    #4 Anonymous, 28. November 2015
    Zuletzt bearbeitet: 28. November 2015
    Hallo KlausK

    als Alternative kann man zu dem ! Operator wohl auch not (wie in anderen Programmiersprachen üblich) schreiben.

    (Link nur für registrierte Nutzer sichtbar.)

    Aber du hast recht. Es muss natürlich{if $smarty.const.SHOP_OFFLINE} heißen.
    Warum in meiner USERMOD jetzt da shop_offline die ganze Zeit drin stand, kann ich nicht sagen.
     
  5. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    #5 Anonymous, 28. November 2015
    Zuletzt bearbeitet: 28. November 2015
    In der gm_offline.php findest du jedenfalls folgendes:

    PHP:
            // Reverse the value of the $_POST['shop_offline'] parameter because since v2.5.1.0 the UI checkbox stands
            // for the "current shop state" while before it used to stand for the "enable shop offline mode". This is 
            // a quick fix because it is not possible to change the GM_SHOP_OFFLINE config name due to dependencies in 
            // other sections of the app.
    $_POST['shop_offline'] = ($_POST['shop_offline'] == 'checked') ? '' 'checked'

    Funktionieren tun jedenfalls beide Versionen.
     
  6. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Registriert seit:
    7. November 2012
    Beiträge:
    18.737
    Danke erhalten:
    7.309
    Danke vergeben:
    2.208
    Weil das früher mal so richtig war...
     
  7. KlausK

    KlausK Erfahrener Benutzer

    Registriert seit:
    7. Oktober 2012
    Beiträge:
    547
    Danke erhalten:
    106
    Danke vergeben:
    21
    NOT ist ein logischer Operator, während != ein Vergleichsoperator (ungleich) ist. Das ist auch in Smarty so.
    Logische OPs werden für boolesche Werte eingesetzt, Vergleichs-OPs für andere Datentypen, hier z.B. 'String' - wie 'checked' einer ist!

    Ich hatte übrigens != geschrieben, nicht !

    Hast du vielleicht noch andere Usermods am laufen?
    Wirklich alle Caches geleert?
    Cache vom
    Smartphone-Browser geleert? Ich habe mit meinem Nexus regelmäßig ähnliche Probleme.
     
  8. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    17. Juni 2013
    Beiträge:
    246
    Danke erhalten:
    21
    Danke vergeben:
    35
    #8 Anonymous, 28. November 2015
    Zuletzt bearbeitet: 28. November 2015
    Wenn man wie ich davon ausgeht, dass shop_offline wie ein boolean-var interepretiert werden kann, dann sollte meine Negierung ja passen.

    *g Aber dann müsste das ja eigentlich so heißen:

    {if SHOP_OFFLINE != 'checked'}

    weil SHOP_OFFLINE ja entweder 'checked' oder einen Nullstring enthält.

    lol Verstehen tut ich aber meine geniale if anweisung trotzdem nicht, oder warum
    kann ich dann genau so gut schreiben
    PHP:
     if not SHOP_OFFLINE 
    ?

    :) Naja, war wohl eher ein glücklicher Zufall, dass diese Konstruktion funktioneiert hat.

    Also angezeigt wird jetzt die mobile Version dank deines Hinweises.

    Weißt du eigentlich, ob das Payone-Modul mittlerweile auch für das Mobile Template funktioniert ? Bisher habe ich nur Paypal und Vorkasse als Bezahlmöglichkeiten.

    ;) Ich habe nur so ein olles Motorola, da teste ich lieber mit testmobile.me.
    Da habe ich dann alle Geräte.