Example #1
0
 /**
  * Initializes the filter params Varien_Object, and saves it to the session
  *
  * @param $registryNode
  * @return Varien_Object
  */
 public function initDateFilterParams($registryNode)
 {
     $request = Mage::app()->getRequest();
     if (!$request->getParam('form_filter')) {
         $input = null;
         //Mage::getSingleton('adminhtml/session')->getData($registryNode);
         if (!$input) {
             if ($input = Mage::getSingleton('adminhtml/session')->getData($registryNode)) {
                 // do nothing...
             } else {
                 $input = new Varien_Object();
                 $input->setStandard($this->_getDefaultRange());
             }
         }
     } else {
         $input = new Varien_Object(get_object_vars(json_decode($request->getParam('form_filter'))));
     }
     if ($input->getStandard()) {
         switch ($input->getStandard()) {
             case "next":
                 $range = $this->_getNextRange($registryNode);
                 break;
             case "previous":
                 $range = $this->_getPreviousRange($registryNode);
                 break;
             default:
                 $range = $this->getRange($input->getStandard());
         }
         $input->setStandard($range->getIdentifier());
     } else {
         $range = $this->_generateCustomRange($input->getStart(), $input->getEnd());
     }
     $input->setRange($range);
     $this->_dateRange = $input;
     Mage::getSingleton('adminhtml/session')->setData($registryNode, $input);
     return $input;
 }