/**
  * Adds all necessary admin styles.
  *
  * @param array Array of Product types & their labels, excluding the Subscription product type.
  * @return array Array of Product types & their labels, including the Subscription product type.
  * @since 1.0
  */
 public static function enqueue_styles_scripts()
 {
     global $woocommerce, $post;
     // Get admin screen id
     $screen = get_current_screen();
     $is_woocommerce_screen = in_array($screen->id, array('product', 'edit-shop_order', 'shop_order', 'users', 'woocommerce_page_wc-settings')) ? true : false;
     $is_activation_screen = get_transient(WC_Registrations::$activation_transient) == true ? true : false;
     if ($is_woocommerce_screen) {
         $dependencies = array('jquery', 'jquery-ui-core', 'jquery-ui-datepicker');
         // Version juggling
         if (WC_Registrations::is_woocommerce_pre_2_1()) {
             // WC 2.0
             $woocommerce_admin_script_handle = 'woocommerce_writepanel';
         } elseif (WC_Registrations::is_woocommerce_pre_2_2()) {
             // WC 2.1
             $woocommerce_admin_script_handle = 'woocommerce_admin_meta_boxes';
         } else {
             $woocommerce_admin_script_handle = 'wc-admin-meta-boxes';
         }
         if ($screen->id == 'product') {
             $dependencies[] = $woocommerce_admin_script_handle;
             if (!WC_Registrations::is_woocommerce_pre_2_2()) {
                 $dependencies[] = 'wc-admin-product-meta-boxes';
                 $dependencies[] = 'wc-admin-variation-meta-boxes';
             }
             $script_params = array('productType' => WC_Registrations::$name);
         }
         $script_params['ajaxLoaderImage'] = $woocommerce->plugin_url() . '/assets/images/ajax-loader.gif';
         $script_params['ajaxUrl'] = admin_url('admin-ajax.php');
         $script_params['isWCPre21'] = var_export(WC_Registrations::is_woocommerce_pre_2_1(), true);
         $script_params['isWCPre22'] = var_export(WC_Registrations::is_woocommerce_pre_2_2(), true);
         $script_params['isWCPre23'] = var_export(WC_Registrations::is_woocommerce_pre_2_3(), true);
         // Registrations for WooCommerce Admin - admin.js
         wp_enqueue_script('woocommerce_registrations_admin', plugin_dir_url(WC_Registrations::$plugin_file) . '/js/admin.js', $dependencies, filemtime(plugin_dir_path(WC_Registrations::$plugin_file) . 'js/admin.js'));
         wp_localize_script('woocommerce_registrations_admin', 'WCRegistrations', apply_filters('woocommerce_registrations_admin_script_parameters', $script_params));
         // Registrations for WooCommerce Ajax - wc-registrations-ajax.js
         wp_enqueue_script('woocommerce_registrations_ajax', plugin_dir_url(WC_Registrations::$plugin_file) . '/js/wc-registrations-ajax.js', $dependencies, filemtime(plugin_dir_path(WC_Registrations::$plugin_file) . 'js/wc-registrations-ajax.js'));
         wp_localize_script('woocommerce_registrations_ajax', 'WCRegistrations', apply_filters('woocommerce_registrations_admin_script_parameters', $script_params));
         // JQuery UI Datepicker
         wp_enqueue_style('jquery-ui-datepicker');
     }
     // Maybe add the admin notice
     if ($is_activation_screen) {
         $woocommerce_plugin_dir_file = self::get_woocommerce_plugin_dir_file();
         if (!empty($woocommerce_plugin_dir_file)) {
             wp_enqueue_style('woocommerce-activation', plugins_url('/assets/css/activation.css', self::get_woocommerce_plugin_dir_file()), array(), WC_Registrations::$version);
             if (!isset($_GET['page']) || 'wcs-about' != $_GET['page']) {
                 add_action('admin_notices', __CLASS__ . '::admin_installed_notice');
             }
         }
         delete_transient(WC_Registrations::$activation_transient);
     }
     if ($is_woocommerce_screen || $is_activation_screen) {
         wp_enqueue_style('woocommerce_admin_styles', $woocommerce->plugin_url() . '/assets/css/admin.css', array(), WC_Registrations::$version);
     }
 }
        global $woocommerce;
        if (function_exists('wc_add_notice')) {
            wc_add_notice($message, $notice_type);
        } else {
            // WC < 2.1
            if ('error' === $notice_type) {
                $woocommerce->add_error($message);
            } else {
                $woocommerce->add_message($message);
            }
            $woocommerce->set_messages();
        }
    }
    /**
     * Print WooCommerce messages regardless of the version of WooCommerce running.
     *
     * @since version 1.0
     */
    public static function print_notices()
    {
        global $woocommerce;
        if (function_exists('wc_print_notices')) {
            wc_print_notices();
        } else {
            // WC < 2.1
            $woocommerce->show_messages();
        }
    }
}
WC_Registrations::init();