Dodaj niestandardowe zamówienie rabatowe w całości za pomocą przycisku

Mam moduł z rabatem niestandardowym i jest OK.

config.xml:

<sales>
   <quote>
       <totals>
             <aver> 
                <class>Dani_Prueba_Model_Total_Aver</class> 
                <after>subtotal</after> 
             </aver>
        </totals>
    </quote>
</sales>

Mój moduł:

<?php
class Dani_Prueba_Model_Total_Aver extends Mage_Sales_Model_Quote_Address_Total_Abstract{

    public function collect(Mage_Sales_Model_Quote_Address $address){

        $baseDiscount = 2.5;
        $discount = Mage::app()->getStore()->convertPrice($baseDiscount);

        $address->setCustomDiscount($baseDiscount);

        $address->setBaseGrandTotal($address->getBaseGrandTotal() - $baseDiscount);
        $address->setGrandTotal($address->getGrandTotal() - $discount);

        return $this;
    }

    public function fetch(Mage_Sales_Model_Quote_Address $address){
        $this->setCode('aver');
        $amount = $address->getCustomDiscount();
            if ($amount != 0){
                $address->addTotal(array(
                'code'  => $this->getCode(),
                'title' => 'Custom Discount',
                'value' => $amount
            ));
        }
        return $this;
    }
}

To jest OK, a kiedy dodam produkt do koszyka, automatycznie zastosuję mój rabat niestandardowy.

Ale teraz muszę to zrobić za pomocą przycisku. Kiedy dodaję produkty do koszyka, nie stosuję zniżki i mam poprawną sumę. Ale gdy klikam przycisk, zastosuj rabat niestandardowy, a innym przyciskiem „Anuluj” anuluj rabat. Potrzebuję trochę podobnego do funkcji kodu kuponu.

Jak to robię??

questionAnswers(3)

yourAnswerToTheQuestion