/** * Load extension: helpers, hooks, widgets, and shortcodes * @param string $type: helpers, hooks, widgets, and shortcodes * @param array $hooks_include * @return array */ function childfx_load_extension($files_included, $type) { $allowed_types = array('helpers', 'hooks', 'widgets', 'shortcodes'); if (!in_array($type, $allowed_types)) { return false; } $local_files = array(); foreach (Calibrefx::glob_php(CHILD_URI . '/' . CHILD_APP_DIR . '/' . $type) as $file) { $local_files[] = $file; } return array_merge($files_included, $local_files); }
function load_widgets() { $widgets_include = apply_filters('calibrefx_widgets_to_include', Calibrefx::glob_php(CALIBREFX_WIDGET_URI), 'widgets'); foreach ($widgets_include as $include) { include $include; } }
public function module_activation() { $list_table = Calibrefx_Modules_List_Table::get_instance(); $action = $list_table->current_action(); if ($action) { switch ($action) { case 'activate': $module = stripslashes($_GET['module']); check_admin_referer("calibrefx_activate-{$module}"); Calibrefx::activate_module($module); wp_safe_redirect(Calibrefx::admin_url('page=calibrefx§ion=modules')); exit; case 'deactivate': $modules = stripslashes($_GET['module']); check_admin_referer("calibrefx_deactivate-{$modules}"); foreach (explode(',', $modules) as $module) { Calibrefx::deactivate_module($module); } wp_safe_redirect(Calibrefx::admin_url('page=calibrefx§ion=modules')); exit; } } }
public static function deactivate_module($module) { do_action('calibrefx_pre_deactivate_module', $module); $active = Calibrefx::get_active_modules(); $new = array_filter(array_diff($active, (array) $module)); do_action("calibrefx_deactivate_module_{$module}", $module); return update_option('calibrefx_active_modules', array_unique($new)); }
/** * @author ivankristianto * @covers Calibrefx::activate_module * @since 2.0 */ public function test_activate_deactivate_module() { Calibrefx::activate_module('custom-fonts', false, false); $this->assertTrue(Calibrefx::is_module_active('custom-fonts')); Calibrefx::deactivate_module('custom-fonts'); $this->assertTrue(!Calibrefx::is_module_active('custom-fonts')); }
function get_modules() { $available_modules = Calibrefx::get_available_modules(); $active_modules = Calibrefx::get_active_modules(); $modules = array(); foreach ($available_modules as $module) { if ($module_array = Calibrefx::get_module($module)) { $module_array['module'] = $module; $module_array['activated'] = in_array($module, $active_modules); $module_array['deactivate_nonce'] = wp_create_nonce('calibrefx_deactivate-' . $module); $module_array['activate_nonce'] = wp_create_nonce('calibrefx_activate-' . $module); $module_array['available'] = $this->is_module_available($module_array); // $module_array['short_description'] = $short_desc_trunc; // $module_array['configure_url'] = Calibrefx::module_configuration_url( $module ); $modules[$module] = $module_array; } } uasort($modules, array($this, 'sort_modules')); return $modules; }