function woocommerce_gravityform_enqueue_scripts()
 {
     global $post;
     if (is_product()) {
         $gravity_form_data = get_post_meta($post->ID, '_gravity_form_data', true);
         if ($gravity_form_data && is_array($gravity_form_data)) {
             //wp_enqueue_script("gforms_gravityforms", GFCommon::get_base_url() . "/js/gravityforms.js", array("jquery"), GFCommon::$version, false);
             gravity_form_enqueue_scripts($gravity_form_data['id'], false);
             $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
             wp_register_script('accounting', WC()->plugin_url() . '/assets/js/admin/accounting' . $suffix . '.js', array('jquery'), '0.4.2');
             wp_enqueue_script('wc-gravityforms-product-addons', woocommerce_gravityforms::plugin_url() . '/assets/js/gravityforms-product-addons.js', array('jquery', 'accounting'), true);
             $product = wc_get_product();
             $prices = array($product->id => $product->get_display_price());
             if ($product->has_child()) {
                 foreach ($product->get_children() as $variation_id) {
                     $variation = $product->get_child($variation_id);
                     $prices[$variation_id] = $variation->get_display_price();
                 }
             }
             // Accounting
             wp_localize_script('accounting', 'accounting_params', array('mon_decimal_point' => wc_get_price_decimal_separator()));
             $wc_gravityforms_params = array('currency_format_num_decimals' => wc_get_price_decimals(), 'currency_format_symbol' => get_woocommerce_currency_symbol(), 'currency_format_decimal_sep' => esc_attr(wc_get_price_decimal_separator()), 'currency_format_thousand_sep' => esc_attr(wc_get_price_thousand_separator()), 'currency_format' => esc_attr(str_replace(array('%1$s', '%2$s'), array('%s', '%v'), get_woocommerce_price_format())), 'prices' => $prices);
             wp_localize_script('wc-gravityforms-product-addons', 'wc_gravityforms_params', $wc_gravityforms_params);
         }
     } elseif (is_object($post) && isset($post->post_content) && !empty($post->post_content)) {
         $enqueue = false;
         $forms = array();
         $prices = array();
         if (preg_match_all('/\\[product_page[s]? +.*?((id=.+?)|(name=.+?))\\]/is', $post->post_content, $matches, PREG_SET_ORDER)) {
             $ajax = false;
             foreach ($matches as $match) {
                 //parsing shortcode attributes
                 $attr = shortcode_parse_atts($match[1]);
                 $product_id = isset($attr['id']) ? $attr['id'] : false;
                 if (!empty($product_id)) {
                     $gravity_form_data = get_post_meta($product_id, '_gravity_form_data', true);
                     if ($gravity_form_data && is_array($gravity_form_data)) {
                         $enqueue = true;
                         gravity_form_enqueue_scripts($gravity_form_data['id'], false);
                         $product = wc_get_product($product_id);
                         $prices[$product->id] = $product->get_display_price();
                         if ($product->has_child()) {
                             foreach ($product->get_children() as $variation_id) {
                                 $variation = $product->get_child($variation_id);
                                 $prices[$variation_id] = $variation->get_display_price();
                             }
                         }
                     }
                 }
             }
             if ($enqueue) {
                 $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
                 wp_register_script('accounting', WC()->plugin_url() . '/assets/js/admin/accounting' . $suffix . '.js', array('jquery'), '0.4.2');
                 wp_enqueue_script('wc-gravityforms-product-addons', woocommerce_gravityforms::plugin_url() . '/assets/js/gravityforms-product-addons.js', array('jquery', 'accounting'), true);
                 // Accounting
                 wp_localize_script('accounting', 'accounting_params', array('mon_decimal_point' => wc_get_price_decimal_separator()));
                 $wc_gravityforms_params = array('currency_format_num_decimals' => wc_get_price_decimals(), 'currency_format_symbol' => get_woocommerce_currency_symbol(), 'currency_format_decimal_sep' => esc_attr(wc_get_price_decimal_separator()), 'currency_format_thousand_sep' => esc_attr(wc_get_price_thousand_separator()), 'currency_format' => esc_attr(str_replace(array('%1$s', '%2$s'), array('%s', '%v'), get_woocommerce_price_format())), 'prices' => $prices);
                 wp_localize_script('wc-gravityforms-product-addons', 'wc_gravityforms_params', $wc_gravityforms_params);
             }
         }
     }
 }
 function woocommerce_gravityform_enqueue_scripts()
 {
     global $post;
     if (is_product()) {
         $gravity_form_data = get_post_meta($post->ID, '_gravity_form_data', true);
         if ($gravity_form_data && is_array($gravity_form_data)) {
             //wp_enqueue_script("gforms_gravityforms", GFCommon::get_base_url() . "/js/gravityforms.js", array("jquery"), GFCommon::$version, false);
             gravity_form_enqueue_scripts($gravity_form_data['id'], false);
             wp_enqueue_script('wc-gravityforms-product-addons', woocommerce_gravityforms::plugin_url() . '/assets/js/gravityforms-product-addons.js', array('jquery'), true);
         }
     } elseif ($this->shortcode_product_id) {
         $gravity_form_data = get_post_meta($this->shortcode_product_id, '_gravity_form_data', true);
         if ($gravity_form_data && is_array($gravity_form_data)) {
             //wp_enqueue_script("gforms_gravityforms", GFCommon::get_base_url() . "/js/gravityforms.js", array("jquery"), GFCommon::$version, false);
             gravity_form_enqueue_scripts($gravity_form_data['id'], false);
             wp_enqueue_script('wc-gravityforms-product-addons', woocommerce_gravityforms::plugin_url() . '/assets/js/gravityforms-product-addons.js', array('jquery'), true);
         }
     }
 }
 function woocommerce_gravityform_enqueue_scripts()
 {
     global $post;
     if (is_product()) {
         $gravity_form_data = get_post_meta($post->ID, '_gravity_form_data', true);
         if ($gravity_form_data && is_array($gravity_form_data)) {
             //wp_enqueue_script("gforms_gravityforms", GFCommon::get_base_url() . "/js/gravityforms.js", array("jquery"), GFCommon::$version, false);
             gravity_form_enqueue_scripts($gravity_form_data['id'], false);
             wp_enqueue_script('wc-gravityforms-product-addons', woocommerce_gravityforms::plugin_url() . '/assets/js/gravityforms-product-addons.js', array('jquery'), true);
         }
     } else {
         $enqueue = false;
         $forms = array();
         if (preg_match_all('/\\[product_page[s]? +.*?((id=.+?)|(name=.+?))\\]/is', $post->post_content, $matches, PREG_SET_ORDER)) {
             $ajax = false;
             foreach ($matches as $match) {
                 //parsing shortcode attributes
                 $attr = shortcode_parse_atts($match[1]);
                 $product_id = isset($attr['id']) ? $attr['id'] : false;
                 if (!empty($product_id)) {
                     $gravity_form_data = get_post_meta($product_id, '_gravity_form_data', true);
                     if ($gravity_form_data && is_array($gravity_form_data)) {
                         $enqueue = true;
                         gravity_form_enqueue_scripts($gravity_form_data['id'], false);
                     }
                 }
             }
             if ($enqueue) {
                 wp_enqueue_script('wc-gravityforms-product-addons', woocommerce_gravityforms::plugin_url() . '/assets/js/gravityforms-product-addons.js', array('jquery'), true);
             }
         }
     }
 }