/**
  * Install WPCM
  */
 public static function install()
 {
     if (!defined('WPCM_INSTALLING')) {
         define('WPCM_INSTALLING', true);
     }
     // Ensure needed classes are loaded
     include_once 'admin/class-wpcm-admin-notices.php';
     self::create_options();
     self::create_roles();
     // Register post types
     WPCM_Post_Types::register_post_types();
     WPCM_Post_Types::register_taxonomies();
     // Queue upgrades
     $current_version = get_option('wpclubmanager_version', null);
     if ($current_version) {
         update_option('wpcm_version_upgraded_from', $current_version);
     }
     // Update version
     delete_option('wpclubmanager_version');
     add_option('wpclubmanager_version', WPCM()->version);
     // Flush rules after install
     flush_rewrite_rules();
     // Redirect to welcome screen
     if (!is_network_admin() && !isset($_GET['activate-multi'])) {
         set_transient('_wpcm_activation_redirect', 1, 30);
     }
     // Trigger action
     do_action('wpclubmanager_installed');
 }
function wpcm_flush_rewrite_rules()
{
    // Flush rewrite rules
    $post_types = new WPCM_Post_Types();
    $post_types->register_taxonomies();
    $post_types->register_post_types();
    flush_rewrite_rules();
}