Как я могу изменить значение сеанса в другом нажатии кнопки в magento 1 - PullRequest
0 голосов
/ 27 февраля 2020

В моей корзине 3 кнопки. Один для приглашения, другой для продолжения покупок и третий для оформления заказа. Мне нужно проверить, какую кнопку я нажал в своем наблюдателе. Поэтому я использовал сессию, чтобы справиться с этим. Вот мой код сценария:

<script>
jQuery(document).ready(function () {
    jQuery("#invite-member-btn").click(function (e) {
         e.preventDefault();
        if(jQuery(".qty").val()!= jQuery(".qty").data("org-qty")){
            jQuery("#toast-cart").addClass("active");

        }
        else{
            <?php $session = Mage::getSingleton("checkout/session");
            $session->unsetData("purchase_mode_multiple_purchase");
            $session->setData("purchase_mode_multiple_purchase", 1);?>

            <?php //Mage::register('purchase_mode_multiple_purchase', true);?>
            jQuery("#toast-cart").removeClass("active");
             jQuery('#invite-member-btn').attr("disabled", true);
            jQuery("#brochureform").submit();
        }

    })

    jQuery("#btn-proceed-checkout").click(function(e){
        e.preventDefault();
        if(jQuery(".qty").val()!= jQuery(".qty").data("org-qty")){
         jQuery("#toast-cart").addClass("active");   

        }
        else{ 
            <?php $session = Mage::getSingleton("checkout/session");
            $session->unsetData("purchase_mode_multiple_purchase");
            $session->setData("purchase_mode_multiple_purchase", 0); ?>
            jQuery("#toast-cart").removeClass("active");
            jQuery('#btn-proceed-checkout').attr("disabled", true);
            jQuery("#brochureform").attr("action","<?php echo $this->getUrl('checkout/onepage/'); ?>");
            jQuery("#brochureform").submit()
        }
    });

    jQuery("#continue-shopping-btn").click(function(e){

        e.preventDefault();
        if(jQuery(".qty").val()!= jQuery(".qty").data("org-qty")){
         jQuery("#toast-cart").addClass("active");   

        }
        else{
            <?php //Mage::register('purchase_mode_multiple_purchase', true);?>
            <?php $session = Mage::getSingleton("checkout/session");
            $session->unsetData("purchase_mode_multiple_purchase");
            $session->setData("purchase_mode_multiple_purchase", 2);?>

            jQuery("#toast-cart").removeClass("active");
            jQuery('#btn-proceed-checkout').attr("disabled", true);
            jQuery("#brochureform").attr("action","<?php echo $this->getUrl(); ?>");
            jQuery("#brochureform").submit()
        }
    });

});

</script>

Но здесь переменная сеанса всегда возвращает значение 2 из последнего события нажатия кнопки. Если я нажму другую кнопку, событие нажатия будет запущено, но сессия всегда устанавливается с момента последнего нажатия

...