示例#1
0
 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));
 }
 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;
 }