コード例 #1
0
 /**
  * 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;
 }
コード例 #2
0
 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;
 }
コード例 #3
0
 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');
     }
 }
コード例 #4
0
 /**
  * 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;
 }