/** * Uninstall Pages * * @param vivvo_site $site_manager * @param integer $step */ function uninstall(&$site_manager, $step = 1) { parent::uninstall($site_manager, $step); if ($step == 2) { //Uninstall procedure //Table $db =& $site_manager->get_db(); $dbm =& $site_manager->get_db_manager(); $db->manager->dropTable(VIVVO_DB_PREFIX . 'pages'); $site_manager->unregister_module('box_pages'); $site_manager->unregister_action('pages'); $pl_manager = $site_manager->get_plugin_manager(); $pl_manager->unregister('pages'); ui_hooks::unregister('plugin_pages_admin_content_subnav_hook'); } $output = $site_manager->get_output(); echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' . "\n"; echo $output; }
function _uninstall() { $sm = vivvo_lite_site::get_instance(); if (!$sm->user or !$sm->user->is_admin()) { exit; } $sm = vivvo_lite_site::get_instance(); $pm = $sm->get_plugin_manager(); $um = $sm->get_url_manager(); $template = $sm->get_template(); if ($um->isset_param('plugin') && isset($pm->plugins[$um->get_param('plugin')])) { $plugin = $pm->get_plugin_definiton($um->get_param('plugin')); if ($plugin !== false) { $template->assign('PLUG_IN_NAME', $pm->plugins[$um->get_param('plugin')]['name']); $plugin->load_admin_lang(); ui_hooks::unregister('plugin_' . $um->get_param('plugin') . '_admin_main_nav_hook'); echo $plugin->uninstall($sm, $um->get_param('step')); } } exit; }
function _main_nav() { $sm = vivvo_lite_site::get_instance(); if ($sm->check_token()) { $um = $sm->get_url_manager(); $id = $um->get_param('id'); $title = $um->get_param('title'); $href = $um->get_param('href'); $action = $um->get_param('action'); $plugin_name = $um->get_param('plugin_name'); if ($id and $title and $href and $plugin_name and $action) { if ($sm->user and $sm->user->can('MANAGE_PLUGIN', $plugin_name)) { $hook_name = 'plugin_' . $plugin_name . '_admin_main_nav_hook'; if ($action == 'register') { ui_hooks::register($hook_name, 'admin_main_nav', array('id' => $id, 'href' => $href, 'title' => $title), array('file' => 'lib/vivvo/functions.php', 'function' => 'main_nav_plugin_callback', 'params' => array('name' => $plugin_name))); } elseif ($action == 'unregister') { ui_hooks::unregister($hook_name); } else { $error = 'NO_ACTION'; } header('X-Vivvo-Action-Status: 1'); } else { $error = 'NO_PRIVILEGES'; } } else { $error = 'INVALID_TOKEN'; } if (!empty($error)) { header('X-Vivvo-Action-Status: 0'); header('X-Vivvo-Action-Error: ' . $error); } else { $sm->get_configuration()->load_configuration(true); } return $this->load_template($this->_template_root . 'components/menu.xml'); } }
/** * Video box uninstall procedure * * @param vivvo_site $site_manager * @param integer $step */ public function uninstall(&$site_manager, $step = 1) { parent::uninstall($site_manager, $step); if ($step == 2) { $plugin_dir = VIVVO_FS_PLUGIN_ROOT . $this->get_root_dir(); $sqlRunner = new SQLRunner(array('db' => $site_manager->get_db(), 'filename' => $plugin_dir . 'db/uninstall.sql')); try { $sqlRunner->load() and $sqlRunner->run(); } catch (SQLRunnerException $e) { $this->set_error_code(14, $e->getMessage()); // error executing sql script file $this->uninstall($site_manager, 1); return; } ui_hooks::unregister('plugin_video_box_form_field'); $site_manager->get_url_manager()->unregister_url('xspf'); $site_manager->get_plugin_manager()->unregister($this->plugin_name); } $output = $site_manager->get_output(); echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' . "\n"; echo $output; }