CheckoutArticleLessStock -> Artikel Attribut == "true"

Hallo, ich würde gerne bevor der Textbaustein “CheckoutArticleLessStock” im “Popup” Warenkorb ausgegeben wird wenn die Liefermenge nicht mehr zur Verfügung steht eine Bedingung einbauen. Wenn nämlich das attr6 vom Artikel gesetzt wird, möchte ich einen anderen Text ausgeben. Kann mir jemand einen Tipp geben in welcher .tpl Datei ich hier eingreifen muss, da ich alle durchsucht habe (über das Filesystem) und diesen Textbaustein nirgends gefunden habe. DANKE EUCH!

Hab gesehen das dies “hardcoded” im .php File ausgelesen wird, jemand einen Tipp wie man hier eingreifen kann? Ich würd ja auch die Bedingung gerne im Textbaustein direkt setzten (geht ja bei anderen auch), aber hier wird der Text “gefiltert” fürs HTML ausgegeben, also Klartext und die Bedingung dann einfach angezeigt :frowning: DANKE FÜR JEDE HILFE!

1 „Gefällt mir“

Bitte ein wenig mehr Informationen. Was hast du vor? Was hast du probiert? Was funktioniert nicht? Wie soll es aussehen? Viele Grüße

Das hier möchte ich ändern… Habe auch in den .tpl Dateien nach dem Textbaustein gesucht, nur kommt er da nicht vor da er nur in der checkout.php in der Funktion direkt ausgelesen wird: public function getInstockInfo($ordernumber, $quantity) { if (empty($ordernumber)) { return Shopware()-\>Snippets()-\>getNamespace("frontend")-\>get('CheckoutSelectVariant', 'Please select an option to place the required product in the cart', true); } $quantity = max(1, (int) $quantity); $instock = $this-\>getAvailableStock($ordernumber); $instock['quantity'] += $quantity; if (empty($instock['articleID'])) { return Shopware()-\>Snippets()-\>getNamespace("frontend")-\>get('CheckoutArticleNotFound', 'Product could not be found.', true); } if (!empty($instock['laststock'])||!empty(Shopware()-\>Config()-\>InstockInfo)) { if ($instock['instock']\<=0&&!empty($instock['laststock'])) { return Shopware()-\>Snippets()-\>getNamespace("frontend")-\>get('CheckoutArticleNoStock', 'Unfortunately we can not deliver the desired product in sufficient quantity', true); } elseif ($instock['instock']Snippets()-\>getNamespace("frontend")-\>get('CheckoutArticleLessStock', $result, true); return str\_replace(array('#0', '#1'), array($instock['instock'], $instock['quantity']), $result); } } return null; } Nur dort kann ich nicht eingreifen oder? Danke nochmals für jeden Tipp.

1 „Gefällt mir“

Oh ich … habs gefunden, jetzt beim Zusammenschreiben. Die Information wird in „$sBasketInfo“ gespeichert und diese ist im .tpl „ajax_add_article.tpl“ und „error_messages.tpl“ zu finden. Werde mein Glück versuchen und die „Lösung posten“ falls es nochmals jemand braucht. [code]

{if !$sBasketInfo}{s name=„AjaxAddHeader“}{/s}{else}{s name=‚AjaxAddHeaderError‘}Hinweis:{/s}{/if}

{* Close button *} {s name=‚LoginActionClose‘}{/s}
{if $sBasketInfo}

{$sBasketInfo}

 

{/if}[/code]

1 „Gefällt mir“

Ok … funktioniert doch nicht so einfach wie ich gedacht habe. Habe in der „ajax_add_article.tpl“ unter: [code]

{$sBasketInfo}

 

[/code] die notwendige If einbauen wollen, jedoch habe ich hier keinen Zugriff auf $Article.attr5 (Attribute vom Artikel). Den preis usw. kann ich ausgeben und abfragen, jedoch leider nicht die zusatzattribute. Hat noch jemand einen Vorschlag? (danke für jegliche Hilfe)

1 „Gefällt mir“