public function processReorderFilterAction()
 {
     $baseId = (int) $this->_getParam('baseId');
     $from = $this->_getParam('from');
     $to = $this->_getParam('to');
     // utilizing the ORM in the meantime, but can be optimized
     $reportBase = new ReportBase();
     $reportBase->reportBaseId = $baseId;
     $reportBase->populate();
     $rows = array();
     if (strlen($reportBase->filters) > 0) {
         $filters = unserialize($reportBase->filters);
         foreach ($filters as $id => $filter) {
             if ($from == $id) {
                 $fromFilter = $filters[$id];
                 unset($filters[$id]);
                 break;
             }
         }
         if (isset($fromFilter)) {
             $tmpFilters = array();
             foreach ($filters as $id => $filter) {
                 $tmpFilters[$id] = $filter;
                 if ($to == $id) {
                     $tmpFilters[$from] = $fromFilter;
                 }
             }
             $filters = $tmpFilters;
         }
         foreach ($filters as $id => $filter) {
             $row = array();
             $row['id'] = $filter->id;
             $row['data'] = array();
             $row['data'][] = $filter->name;
             $row['data'][] = $filter->defaultValue;
             $row['data'][] = $filter->type;
             $row['data'][] = $this->_formatOptions($filter->options);
             $rows[] = $row;
         }
         $reportBase->filters = serialize($filters);
         $reportBase->persist();
     }
     $json = Zend_Controller_Action_HelperBroker::getStaticHelper('json');
     $json->suppressExit = true;
     $json->direct(array('rows' => $rows));
 }