Frage zum Swagavailabiliycheck Plugin von Shopware

Auf der Suche nach einem gescheiten Lagerampel Plugin habe ich im Store nix gefunden. Also habe ich aus der Doku das Swagavailabiliycheck Plugin integriert welches auch seinen Dienst tut. Allerdings gibt es dort nur den Zustand “Verfügbar” und “Nicht Verfügbar”. Die Variable “Erscheinungsdatum” wird nicht geprüft. Da ich öfter Artikel einstelle die erst noch erscheinen würde ich den Kunden dieses auch gerne im Frontend schon anzeigen. Mein Code Ansatz: swagAvailabilityCheck.php if (!$article-\>getLastStock() || ($article-\>getLastStock() && $article-\>getMainDetail()-\>getInStock() && $article-\>availableFrom() \< date()) ) { $this-\>View()-\>assign('available', "vorbestellen"); return; } get_availability.tpl [code]{if $available === false}

 {s name=‘SwagAvailabilityCheckNotAvailable’}Nicht verfügbar{/s}
{elseif $available === “vorbestellen”}
 {s name=‘SwagAvailabilityCheckAvailable’}Vorbestellen{/s}
{else}
 {s name=‘SwagAvailabilityCheckAvailable’}Verfügbar{/s}
{/if}[/code]

Hi Benblub, was passiert denn wenn Du den Code von dir verwendest? Kommt eine Fehlermeldung? Das einzige was mir auffällt ist das Du den gleichen Snippet SwagAvailabilityCheckAvailable verwendest. Evtl. hilft es schon, wenn Du den Oberen umbenennst. {s name='SwagAvailabilityCheckAvailable'} {if $available === false} ...{s name='SwagAvailabilityCheckNotAvailable'}Nicht verfügbar{/s}... {elseif $available === "vorbestellen"} ...{s name='SwagAvailabilityCheckAvailable'}Vorbestellen{/s}... {else} ...{s name='SwagAvailabilityCheckAvailable'}Verfügbar{/s}... {/if}

Musste noch einiges am Code ändern aber nun tut es was soll :sunglasses: Es wird unterschieden zwischen vorbestellen, Verfügbar oder nicht Verfügbar. $heute = new DateTime(); if ($article-\>getMainDetail()-\>getReleaseDate() \> $heute) { $this-\>View()-\>assign('available', 'vorbestellen'); return; } elseif (!$article-\>getLastStock() || ($article-\>getLastStock() && $article-\>getMainDetail()-\>getInStock())) { $this-\>View()-\>assign('available', true); return; } else { $this-\>View()-\>assign('available', false); return; }

*Feintuning Versandzeit mit anzeigen.