Nachnahmeversand ab einen bestimmten Betrag

MyOOS hat einen Fehler, oder tut nicht das, was Ihr erwartet? Derartige "Unanehmlichkeiten" bitte hier.
Antworten
wolfschw
Beiträge: 396
Registriert: 01.03.2009, 21:23
Wohnort: Ilshofen
Kontaktdaten:

Nachnahmeversand ab einen bestimmten Betrag

Beitrag von wolfschw »

Hallo

Gibt es eine möglichkeit in der Zahlungsweise die Versandart per Nachnahme erst ab einen bestimmten
Betrag Sichtbar zu machen ?

Beispiel:

Kunde kauft einen Artikel im Warenwert von 5 EUR
Wählt dann die Versandart aus, und im nächsten Schritt der Zahlungsweise sollte dann das
Optionsfeld Versand per Nachnahme nicht auftauchen.
Wenn der Kunde seinen Warenwert erhöht z.B. 20 EUR sollte das Optinsfeld per Nachnahme wieder erscheinen.

gruß

Wolfgang
r23
Beiträge: 2623
Registriert: 18.09.2008, 05:56
Wohnort: Hagen
Kontaktdaten:

Beitrag von r23 »

Hallo,

in der funktion function cod() {
~/shop/inlcudes/modules/payment/cod.php

kannst du nach

Code: Alles auswählen

      $this->sort_order = (defined('MODULE_PAYMENT_COD_SORT_ORDER') ? MODULE_PAYMENT_COD_SORT_ORDER : null);

Das Modul in einer Abhängikeit ein oder auschalten

Code: Alles auswählen

if ($this->enabled == true) {

    Hier deine Anforderungen {
          $this->enabled = false;
   }
}

Damit du deine Bedinungen formulieren kannst, kannst du vorher in

Code: Alles auswählen

    function cod() {
      global $oOrder, $aLang;
dir ansehen, was in der $oOrder->info['total] steht... evtl. musst du noch die Versandkosten abziehen $oOrder->info['shipping_cost]

Code: Alles auswählen

$sTotal = $oOrder->info['total] - $oOrder->info['shipping_cost];
if $sTotal < 5 {
    $this->enabled = false;
}

Code: Alles auswählen

    function cod() {
      global $oOrder, $aLang;

      $this->code = 'cod';
      $this->title = $aLang['module_payment_cod_text_title];
      $this->description = $aLang['module_payment_cod_text_description];
      $this->enabled = (defined('MODULE_PAYMENT_COD_STATUS') && (MODULE_PAYMENT_COD_STATUS == 'True') ? true : false);
      $this->sort_order = (defined('MODULE_PAYMENT_COD_SORT_ORDER') ? MODULE_PAYMENT_COD_SORT_ORDER : null);

     if ($this->enabled == true) {
          $sTotal = $oOrder->info['total] - $oOrder->info['shipping_cost];
          if ($sTotal < 5) {
              $this->enabled = false;
          }
     }
      if ((int)MODULE_PAYMENT_COD_ORDER_STATUS_ID > 0) {
        $this->order_status = MODULE_PAYMENT_COD_ORDER_STATUS_ID;
      }

      if (is_object($oOrder)) $this->update_status();
    }
Hoffe die Antwort hilft weiter

ralf
wolfschw
Beiträge: 396
Registriert: 01.03.2009, 21:23
Wohnort: Ilshofen
Kontaktdaten:

Beitrag von wolfschw »

Ok

Funktioniert

Vielen Dank

gruß

Wolfgang
Antworten