/** * 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); } } }
/** * 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); }