XH-Shop

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Mon Jul 31, 2017 1:00 pm

Hartmut wrote:Die Systemprüfung (XHShop-About) zeigt dies (Dezimalkomma in der Versandstaffelung) als Fehler an, allerdings ist die Systemprüfung für den Anwender bei der Installation interessant und nicht (so sehr) im lfd. Betrieb wenn die eigentliche Installation abgeschlossen ist und wird deswegen leicht übersehen.
Optimal ist die Lösung mit der Systemprüfung nicht, aber zumindest für Version 1.0 würde ich es auch aus Zeitgründen lieber so belassen. Der Shopbetreiber muss halt beim XH-Shop-Plugin dort immer wieder mal nachschauen.
Hartmut wrote:Wann werden die Versandkosten berechnet? Beim verlassen des Einkaufskorbes oder wenn die Bestellübersicht aufgerufen wird? Werden die Werte eventuell zwischengespeichert, die dann eine mögliche Änderung in der Shopkonfig nicht mitbekommen?
Die Versandkosten werden beim jedem Schritt des Checkout berechnet, sobald der Käufer das Land angegeben hat. Der Wert wird dann in der Session gespeichert. Es könnte schon sein, dass die Neu-Berechnung an einer Stelle aber nicht erfolgt (wäre natürlich ein Bug).
frase wrote:Die genannte Debug-Meldung kommt nämlich nur, wenn in der catalog.php irgendetwas falsch steht. In diesem Fall wohl: ['weight'] = '0,10';
Denkbar, aber wie kommt der Wert dorthin. Wellrad 1.2.1 hat das "Gewicht" als float gespeichert (also ohne Anführungszeichen), und würde es ['weight']=0,10 heißen, käme es beim Einlesen von catalog.php zu einem fatalen Fehler.

Da kommt nämlich eine leidige Eigenart von PHP ins Spiel, nämlich das bei der Wandlung von Fließkommazahlen in Zeichenketten das aktive Locale berücksichtigt wird (aber nicht im umgekehrten Fall).

Code: Select all

setlocale(LC_ALL, 'German_Germany.1252'); // Windows
var_dump((string) 0.1); // => string(3) "0,1"
var_dump((float) (string) 0.1); // => double(0)   
Daher wurde auch das Speichern nach catalog.php so geändert, dass nun immer Zeichenketten gespeichert werden, so dass die leidige Hin- und Herwandlung nicht mehr erforderlich ist (intern wird nun mit Zeichenketten gerechnet). Es ist denkbar, dass bei der Verwendung von alten catalog.php noch nicht alle Probleme gelöst sind.

Auf jeden Fall aber sollten bei der manuellen Bearbeitung von catalog.php unbedingt alle Preise und Gewichte als Zeichenketten (also in Anführungszeichen) und mit Dezimalpunkt eingegeben werden.
frase wrote:Aber eigentlich auch nicht ganz. Man wird wohl eine Einstellung nehmen, die dem Gebietsschema entspricht, und dann stimmt es wieder.
Na ja, normalerweise schon. Aber z.B. bei einem mehrsprachigen Shop (de/en) wird man für en einen Dezimalpunkt wählen, aber die Eingaben erwarten ein Dezimalkomma.
frase wrote:Könnte ein Proxy-(Cache ) irgendeine Rolle spielen?
Auf jeden Fall nicht auszuschließen. Mit einem zu heftig eingestellten OPcache dürfte es Probleme geben, da Änderungen an den Produktinformationen nicht unbedingt übernommen werden. Da sollten wir analog zur Behandlung von Konfigurationsdateien nachbessern. Ich glaube aber eher nicht, dass das bei Hartmut das Problem ist.
Last edited by cmb on Mon Jul 31, 2017 1:18 pm, edited 1 time in total.
Reason: Beispiel aussagekräftiger gemacht
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Jul 31, 2017 1:17 pm

Habe im Wiki bei "Artikel bearbeiten" die zwei Passüssers mit den Dezimalstellen entfernt.
Den Hinweis in meinem Post habe ich durchgestrichen.

Bleibt wirklich die Frage: Wie kommt ein Komma in den Katalog - und warum werden immer noch falsche Versandkosten berechnet?

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Mon Jul 31, 2017 1:21 pm

frase wrote:Habe im Wiki bei "Artikel bearbeiten" die zwei Passüssers mit den Dezimalstellen entfernt.
Danke. Aber gerade fand ich:
Currently no mobile browsers and very few desktop browsers support using commas for languages where commas are used as decimal separators.
:cry:
Christoph M. Becker – Plugins for CMSimple_XH

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Jul 31, 2017 1:25 pm

cmb wrote:Danke. Aber gerade fand ich:
Hm, wird denn nicht in jedem Fall ein Punkt gespeichert?
Sollte in einem solchen Browser jemand ein Komma eingeben - was passiert dann?
Das wird doch abgelehnt - oder?

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Mon Jul 31, 2017 1:59 pm

frase wrote:Sollte in einem solchen Browser jemand ein Komma eingeben - was passiert dann?
  • IE 11 schluckt das Komma brav, und schickt 9,99 wie eingegeben an den Server, wo dann das Komma ignoriert wird (weil <input type=number> eigentlich immer einen Dezimalpunkt schicken sollte).
  • Edge beschwert sich über ein Komma.
  • Firefox wandelt das Komma in einen Punkt (zeigt aber nicht unbedingt zwei Nachkommastellen, sondern lässt abschließende Nullen weg, und zeigt beim Neuladen einen Punkt statt dem Komma).
  • Chrome tut wie er soll.
Weiß nicht, wie das bei anderen Browser(versione)n ist. Zumindest bezüglich IE 11 müssen wir uns was einfallen lassen. Am besten, wie man den aus der Welt schafft. Denn wenn ich richtig informiert bin, kann Edge under Windows 8.1 nicht verwendet werden, aber 8.1 hat noch bis Januar 2013 erweiterten Support. :roll:
frase wrote:Bleibt wirklich die Frage: Wie kommt ein Komma in den Katalog - und warum werden immer noch falsche Versandkosten berechnet?
Wie das Komma dahin kommt, weiß ich nicht. Und ob wirklich falsche Versandkosten berechnet werden, weiß ich auch nicht. Bei den bisherigen Beispielen hatte ja anderes nicht gestimmt, oder?
Christoph M. Becker – Plugins for CMSimple_XH

Hartmut
Posts: 553
Joined: Sat Nov 05, 2011 6:13 pm
Location: Butzbach, Deutschland
Contact:

Re: XH-Shop

Post by Hartmut » Mon Jul 31, 2017 4:19 pm

cmb wrote: Optimal ist die Lösung mit der Systemprüfung nicht, aber zumindest für Version 1.0 würde ich es auch aus Zeitgründen lieber so belassen. Der Shopbetreiber muss halt beim XH-Shop-Plugin dort immer wieder mal nachschauen.
Als Übergangslösung wäre dieser Workaround OK und sollte für eine künftige Version auf die ToDo-Liste kommen.
cmb wrote: Die Versandkosten werden beim jedem Schritt des Checkout berechnet, sobald der Käufer das Land angegeben hat. Der Wert wird dann in der Session gespeichert. Es könnte schon sein, dass die Neu-Berechnung an einer Stelle aber nicht erfolgt (wäre natürlich ein Bug).
Danke für die Info. Da in der Session die Bestelldaten (bestellte Artikel) somit mehr oder weniger statisch sind, wäre dies ein möglicher Ansatzpunkt für die Fehlersuche.
cmb wrote:
frase wrote: Die genannte Debug-Meldung kommt nämlich nur, wenn in der catalog.php irgendetwas falsch steht. In diesem Fall wohl: ['weight'] = '0,10';
Denkbar, aber wie kommt der Wert dorthin. Wellrad 1.2.1 hat das "Gewicht" als float gespeichert (also ohne Anführungszeichen), und würde es ['weight']=0,10 heißen, käme es beim Einlesen von catalog.php zu einem fatalen Fehler.
cmb wrote:
frase wrote: Bleibt wirklich die Frage: Wie kommt ein Komma in den Katalog - und warum werden immer noch falsche Versandkosten berechnet?
Wie das Komma dahin kommt, weiß ich nicht. Und ob wirklich falsche Versandkosten berechnet werden, weiß ich auch nicht. Bei den bisherigen Beispielen hatte ja anderes nicht gestimmt, oder?
In "meiner" catalog.php sind die Artikelpreise und deren Gewicht mit einem Dezimalpunkt eingetragen und nicht mit einem Dezimalkomma!
Die catalog.php enthält nur die Demo-Artikel und einen neuen Artikel, den ich übers Backend angelegt habe. Es wurde bei der catalog.php weder ein Datenimport noch eine manuelle Bearbeitung durchgeführt.
Das Dezimalkomma scheint wohl durch PHP und / oder dem Browser für den Anwender sichtbar werden.
Das Thema mit dem falschen Warenwert (als Summe der Einzelpreise) und der zuviel ausgewiesenen (unterschiedlichen MWST) bei nur einem Arikel im Warenkorb habe ich (mangels Zeit) noch nicht versucht zu reproduzieren.
frase wrote: Na gut, dann ist die Beschreibung im Wiki falsch :(
Aber eigentlich auch nicht ganz. Man wird wohl eine Einstellung nehmen, die dem Gebietsschema entspricht, und dann stimmt es wieder.
Mich wundert nur die Debug-Meldung. Die kommt doch nur, wenn irgendwo (in der catalog.php) ein Komma steht - was eigentlich nicht vorkommen dürfte.
Ich denke einmal dass die Beschreibung im Wiki erst dann inhaltlich "wasserdicht" erstellt werden kann, wenn das eigentliche Problem / Ursache zumindest bekannt ist. Auf jedenfall sollte die Doku dann so formuliert werden, dass ein "normaler" Anwender dies unmissverständlich verstehen und umsetzen kann.

Viele Grüße
Hartmut

------------------
Update (19:05 Uhr):
in der config.php war eben "0,5==2.00" anstelle von "0.5==2.00" gespeichert gewesen. (Heute Vormittag war im Backend im IE auf einem anderen PC ein "0.5==2.00" sichtbar.)
Ich habe eben mit dem aktuellen FF und IE in der Admin-Menü XH-Shop Konfiguration den "0.5" Wert manuell eingetragen und anschließend gespeichert. Jeweils danach einem Download von config.php durchgeführt und bei einer Sichtung mit Notepad++ war beides mal "0.5==2.00" eingetragen gewesen.
Anschließend habe ich den gleichen Artikel (wie heute Mittag) zuerst 1x und danach 3x in den Warenkorb gelegt und die Übersichtseite (Schritt 3 des Bestellvorganges) angesehen.
In allen 4 Fällen wurden die Versandkosten (2 €) richtig angezeigt.
Anschließend wurde ein weiterer anderer Artikel mit "Gewicht: 0.1 kg" dem Warenkorb hinzugefügt. Bei 5 Artikeln mit jeweils "0.1 kg" wurde als Versandkosten 2 € angezeigt und bei 5 Artikeln mit jeweils "0.1 kg" wurde die nächst höhere Versandkosten Staffel richtig angezeigt.
Der Fehler ist derzeit nicht mehr reproduzierbar und die Versandkosten werden richtig angezeigt. :?

frase
Posts: 5085
Joined: Thu Apr 21, 2016 6:32 am
Location: Saxony
Contact:

Re: XH-Shop

Post by frase » Mon Jul 31, 2017 5:13 pm

Hartmut wrote:In "meiner" catalog.php sind die Artikelpreise und deren Gewicht mit einem Dezimalpunkt eingetragen und nicht mit einem Dezimalkomma!
Das macht es noch mysteriöser.
Hartmut wrote:Ich denke einmal dass die Beschreibung im Wiki erst dann inhaltlich "wasserdicht" erstellt werden kann, wenn das eigentliche Problem ...
Da hast du selbstverständlich recht.
Hätten wir das aber so gemacht, gäbe es die Doku erst in ca. einem Monat. Tatsächlich haben sich während der Entwicklung oft Änderungen ergeben. Du kennst das ja ... :cry:

Hartmut
Posts: 553
Joined: Sat Nov 05, 2011 6:13 pm
Location: Butzbach, Deutschland
Contact:

Re: XH-Shop

Post by Hartmut » Mon Jul 31, 2017 7:45 pm

Ich habe mit dem XH-Shop noch ein wenig aus der Sicht des Käufers "gespielt" und es traten keine Fehler mehr auf.

Ich habe allerdings noch ein paar Fragen zum XH-Shop. ;-)

Wenn ein Artikel schon im Warenkorb liegt und zu einem späteren Zeitpunkt noch einmal auf den Button "In den Warenkorb" geklickt wird, bleibt die Anzahl des Artikels im Warenkorb unverändert.
Soll dies so bleiben, oder soll die Anzahl im Warenkorb um die Anzahl neben dem Button "In den Warenkorb" stehenden Menge erhöht werden?

Kann noch eine weitere Zahlungsweise (ergänzend zu Vorkasse, Nachname, Rechnung) als optionale Zahlweise in dem Bestell-/Kontaktformular (2. Bestellschritt) eingeblendet werden?
Idee und Hintergrund:
Nach dem Absenden der Bestellung (Jetzt bestellen) soll eine "Anfrage einer Bestellung" an den Shopbetreiber gesendet werden, damit er die Bestellung erst (manuell) prüfen kann, bevor er anschließend eine Bestellbestätigung an den Auftraggeber versendet.
Dafür wäre es praktisch wenn PayPal, Vorkasse/Überweisung, .... durch den Auftraggeber ausgewählt werden kann, aber noch keine Zahlung vor der Bestellbestätigung erfolgt. (Falls die eingegangene Bestellung vom Shopbetreiber abgelehnt wird und der vorab überwiesenes Rechnungsbetrag zurück überwiesen werden muss.)

Viele Grüße
Hartmut

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: XH-Shop

Post by cmb » Mon Jul 31, 2017 9:19 pm

Hartmut wrote:Als Übergangslösung wäre dieser Workaround OK und sollte für eine künftige Version auf die ToDo-Liste kommen.
Das habe ich nun vermerkt.
Hartmut wrote:in der config.php war eben "0,5==2.00" anstelle von "0.5==2.00" gespeichert gewesen. (Heute Vormittag war im Backend im IE auf einem anderen PC ein "0.5==2.00" sichtbar.)
Du meinst bei forwarding_expenses? Dann sollte es übrigens nur ein Gleichheitszeichen sein. Und dass hier ein Komma steht, kann ich mir eigentlich nur dadurch erklären, dass es vom Benutzer eingegeben wurde. Das Eingabe-Feld ist eine Textarea, und da sollte der Browser keine Dezimalkommas anzeigen. Und der gesamte Text dieser Konfigurationsoption wird vom Shop-Plugin auch nicht konvertiert oder gar neu aufgebaut. Da sollte es ebenfalls keine Probleme geben.
Hartmut wrote:Wenn ein Artikel schon im Warenkorb liegt und zu einem späteren Zeitpunkt noch einmal auf den Button "In den Warenkorb" geklickt wird, bleibt die Anzahl des Artikels im Warenkorb unverändert.
Es ist tatsächlich so, dass die im Warenkorb gespeicherte Anzahl immer durch die zuletzt gewählte Anzahl ersetzt wird. Das Thema wurde bereits besprochen, und auf eine spätere Version verschoben.
Hartmut wrote:Kann noch eine weitere Zahlungsweise (ergänzend zu Vorkasse, Nachname, Rechnung) als optionale Zahlweise in dem Bestell-/Kontaktformular (2. Bestellschritt) eingeblendet werden?
Ja, das ist grundsätzlich durch zusätzliche Payment-Module möglich. Diese können u.U. recht einfach (selbst) entwickelt werden, siehe die Doku unter https://github.com/cmsimple-xh/xhshop/b ... Module.php.
Hartmut wrote:Nach dem Absenden der Bestellung (Jetzt bestellen) soll eine "Anfrage einer Bestellung" an den Shopbetreiber gesendet werden, damit er die Bestellung erst (manuell) prüfen kann, bevor er anschließend eine Bestellbestätigung an den Auftraggeber versendet.
Mir scheint, dafür braucht man kein eigenes Zahlungsmodul. Ich sehe eine solche "Bestellung" als etwas was der ein oder andere Shopbetreiber einzig anbieten möchte – nicht als etwas, was der Kunde aussuchen sollte. Dann müssten nur die entsprechenden Sprachvariablen und E-Mail-Templates angepasst werden, und man aktiviert nur eines der einfachen Zahlungsmodule (meinetwegen "Vorkasse", das eben entsprechend umbenannt wird). Wollte man das updatesicherer durch ein eigenes Zahlungsmodul machen, dann würde zumindest bei der jetzigen Architektur alles deutlich aufwendiger (u.U. auch bzgl. Updates). Denn leider ist selbst das Paypal-Zahlungsmodul (und das ist bisher das einzige, was Zahlungsmodule als eigentständige Objekte überhaupt wirklich rechtfertigt) nicht wirklich eigenständig, und wird (zwecks IPN-Behandlung) direkt vom Plugin-Core unterstützt.
Christoph M. Becker – Plugins for CMSimple_XH

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: XH-Shop

Post by lck » Tue Aug 01, 2017 11:50 am

Tolle Arbeit, ein großes Lob an die Macher! Wie ich diesem Thread entnehme, wird es auch noch einiges zu tun geben.

Getestet habe ich nur mal oberflächlich, also den Shop so wie er ausgeliefert wird und das sieht doch gut aus, auch das Wiki ist beispielhaft gemacht!
Folgende Punkte sind mir dazu aufgefallen:
- Sollte man die Anzahl der bestellbaren Einzel-Artikel begrenzen, auf 2-3 Stellen? Bisher kann man theoretisch auch zig Millionen/Milliarden bestellen
- Bestellformular "Ihre Kontaktdaten". Erforderliche Angaben evtl. per * Kennzeichnen und Legende für * unten einfügen
- Lokal unter Xampp kann anscheinend keine Bestellung abgeschickt werden (Order email ist in der Konfig eingetragen), obwohl die Internet-Verbindung aktiv ist. Online, am Webspace klappt's.
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

Post Reply