Shopsystem ShopPilot

ShopPilot => SSP - Shop Server Pages => Thema gestartet von: dobra am Juli 16, 2007, 07:44:09

Titel: Rabattzeile im WK ausblenden
Beitrag von: dobra am Juli 16, 2007, 07:44:09
Hallo,

Einige Stammkunden bekommen bei mir 5% Treuerabatt.
Ich möchte das - NUR für diese Kunden - auch im WK anzeigen.

Für Kunden, die keinen Treuerabatt haben, soll die ganze Zeile ausgeblendet werden (und nicht 0,00% angezeigt)

ungefähr so:
<div __kunde::rabatt__>
  <tr >
    <td class="wkl" colspan="2"></td>
    <td class="wkst" bgcolor="#F5F5F5" colspan=2 align="right" valign="top">&nbsp;__rabatttext__&nbsp;</td>
    <td class="wkr" colspan=2 bgcolor="#F5F5F5" align="center" valign="top" nowrap><b>__myrabatt__</b>
  </tr>
</div>

<!--spmacro:module(kunde)
sub rabatt{
   my $x = ssp::get_cart_myrabatt();
    if ($x =~ "0%") {
        main::mprint(qq|style="display:none; visibilty:hidden;"|);
    }
    return "noinc";
   }
-->

Aber
1.) ich komme nicht dahinter, wie ich die Abfrage (blau) machen kann ?
2.) auch wenn ich <div style="display:none; visibilty:hidden;"> <tr> ... </tr> </div> schreibe, wird die Zeile nicht ausgeblendet?

Ist der Lösungsansatz schon falsch?
Titel: Re: Rabattzeile im WK ausblenden
Beitrag von: ahe am Juli 16, 2007, 08:46:31
Hallo dobra,

Sie können beim Händler einstellen, ob der Rabatt bei Wert 0 angezeigt wird.
Und zwar unter dem Reiter Reiter "Rabatt", Punkt "Auch wenn Wert 0,00 anzeigen".
Titel: Re: Rabattzeile im WK ausblenden
Beitrag von: dobra am Juli 16, 2007, 09:04:57
Hallo ahe,

Der Haken bei "Auch wenn Wert 0,00 anzeigen" ist NICHT gesetzt - wird trotzdem im WK angezeigt

(http://www.woll-insel.at/Bilder/H-Rabatt.jpg)
(http://www.woll-insel.at/Bilder/WK.gif)

es soll auch nicht nur der Text sondern die ganze Zeile ausgeblendet werden !)

<tr valign="top" >
    <td class="wkl" align="left" colspan="2">Artikelanzahl:&nbsp;__gesamtanzahl__</td>
    <td class="wkst" bgcolor="#DCDCDC" colspan="2" align="right" nowrap>&nbsp;Warenwert</td>
    <td class="wkr" colspan=2 bgcolor="#DCDCDC" align="center" nowrap>&nbsp;__wkprodsum__</td>
  </tr>
  <tr valign="top" >
    <td class="wkl" colspan="2"></td>
    <td class="wkst" bgcolor="#F5F5F5" colspan="2" align="right" nowrap>&nbsp;Versandkosten</td>
    <td class="wkr" colspan=2 bgcolor="#F5F5F5" align="center" nowrap>&nbsp;__versk::versk__ </td>
  </tr>
  <tr valign="top" >
    <td class="wkl" colspan="2">&nbsp;</td>
    <td class="wkst" bgcolor="#F5F5F5" colspan="2"  align="right" nowrap >&nbsp;__zahlarttext__</td>
    <td class="wkr" colspan=2 bgcolor="#F5F5F5" align="center" nowrap>&nbsp;__zahlartbetrag__</td>
  </tr>
  <tr >
    <td class="wkl" colspan="2"></td>
    <td class="wkst" bgcolor="#F5F5F5" colspan=2 align="right" valign="top">&nbsp;__rabatttext__&nbsp;</td>
    <td class="wkr" colspan=2 bgcolor="#F5F5F5" align="center" valign="top" nowrap><b>__myrabatt__</b>
  </tr>
  <tr >
    <td class="wkl" colspan="2">alle Preise incl. gesetzlicher MwSt</td>
    <td class="wkst" bgcolor="#F5DEB3" colspan=2 align="right" valign="top">&nbsp;Rechnungsbetrag:&nbsp;</td>
    <td class="wkr" colspan=2 bgcolor="#F5DEB3" align="center" valign="top" nowrap><b>__gesamtpreis__</b>
  </tr>


Der Rabatt (__myrabatt__) ist nur beim Kunden eingetragen
(http://www.woll-insel.at/Bilder/K-Rabatt.gif)
Titel: Re: Rabattzeile im WK ausblenden
Beitrag von: ahe am Juli 16, 2007, 09:48:16
Den Kundenrabattsatz können Sie per SSP so auslesen:

ssp::get_var_user('rabatt')

Zum Ausblenden der Zeile:
Um ein tr herum kann kein div liegen. Eine HTML-Zeile per Style ausblenden geht leider nicht wirklich.
Ich würde die komplette Zeile inkl. Inhalt per SSP ausgeben, falls ssp::get_var_user('rabatt') > 0.
So ähnlich ist es auch im Konfiguratorshop, siehe "printBenutzerdefinierteFelder".
Die Funktion gibt auch die komplette Zeile im WK aus.
Titel: Re: Rabattzeile im WK ausblenden
Beitrag von: dobra am Juli 16, 2007, 19:03:46
Danke ahe,

so geht's  :D

<!--spmacro:module(kunde)
sub rabatt{
    if ( ssp::get_var_user('rabatt') > 0) {
  $out = qq{  <tr >
    <td class="wkl" colspan="2"></td>
    <td class="wkst" bgcolor="#F5F5F5" colspan=2 align="right" valign="top">&nbsp;Treuerabatt&nbsp;</td>
    <td class="wkr" colspan=2 bgcolor="#F5F5F5" align="center" valign="top" nowrap><b>__myrabatt__</b>
  </tr> };
           main::mprint($out);
    }
}
-->


bei der Gelegenheit noch eine Frage: ist es eigentlich egal, ob ich
qq | ... |; oder
qq { ... }; schreibe?
bzw. wann soll ich die eine oder andere Vartiante verwenden?
Titel: Re: Rabattzeile im WK ausblenden
Beitrag von: ahe am Juli 16, 2007, 19:15:03
Es ist egal, welches Zeichen Sie verwenden.
Sie sollten nur darauf achten, dass die Zeichen dann nicht innerhalb des Textes auftauchen.
Andernfalls müssten sie dort escaped werden.