Ejemplo n.º 1
0
 /**
  * list modules
  * @param $args
  * @param $assoc_args
  */
 public function _list_($args, $assoc_args)
 {
     $status = $this->get_cmd_arg($assoc_args, 'status', 'active');
     $modules = hw_get_modules();
     foreach ($modules as $module) {
         echo $module[0] . PHP_EOL . ', ';
     }
 }
 /**
  * Create default title column along with action links of 'Install'
  * and 'Activate'.
  *
  * @since 2.2.0
  *
  * @param array $item Array of item data.
  * @return string     The action hover links.
  */
 public function column_plugin($item)
 {
     #$installed_plugins = get_plugins();
     $installed_plugins = hw_get_modules();
     // No need to display any hover links.
     if (hw_is_active_module($item['file_path'])) {
         $actions = array();
     }
     $actions = array();
     // We need to display the 'Install' hover link.
     if (!isset($item['force_activation']) || $item['force_activation'] == false) {
         if (!isset($installed_plugins[$item['file_path']])) {
             $actions = array('install' => sprintf('<a href="%1$s" title="' . esc_attr__('Kích hoạt', 'tgmpa') . ' %2$s">' . __('Kích hoạt', 'tgmpa') . '</a>', esc_url(wp_nonce_url(add_query_arg(array('page' => urlencode(HW_TGM_Module_Activation::$instance->menu), 'module' => urlencode($item['slug']), 'module_name' => urlencode($item['sanitized_plugin']), 'tgmpa-activate' => 'activate-plugin', 'tgmpa-activate-nonce' => urlencode(wp_create_nonce('tgmpa-activate'))), admin_url('admin.php')), 'tgmpa-install')), $item['sanitized_plugin']));
         } else {
             $actions = array('install' => sprintf('<a href="%1$s" title="' . esc_attr__('Hủy kích hoạt', 'tgmpa') . ' %2$s">' . __('Hủy Kích hoạt', 'tgmpa') . '</a>', esc_url(wp_nonce_url(add_query_arg(array('page' => urlencode(HW_TGM_Module_Activation::$instance->menu), 'module' => urlencode($item['slug']), 'module_name' => urlencode($item['sanitized_plugin']), 'tgmpa-deactivate' => 'deactivate-plugin', 'tgmpa-deactivate-nonce' => urlencode(wp_create_nonce('tgmpa-deactivate'))), admin_url('admin.php')), 'tgmpa-install')), $item['sanitized_plugin']));
         }
         //setting page url
         $actions['config'] = sprintf('<a href="%1$s" title="' . esc_attr__('Cấu hình', 'tgmpa') . ' %2$s">' . __('Cấu hình', 'tgmpa') . '</a>', wp_nonce_url(add_query_arg(array('tab' => HW_Module_Settings_page::valid_tab_slug($item['slug']), 'page' => urlencode(HW_Module_Settings_page::PAGE_SLUG), 'module' => urlencode($item['slug']), 'module_name' => urlencode($item['sanitized_plugin']), 'tgmpa-tab-nonce' => urlencode(wp_create_nonce('tgmpa-tab-nonce'))), admin_url('admin.php')), 'tgmpa-install'), $item['sanitized_plugin']);
     }
     // We need to display the 'Activate' hover link.
     /*elseif ( is_plugin_inactive( $item['file_path'] ) ) {
                     $actions = array(
                         'activate' => sprintf(
                             '<a href="%1$s" title="' . esc_attr__( 'Activate', 'tgmpa' ) . ' %2$s">' . __( 'Activate', 'tgmpa' ) . '</a>',
                             esc_url(
                                 add_query_arg(
                                     array(
                                         'page'                 => urlencode( HW_TGM_Module_Activation::$instance->menu ),
                                         'plugin'               => urlencode( $item['slug'] ),
                                         'plugin_name'          => urlencode( $item['sanitized_plugin'] ),
                                         'plugin_source'        => urlencode( $item['url'] ),
                                         'tgmpa-activate'       => 'activate-plugin',
                                         'tgmpa-activate-nonce' => urlencode( wp_create_nonce( 'tgmpa-activate' ) ),
                                     ),
                                     network_admin_url( 'options-general.php' )
                                 )
                             ),
                             $item['sanitized_plugin']
                         ),
                     );
                 }
     */
     return sprintf('%1$s %2$s', $item['plugin'], $this->row_actions($actions));
 }
 /**
  * load all modules for first
  */
 public static function load_all_modules()
 {
     static $trigger = false;
     if (!$trigger) {
         $trigger = true;
         //run once time
         $modules = hw_get_modules();
         foreach ($modules as $module) {
             HW_HOANGWEB::load_module($module[0]);
             usleep(500);
         }
     }
 }
Ejemplo n.º 4
0
/**
 * deactive one or more module
 * @param $module one or more module names
 */
function hw_deactivate_modules($module)
{
    static $actived_modules;
    $modules = array();
    if (!$actived_modules) {
        $actived_modules = hw_get_modules(true);
    }
    $count = count($actived_modules);
    if (isset($module[0]) && !is_array($module[0])) {
        $modules[] = $module;
    } elseif (is_string($module)) {
        $modules[] = array($module);
    } else {
        $modules = $module;
    }
    foreach ((array) $modules as $_module) {
        if (isset($_module[0]) && is_string($_module[0]) && isset($actived_modules[$_module[0]])) {
            unset($actived_modules[$_module[0]]);
            //deactivation hook for module
            $hooks = HW_HOANGWEB::register_deactivation_hook(realpath(HW_HOANGWEB_PLUGINS . '/' . $_module[0]));
            if (is_array($hooks)) {
                foreach ($hooks as $hook) {
                    if (is_callable($hook)) {
                        call_user_func($hook);
                        usleep(200);
                        //sleep in miliseconds
                    }
                }
            }
        }
    }
    //save option to db
    if ($count != count($actived_modules)) {
        update_option('hw_install_modules', $actived_modules);
        HW_Cache::reset_wp_menus_caches();
    }
    #__save_session('a',$actived_modules);
}