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

Autor Thema: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung  (Gelesen 1422 mal)

Offline Firebird

  • Frisch an Board
  • **
  • Beiträge: 53
    • Teile Beitrag
Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« am: 04. Oktober 2018, 11:48:18 »
Hallo modified community,

Ich würde gerne einen Text in der Anmeldung einblenden, je nach ausgewählten Land

(Deutschland und nicht Deutschland bzw. die ID sollte 81 sein , daher die If Abfrage wäre:
wenn Country == "Germany" dann Text X wenn ungleich != "Germany" Text Y

Wie muss ich das in den create_account HTML Dateien hinterlegen?
Irgendwie will es nicht wie ich will...

Gruß

Firebird

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

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 2.961
  • Geschlecht: Männlich
    • Teile Beitrag
    • xos-shop.com | XOS-Shop ist ein umfangreiches "Open Source Webshop-System", welches per Webinterface administriert wird und an die Bedürfnisse des Betreibers angepasst werden kann.
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #1 am: 04. Oktober 2018, 14:18:32 »
Hallo Firebird,

sofern du das tpl_modified verwendest könntest z.B. in der Datei templates/tpl_modified/module/create_account.html am Ende folgenden JavaScript Code einfügen.

Code: XML  [Auswählen]
{literal}
<script>
  $(function () {
    var D = "Text für Deutschland";
    var nichtD = "Text wenn nicht Deutschland";
    var style = "width: 95%; float: left; display: block;";
       
    function replace_text() {    
      if ($("#create_account *[name='country'] option:selected").val() == "81") {
        $('#country_info').text(D);
      } else {
        $('#country_info').text(nichtD);
      }
    }    
   
    $("#create_account *[name='country']").parent().before('<div id="country_info" style="' + style + '"></div>');    

    replace_text();

    $( "#create_account *[name='country']" ).change(function() {
      replace_text();        
    });
  });
</script>
{/literal}
 

Gruss
Hanspeter

Offline Firebird

  • Frisch an Board
  • **
  • Beiträge: 53
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #2 am: 04. Oktober 2018, 15:03:56 »
Scheint eine gute Lösung zu sein, Wie kann ich den das ganze so angeben das der Text nach dem Country Dropdown kommt bzw. es schiebt mir das Dropdown rechts zur Seite, lieber wäre es mir wenn der Text rechts neben dem Dropdown erscheint.

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 2.961
  • Geschlecht: Männlich
    • Teile Beitrag
    • xos-shop.com | XOS-Shop ist ein umfangreiches "Open Source Webshop-System", welches per Webinterface administriert wird und an die Bedürfnisse des Betreibers angepasst werden kann.
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #3 am: 04. Oktober 2018, 15:19:25 »
[...]
Wie kann ich den das ganze so angeben das der Text nach dem Country Dropdown kommt ..

Versuch es mal so.

Code: XML  [Auswählen]
{literal}
<script>
  $(function () {
    var D = "Text für Deutschland";
    var nichtD = "Text wenn nicht Deutschland";
    var style = "width: 95%; display: inline-block;";
       
    function replace_text() {    
      if ($("#create_account *[name='country'] option:selected").val() == "81") {
        $('#country_info').text(D);
      } else {
        $('#country_info').text(nichtD);
      }
    }    
   
    $("#create_account *[name='country']").parent().append('<span id="country_info" style="' + style + '"></span>');    

    replace_text();

    $( "#create_account *[name='country']" ).change(function() {
      replace_text();        
    });
  });
</script>
{/literal}
 

PS:
Welche Shopversion und welches Template verwendest du?

Gruss
Hanspeter

Offline octavia08

  • Neu im Forum
  • *
  • Beiträge: 22
  • Geschlecht: Weiblich
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #4 am: 28. Oktober 2018, 02:46:51 »
Hallo,
und wie müsste man das Script abwandeln wenn man nicht nur die IP für Deutschland "81" eingeben möchte?
Von Java verstehe ich leider zu wenig.
Wir haben 12 Länder in die geliefert wird. Alle IP hintereinander einzugeben funktioniert nicht, dann kommt immer der Text unter "var nichtD = " "; auch bei den Ländern in die geliefert wird.
Gibt dafür auch eine Lösung.
Gruß
Octavia

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 2.961
  • Geschlecht: Männlich
    • Teile Beitrag
    • xos-shop.com | XOS-Shop ist ein umfangreiches "Open Source Webshop-System", welches per Webinterface administriert wird und an die Bedürfnisse des Betreibers angepasst werden kann.
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #5 am: 28. Oktober 2018, 12:48:20 »
Hallo Octavia,

versuch es mit diesem Code.

Code: XML  [Auswählen]
{literal}
<script>
  $(function () {
    var LIDs = ["81", "14", "..."]; // Hier die IDs der Leander eintragen in die geliefert wird.
    var wg = "<span style=\"color: green;\">In dieses Land wird geliefert</span>";
    var wng = "<span style=\"color: red;\">In dieses Land wird nicht geliefert!</span>";
    var style = "width: 95%; display: inline-block; padding: 5px 0 5px 0;";
       
    function replace_text() {    
      if (LIDs.indexOf($("#create_account *[name='country'] option:selected").val()) > -1) {
        $('#country_info').html(wg);
      } else {
        $('#country_info').html(wng);
      }
    }    
   
    $("#create_account *[name='country']").parent().append('<span id="country_info" style="' + style + '"></span>');    

    replace_text();

    $( "#create_account *[name='country']" ).change(function() {
      replace_text();        
    });
  });
</script>
{/literal}

Gruss
Hanspeter

Offline octavia08

  • Neu im Forum
  • *
  • Beiträge: 22
  • Geschlecht: Weiblich
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #6 am: 28. Oktober 2018, 13:49:09 »
Hallo,

ich danke Dir!!
Es funktioniert einwandfrei. Die Texte erscheinen immer bei den "richtigen" Ländern.

Beste Grüße
Oktavia

Offline octavia08

  • Neu im Forum
  • *
  • Beiträge: 22
  • Geschlecht: Weiblich
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #7 am: 28. Oktober 2018, 14:28:03 »
Hallo Hans-Peter,

mal eine Frage, würde es nicht Sinn machen, den Text in dem Feld in dem das "Land" erscheint einzufügen, um eine Eintragung und somit den Kauf zu verhindern?
Bei uns kann nämlich trotz der eindeutigen Eintragungen unter den Zahlungsoptionen und Versandoptionen der Kunde, der aus dem nicht belieferbaren Land kommt, mit der nicht zulässigen Adresse kaufen.
Problem ist dabei, dass sogar die Versandkosten einfach wegfallen, da ja keine deklariert sind etc. etc.

Unsere ShopVersion 1.05 SP1b mit vielen Zusätzen und Änderungen.

Beste Grüße
Oktavia

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 2.961
  • Geschlecht: Männlich
    • Teile Beitrag
    • xos-shop.com | XOS-Shop ist ein umfangreiches "Open Source Webshop-System", welches per Webinterface administriert wird und an die Bedürfnisse des Betreibers angepasst werden kann.
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #8 am: 28. Oktober 2018, 17:32:33 »
Hallo Oktavia,

die Vorschläge die ich dir und Firebird in diesem Thread gemacht habe sind lediglich dazu gedacht bei der Auswahl eines bestimmten Landes einen bestimmten Text einzublenden, mehr machen diese Codeschnipsel nicht, sie verhindern natürlich nicht das ein Kunde im Chekout bei der Lieferadresse ein Land angibt in das man gar nicht liefert.

Gruss
Hanspeter

Offline octavia08

  • Neu im Forum
  • *
  • Beiträge: 22
  • Geschlecht: Weiblich
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #9 am: 28. Oktober 2018, 19:05:51 »
Hallo HansPeter,

das habe ich schon richtig verstanden!
Mein Gedanke ging ja eher dahin, ob man nicht diesen Text ( keine Lieferung....) einfach anstatt dem Ländernamen in dem Feld: Land erscheinen lassen kann, und man damit eventuell die Möglichkeit blockiert, sich mit einem Land, in welches nicht geliefert wird, anzumelden. Gleichzeitig hat er dann ja die Chance - wenn es ihm möglich ist - sich mit einem akzeptierten Lieferland anzumelden.
Ich bin leider - wie bereits erwähnt - wenn es um Java geht, absolut nicht im Bilde und weiß deshalb auch nicht, ob man das überhaupt umsetzten könnte. :nixweiss:
.
Gruß
Oktavia

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 2.961
  • Geschlecht: Männlich
    • Teile Beitrag
    • xos-shop.com | XOS-Shop ist ein umfangreiches "Open Source Webshop-System", welches per Webinterface administriert wird und an die Bedürfnisse des Betreibers angepasst werden kann.
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #10 am: 28. Oktober 2018, 22:49:31 »
Wenn du verhindern willst das sich jemand mit einem Land in das du nicht lieferst anzumelden bzw. zu registrieren, dann entferne dieses Land im Admin aus der Länder-Liste.

Gruss
Hanspeter

Offline Firebird

  • Frisch an Board
  • **
  • Beiträge: 53
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #11 am: 30. Oktober 2018, 10:21:01 »
@octavia

nach eu gesetz musst du eine Anmeldung zulassen, nur die Lieferung darfst du beschränken auf deine Standard Liefergebiete

Also kaufen dürfen die+Lieferung innerhalb Deutschlans verlangen.

Daher auch der Hinweis, sonst hätte ich ja Länder außer Deutschland einfach weiterhin nicht angeboten.

Offline octavia08

  • Neu im Forum
  • *
  • Beiträge: 22
  • Geschlecht: Weiblich
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #12 am: 03. November 2018, 16:30:23 »
Hallo,

da wir ja die Anmeldung zulassen müssen, und damit der Kunde auch den Bestellvorgang komplett durchlaufen kann, bis hin zur Bestellung, haben wir das Problem vorläufig wie folgt gelöst:

1. Dank hpzeller haben wir eine Script der verschiedene Länder kennzeichnet (läuft wirklich super).

2. Wir haben in der "create_account.html" einen Eintrag eingefügt, der die Länder zeigt in die wir liefern, denn das kann der Kunde ja ohne Hinweis nicht wissen. (siehe Screeshot).

3. Wenn der Kunde das nicht merkt und weiter einrichtet wird er nochmals in  unter den Versandoptionen in der "checkout_shipping.html" auf die Lieferländer hingewiesen. (siehe Screenshot)

4. Hat nun der Kunde alle Warnungen nicht beachtet erhält er in der "Bestellbestätigung" nochmals diese Mitteilung und erhält von uns keine "Auftragsbestätigung".
Hinweis hierzu: Bei uns läuft es so, das wir uns von "modified" eine Trennung zwischen Bestellbestätigung und Auftragsbestätigung haben programmieren lassen. Der Regelfall dürfte aber sein, dass hiervon die "order_mail.html" betroffen sein dürfte. (siehe Screenshot).

Da wir mit einem alten "aufgepeppten" System arbeiten macht es keinen Sinn unsere Dateien beizufügen.
Fast alle Dateien sind stark modifiziert.
Bei diesem "Vorwarnsystem" kann sich niemand mehr beschweren, dass wir nicht darauf hingewiesen haben, dass wir bestimmte Länder nicht beliefern.

Gruß Octavia

Offline WeXsler

  • Schreiberling
  • ****
  • Beiträge: 455
    • Teile Beitrag
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #13 am: 01. Januar 2019, 18:36:03 »
Nach dem sich heute der erste Kunde aus Korsika angemeldet hat - natürlich ohne deutsche Lieferanschrift, habe ich nochmal bei mir drüber geschaut und nun eine Frage.

Gibt es eine Möglichkeit in dem super funktionierenden code von hpzeller im Text
Zitat
var nichtD = "Text wenn nicht Deutschland";
Länderflags anzuzeigen? Ich habe da meinen eingefügten Text in drei Sprachen übersetzt und das steht jetzt doch recht unübersichtlich als ein Textblock neben- bzw. untereinander - also es ist nicht wirklich kenntlich wo die eine Sprache anfängt und die andere aufhört. Mit Länderflags wäre das bestimmt besser zu sehen.

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 2.961
  • Geschlecht: Männlich
    • Teile Beitrag
    • xos-shop.com | XOS-Shop ist ein umfangreiches "Open Source Webshop-System", welches per Webinterface administriert wird und an die Bedürfnisse des Betreibers angepasst werden kann.
Re: Geoblocking Anpassung - IF Abfrage in Kundenanmeldung
« Antwort #14 am: 01. Januar 2019, 20:12:48 »
[...]
Gibt es eine Möglichkeit in dem super funktionierenden code von hpzeller im Text
Zitat
var nichtD = "Text wenn nicht Deutschland";
Länderflags anzuzeigen?
[...]

Versuch es mal so, mit SVG Landesflaggen.

Code: XML  [Auswählen]
<div style="max-width: 50px; height: auto" title="english">
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 30">
  <clipPath id="t">
  <path d="M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z"/>
  </clipPath>
  <path d="M0,0 v30 h60 v-30 z" fill="#00247d"/>
  <path d="M0,0 L60,30 M60,0 L0,30" stroke="#fff" stroke-width="6"/>
  <path d="M0,0 L60,30 M60,0 L0,30" clip-path="url(#t)" stroke="#cf142b" stroke-width="4"/>
  <path d="M30,0 v30 M0,15 h60" stroke="#fff" stroke-width="10"/>
  <path d="M30,0 v30 M0,15 h60" stroke="#cf142b" stroke-width="6"/>
  </svg>
</div>
English text<br><br>
<div style="max-width: 50px; height: auto" title="français">
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3 2">
  <rect width="3" height="2" fill="#ED2939"/>
  <rect width="2" height="2" fill="#fff"/>
  <rect width="1" height="2" fill="#002395"/>
  </svg>
</div>
Texte français<br><br>
<div style="max-width: 50px; height: auto" title="italiano">
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3 2">
  <rect width="1" height="2" fill="#009246"/>
  <rect width="1" height="2" x="1" fill="#fff"/>
  <rect width="1" height="2" x="2" fill="#ce2b37"/>
  </svg>
</div>
Testo italiano<br><br>
 

[ Für Gäste sind keine Dateianhänge sichtbar ]

Quelle: https://github.com/hjnilsson/country-flags

PS:
Sei dir aber bewusst, Landesflaggen repräsentieren nicht generell eine Sprache.

Gruss
Hanspeter


Teile per facebook Teile per linkedin Teile per twitter

 


             
anything