Добавление необходимого поля


Я использую модуль для обработки возвратов товаров, но, к сожалению, поле комментария не требуется. Я хотел бы добавить чек, который люди должны заполнить, чтобы объяснить, ПОЧЕМУ они возвращают товар.

Насколько я могу судить, это должно быть в этом фрагменте кода:

        if ($p_qty == true) {

        $rma->save();

        //set sub products information
        foreach ($rmaProducts as $rmaProduct) {
            $id = $rmaProduct->getitem_id();

            //check
            if (isset($data['rp_qty_' . $id])) {
                $qty          = $data['rp_qty_' . $id];
                $description  = $data['rp_description_' . $id];
                $reason       = $data['rp_reason_' . $id];
                $request_type = $data['rp_request_type_' . $id];
                $rma->updateSubProductInformation($rmaProduct, $qty, $description, $reason, null, $request_type);
            }

        }

        //notify admin
        $rma->NotifyCreationToAdmin();

        //confirm & redirect
        Mage::getSingleton('customer/session')->addSuccess($this->__('Product Return successfully sent.'));
        $this->_redirect('ProductReturn/Front/View', array('rma_id' => $rma->getId()));
    } else {

        Mage::getSingleton('customer/session')->addError($this->__('Please select quantities to return.'));
        $this->_redirect('ProductReturn/Front/NewRequest', array('order_id' => $data['rma_order_id']));
    }

Есть ли простой способ отредактировать это и сделать rp_reason обязательным?

Author: Raphael at Digital Pianism, 2016-09-12

1 answers

Ну, вы просто добавляете следующее перед своим кодом, который создает записи:

if (!Zend_Validate::is($data['rp_reason_'.$id], 'NotEmpty')) {
    Mage::throwException($this->__('Please provide a reason.'));
}

Пожалуйста, обратите внимание, что вам придется добавить следующий блок try/catch вокруг вашего кода:

try {
    // Your code here
}
catch (Mage_Core_Exception $e) {
    Mage::getSingleton('core/session')->addException($e);
    $this->_redirectReferer();
}
 1
Author: Raphael at Digital Pianism, 2016-09-12 09:06:31