/** * Update plugin configuration */ public function updateConfig() { $this->checkCsrfToken(); $oldVars = $this->plugin->getVars(); $thumb_dir = $this->request->getPost()->get('thumb_dir'); if (!empty($thumb_dir) && $thumb_dir !== $oldVars['thumb_dir']) { $result = $this->plugin->setupThumbDir($thumb_dir); if ($result) { $this->plugin->getManager()->cleanupThumbs(true); CacheUtil::removeLocalDir($oldVars['thumb_dir']); $this->plugin->setVar('thumb_dir', $thumb_dir); } else { LogUtil::registerError($this->__('Error! Could not change thumbnails storage directory.')); } } $thumb_auto_cleanup = (bool) $this->request->request->get('thumb_auto_cleanup'); $this->plugin->setVar('thumb_auto_cleanup', $thumb_auto_cleanup); $thumb_auto_cleanup_period = $this->request->request->get('thumb_auto_cleanup_period'); $this->plugin->setVar('thumb_auto_cleanup_period', $thumb_auto_cleanup_period); $presets = $this->request->getPost()->get('presets', array()); $presetsToSave = array(); foreach ($presets as $preset) { // validate jpeg qual and png_compression if (!is_numeric($preset['options']['jpeg_quality']) || $preset['options']['jpeg_quality'] < 0 || $preset['options']['jpeg_quality'] > 100) { $preset['options']['jpeg_quality'] = 75; // default 75% } if (!is_numeric($preset['options']['png_compression_level']) || $preset['options']['png_compression_level'] < 0 || $preset['options']['png_compression_level'] > 9) { $preset['options']['png_compression_level'] = 7; // default 7 } $name = $preset['name']; if (!empty($name)) { $presetsToSave[$name] = new SystemPlugin_Imagine_Preset($name, $preset); } } $this->plugin->setVar('presets', $presetsToSave); $this->registerStatus($this->__('Done! Saved plugin configuration.')); $this->redirect(ModUtil::url('ZikulaExtensionsModule', 'adminplugin', 'dispatch', array('_plugin' => 'Imagine', '_action' => 'configure'))); }
/** * Update plugin configuration */ public function updateConfig() { $this->checkCsrfToken(); $oldVars = $this->plugin->getVars(); $thumb_dir = $this->request->getPost()->get('thumb_dir'); if (!empty($thumb_dir) && $thumb_dir !== $oldVars['thumb_dir']) { $result = $this->plugin->setupThumbDir($thumb_dir); if ($result) { $this->plugin->getManager()->cleanupThumbs(true); CacheUtil::removeLocalDir($oldVars['thumb_dir']); $this->plugin->setVar('thumb_dir', $thumb_dir); } else { LogUtil::registerError($this->__('Error! Could not change thumbnails storage directory.')); } } $thumb_auto_cleanup = (bool)$this->request->getPost()->get('thumb_auto_cleanup'); $this->plugin->setVar('thumb_auto_cleanup', $thumb_auto_cleanup); $presets = $this->request->getPost()->get('presets', array()); $presetsToSave = array(); foreach ($presets as $preset) { $name = $preset['name']; if (!empty($name)) { $presetsToSave[$name] = new SystemPlugin_Imagine_Preset($name, $preset); } } $this->plugin->setVar('presets', $presetsToSave); LogUtil::registerStatus($this->__('Done! Saved plugin configuration.')); $this->redirect(ModUtil::url('Extensions', 'adminplugin', 'dispatch', array( '_plugin' => 'Imagine', '_action' => 'configure' ))); }
/** * On an module remove hook call this listener deletes all cached (generated) doctrine models for the module. * * Listens for the 'installer.module.uninstalled' event. * * @param Zikula_Event $event Event. * * @return void */ public function deleteGeneratedCategoryModelsOnModuleRemove(Zikula_Event $event) { $moduleName = $event['name']; // remove generated category models for this record $dir = 'doctrinemodels/GeneratedDoctrineModel/' . $moduleName; if (file_exists(CacheUtil::getLocalDir($dir))) { CacheUtil::removeLocalDir($dir, true); } // remove saved data about the record $modelsInfo = ModUtil::getVar('ZikulaCategoriesModule', 'EntityCategorySubclasses', array()); foreach ($modelsInfo as $class => $info) { if ($info['module'] == $moduleName) { unset($modelsInfo[$class]); } } ModUtil::setVar('ZikulaCategoriesModule', 'EntityCategorySubclasses', $modelsInfo); }
/** * delete the Feeds module */ public function uninstall() { if (!DBUtil::dropTable('feeds')) { return false; } // remove cache directory incl. content CacheUtil::removeLocalDir('feeds'); // delete any module variables $this->delVars(); // delete entries from category registry ModUtil::dbInfoLoad('Categories'); DBUtil::deleteWhere('categories_registry', "modname = 'Feeds'"); DBUtil::deleteWhere('categories_mapobj', "modname = 'Feeds'"); // deletion successful return true; }