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); } } } }