Angenommen, bestimmtes Sortiment soll nur von Käufern gekauft werden können, die eine innländische (deutsche) Rechnungsanschrift oder Lieferanschrift haben… (also Sortiment, dass evtl. aus Markenschutzgründen, Steuer etc nur innländisch gekauft werden kann…).
Folgendes Modul fragt dies 1. in der Artikelbeschreibung ab (falls User eingeloggt) und später im Checkout. Falls Artikel mit Einschränkungen im WK liegen, werden diese aus dem WK gelöscht und der restliche WK neu berechnet.
1- Neue versteckte Kategorie mit id “oxnoforeign” anlegen (id über DB ändern)
2- Besagtes Sortiment der Kategorie zuordnen
3- im Template beim Button (in den WK) Abfrage [I]canBuy()[/I] und [I]isforforeign()[/I] aus skforeign.php
4- im Checkout kann dies mit der überschriebenen Methode [I]getcountry()[/I] aus skorder.php gefiltert werden
Modul läuft unter oxid 4.6.4., dürfte auch unter 4.7 laufen.
Moduldateien im Anhang.
Funktion ohne Gewähr.
Wie immer: Wer kein Backup macht ist selber schuld…
Bitte fleißig weiterentwickeln und wieder free posten.
ich habe mir dein Modul mal angeschaut. Vielen Dankerstmal für’s teilen. Hast du mal überlegt, das ganze auf GitHub zu stellen? Das entwickelt sich zur zentralen Modulplattform und ermöglicht eine einfachere Zusammenarbeit. Wenn du magst kann ich es auch in den OXIDprojects-Account einstellen.
Zum Modul an sich:
Du prüfst im Template mit eigenen Funktionen die aufgerufen werden. Das funktioniert, verhindert jedoch unter Umständen nicht, dass der User den Artikel denoch über die Standard-Methoden in den WK legen kann. Du könntest dich zum Beispiel in die normale addToBasket-Funktion einhängen und in die isBuyable, dann kommst du ozhne Templateanpassungen aus und der Kunde kann das Modul auch nicht austricksen.
Hallo Joscha,
vielen Dank für Deinen Post. Bitte stelle es in Github rein.
Ich muss mich mit Github erstmal einwenig vertraut machen.
Das Modul ist natürlich nocht nicht ganz optimal, und ist sicherlich, so wie Du es vorschlägst, ausbaufähig. Wenn ich mal wieder Zeit habe, werde ich es anpassen.
Danke und VG
Stephan