Neu Template Einstellung Telefonpflicht bei Bedingung

BlueEyePhoenix

Gut bekanntes Mitglied
3. Januar 2017
276
23
Hallo Community,

ich würde gern die Telefonnummer abfrage an eine Bedingung knüpfen. Dies soll so aussehen das wenn jemand einen Speditionsartikel in den Warenkorb legt die Telefonnummer pflicht wird. Leider kann ich nur die Angabe optional, ja oder nein auswählen. Würde es aber gern so einrichten dann geschaut wird ob ein Speditionsartikel im Warenkorb ist wenn ja dann Tel pflichtfeld wenn nein dann optional. Lässt sich das über eine Abfrage in einem Child-Template anpassen? Hat dies schonmal jemand versucht oder geht eine solche einstellung auch leichter?
Hilfe wäre echt nett.
 

martinwolf

Offizieller Servicepartner
SPBanner
6. September 2012
3.470
286

BlueEyePhoenix

Gut bekanntes Mitglied
3. Januar 2017
276
23
Dann schätze ich mal das das die inc_billing_adress.tpl betrifft. und dort dieser part angepasst werden muss

HTML:
    <div class="row">
            {if $Einstellungen.kunden.kundenregistrierung_abfragen_tel !== 'N'}
            <div class="col-xs-12 col-md-6">
                <div class="form-group float-label-control{if isset($fehlendeAngaben.tel)} has-error{/if}{if $Einstellungen.kunden.kundenregistrierung_abfragen_tel === 'Y'} required{/if}">
                    <label class="control-label" for="tel">{lang key="tel" section="account data"}</label>
                    <input
                    type="tel"
                    name="tel"
                    value="{if isset($cPost_var['tel'])}{$cPost_var['tel']}{elseif isset($Kunde->cTel)}{$Kunde->cTel}{/if}"
                    id="tel"
                    class="form-control"
                    placeholder="{lang key="tel" section="account data"}"
                    {if $Einstellungen.kunden.kundenregistrierung_abfragen_tel === 'Y'} required{/if}
                    />
                    {if isset($fehlendeAngaben.tel)}
                    <div class="form-error-msg text-danger"><i class="fa fa-warning"></i>
                        {if $fehlendeAngaben.tel == 1}
                            {lang key="fillOut" section="global"}
                        {elseif $fehlendeAngaben.tel == 2}
                            {lang key="invalidTel" section="global"}
                        {/if}
                    </div>
                    {/if}
                </div>
            </div>
            {/if}

muss ich da zuerst eine foreach schleife einbauen oder kann man irgendwie dierekt auf die KVersandart verweisen?
 

BlueEyePhoenix

Gut bekanntes Mitglied
3. Januar 2017
276
23
Naja bin schonmal soweit das ich mir die Versandklassen auslesen kann

Code:
{foreach name=positionen from=$smarty.session.Warenkorb->PositionenArr item=oPosv == 2}
 {if $oPosv->Artikel->kVersandklasse === 2}
    Versandart1   
    {else}
    Versandart2
    {/if}
    {/foreach}

Das mit dem Telefon auf required setzen hapert noch und was mir aufgefallen ist wenn ich 2 Artikel mit verschiedenen Versandklassen hätte würde er beide Bedingungen ausführen. Kann ich die Bedingung der foreachschleife irgendwie nur auf das eine Ergebnis für die eine If-Funktion umstellen?
 

BlueEyePhoenix

Gut bekanntes Mitglied
3. Januar 2017
276
23
Soweit so gut.
habe es soweit das es bei Einzelnen Produkten klappt nur sobald mehr Produkte in den Warenkorb gelegt werden klappt
HTML:
                {foreach name=positionen from=$smarty.session.Warenkorb->PositionenArr item=oPosv}
                {if $oPosv->Artikel->kVersandklasse == 2}
                <div class="form-group float-label-control{if isset($fehlendeAngaben.tel)} has-error{/if}{if $Einstellungen.kunden.kundenregistrierung_abfragen_tel !== 'Y'} required{/if}">
                    <label class="control-label" for="tel">{lang key="tel" section="account data"}</label>
                    <input
                    type="tel"
                    name="tel"
                    value="{if isset($cPost_var['tel'])}{$cPost_var['tel']}{elseif isset($Kunde->cTel)}{$Kunde->cTel}{/if}"
                    id="tel"
                    class="form-control"
                    placeholder="{lang key="tel" section="account data"}"
                    {if $Einstellungen.kunden.kundenregistrierung_abfragen_tel !== 'Y'} required{/if}
                    />
                    {if isset($fehlendeAngaben.tel)}
                    <div class="form-error-msg text-danger"><i class="fa fa-warning"></i>
                        {if $fehlendeAngaben.tel == 1}
                            {lang key="fillOut" section="global"}
                        {elseif $fehlendeAngaben.tel == 2}
                            {lang key="invalidTel" section="global"}
                        {/if}
                    </div>
                    {/if}
                </div>
            {/if}
               {if $oPosv->Artikel->kVersandklasse == 1 or $oPosv->Artikel->kVersandklasse == 3 or $oPosv->Artikel->kVersandklasse == 7 or $oPosv->Artikel->kVersandklasse == 9 and $oPosv->Artikel->kVersandklasse ! 2}
                <div class="form-group float-label-control{if isset($fehlendeAngaben.tel)} has-error{/if}{if $Einstellungen.kunden.kundenregistrierung_abfragen_tel === 'Y'} required{/if}">
                    <label class="control-label" for="tel">{lang key="tel" section="account data"}</label>
                    <input
                    type="tel"
                    name="tel"
                    value="{if isset($cPost_var['tel'])}{$cPost_var['tel']}{elseif isset($Kunde->cTel)}{$Kunde->cTel}{/if}"
                    id="tel"
                    class="form-control"
                    placeholder="{lang key="tel" section="account data"}"
                    {if $Einstellungen.kunden.kundenregistrierung_abfragen_tel === 'Y'} required{/if}
                    />
                    {if isset($fehlendeAngaben.tel)}
                    <div class="form-error-msg text-danger"><i class="fa fa-warning"></i>
                        {if $fehlendeAngaben.tel == 1}
                            {lang key="fillOut" section="global"}
                        {elseif $fehlendeAngaben.tel == 2}
                            {lang key="invalidTel" section="global"}
                        {/if}
                    </div>
                    {/if}
                </div>
            {/if}
            {/foreach}

Bekomme irgendwie den Parameter "Nicht" not oder ! so hin das das System diesen annimmt da bei != ungleich beides angezeigt wird. Weiß einer warum das nicht keine Funktion hat?
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Laden einer JS-Datei aus dem Nova im Child Template verhindern Templates für JTL-Shop 4
Neu Template Dateien Rendern im Plugin Plugins für JTL-Shop 6
Neu Child Template zieht die englischen Artikelbeschreibungen nicht Templates für JTL-Shop 3
Neu Artikelsticker mit Nova-Template Einrichtung von JTL-Shop4 11
Neu GPSR Verordnung - Wie handhabt ihr das im Shop mit dem Nova Template? Betrieb / Pflege von JTL-Shop 18
Neu jtl.evo.js über Child Template anpassen. Geht das? Technische Fragen zu Plugins und Templates 6
Neu Eigene Alerts im Template ausgeben bzw. hinzufügen Templates für JTL-Shop 0
Neu Child Template erstellen Technische Fragen zu Plugins und Templates 22
Neu Hotjar Code in Child Template header.tpl einbetten Templates für JTL-Shop 6
Neu Einbindung PHP. Datei ins Template - Wert aus PHP Datei lesen Templates für JTL-Shop 5
Neu Per Plugin Felder für das Newsletter-Anmeldungs-Template hinzufügen Technische Fragen zu Plugins und Templates 2
Neu Einstellung der Deutsche Post Portokasse JTL-ShippingLabels - Ideen, Lob und Kritik 16
Welche Einstellung für "Überverkäufe nicht mehr möglich" wenn "alle Lagerbestände null" sind. JTL-Wawi 1.9 5
Neu IT-Recht Kanzlei Plugin v 1.0.7 - Einstellung PDF anhängen deaktiviert sich immer wieder Plugins für JTL-Shop 16
Neu Einstellung Standardsortierung überschreibt individuelle Sortierung für "besondere Artikel" JTL-Shop - Fehler und Bugs 1

Ähnliche Themen