public function saveAction()
 {
     $values = Zend_Json::decode($this->getParam("data"));
     // convert all special characters to their entities so the xml writer can put it into the file
     $values = array_htmlspecialchars($values);
     try {
         $sphinx_config = new SphinxSearch_Config();
         $sphinx_config->writeSphinxConfig();
         $plugin_config = new SphinxSearch_Config_Plugin();
         $config_data = $plugin_config->getData();
         $config_data["path"]["pid"] = $values["sphinxsearch.path_pid"];
         $config_data["path"]["querylog"] = $values["sphinxsearch.path_querylog"];
         $config_data["path"]["log"] = $values["sphinxsearch.path_logfile"];
         $config_data["path"]["indexer"] = $values["sphinxsearch.path_indexer"];
         $config_data["path"]["phpcli"] = $values["sphinxsearch.path_phpcli"];
         $config_data["path"]["searchd"] = $values["sphinxsearch.path_searchd"];
         $config_data["indexer"]["period"] = $values["sphinxsearch.indexer_period"];
         $config_data["indexer"]["runwithmaintenance"] = $values["sphinxsearch.indexer_maintenance"] == "true" ? "true" : "false";
         $config_data["indexer"]["onchange"] = $values["sphinxsearch.indexer_onchange"];
         $config_data["documents"]["use_i18n"] = $values["sphinxsearch.documents_i18n"] == "true" ? "true" : "false";
         $config_data["searchd"]["port"] = $values["sphinxsearch.searchd_port"];
         $plugin_config->setData($config_data);
         $plugin_config->save();
         $this->_helper->json(array("success" => true));
     } catch (Exception $e) {
         $this->_helper->json(false);
     }
 }