public function processEditAction()
 {
     $params = $this->_getParam('stats');
     $psd = new PatientStatisticsDefinition();
     if (!isset($params['guid']) || !(strlen($params['guid']) > 0)) {
         $params['guid'] = NSDR::create_guid();
     }
     $data = array();
     $id = (int) $params['patientStatisticsDefinitionId'];
     if ($id > 0) {
         $psd->patientStatisticsDefinitionId = $id;
         $psd->populate();
         if (isset($params['name']) && $psd->isNameExists($params['name'])) {
             $data['error'] = __('Name already exists') . ': ' . $params['name'];
         }
     }
     $psd->populateWithArray($params);
     if (!ctype_alpha(substr($psd->name, 0, 1))) {
         $data['error'] = __('Invalid name') . ': ' . $psd->name;
     }
     if (!isset($data['error'])) {
         $psd->persist();
         $data = $this->_generateStatsRow($psd);
     }
     $json = Zend_Controller_Action_HelperBroker::getStaticHelper('json');
     $json->suppressExit = true;
     $json->direct($data);
 }