'0',
'tplid'=>false,
),
$atts,
'asowp-products'
)
);
ob_start();
?>
get_post_field('post_title', $configId),
"description" => get_post_field('post_content', $configId),
"icon" => $config["icon"],
"popImg" => $config["popImg"],
"data" => $config["data"]
];
$config_fonts = $config["data"]["settings"]["customizerSign"]["text"]["selectedFonts"];
$config_cliparts =$config["data"]["settings"]["customizerSign"]["images"]["enableClipart"] == true ? $config["data"]["settings"]["customizerSign"]["images"]["enableClipart"]["selectedClipartGroups"] : [];
$visibleFonts = [];
foreach ( $config_fonts as $font ) {
if(isset($all_fonts[$font])){
$visibleFonts[]=$all_fonts[$font];
}
}
$visibleCliparts = [];
foreach ( $config_cliparts as $part ) {
if(isset($all_cliparts_groups[$part])){
$visibleCliparts[]=$all_cliparts_groups[$part];
}
}
$all_manages = [
"fonts"=>$visibleFonts,
"cliparts"=>$visibleCliparts,
"borders"=>$all_borders,
"pageSettings" => $pageSettings,
"allShapes" => $all_shapes,
"allFixingMethod" => $all_fixingMethods,
"allBorder" => $all_borders,
"outputOptions" => $outputOptions,
];
$product_price = $product->get_price();
//$price_format = ncpc_get_price_format();
$available_variations = array();
if ( $product->get_type() === 'variable' ) {
$available_variations = $product->get_available_variations();
}
$ASO = array(
'skin' => $config["data"]["settings"]['themeColors']['skin'],
'productID' => $productid,
'product' => $product,
'currentConfig' => $configData,
"managesData" =>$all_manages,
'regularPrice' => trim($product_price) != '' ? $product_price : 0 ,
'thousandSep' => wc_get_price_thousand_separator(),
'decimalSep' => wc_get_price_decimal_separator(),
'decimals' => wc_get_price_decimals(),
'nbDecimals' => wc_get_price_decimals(),
'currencySymbol' => html_entity_decode(get_woocommerce_currency_symbol()),
'currency_pos' => get_option('woocommerce_currency_pos'),
'variations' => $available_variations,
"fixing_methods_url" => ASOWP_ASSETS.'/images/fixing-methodes',
"borders_url" => ASOWP_ASSETS.'/images/borders',
"templates" =>[
"designFromTemplate"=>false,
"template"=>[]
],
"frontend_nonce" => wp_create_nonce('asowp_add_to_cart_after_custom')
);
?>
includes_config_fonts($visibleFonts);
if(isset($config["data"]["settings"]["themeColors"]["customCSS"]) && !empty($config["data"]["settings"]["themeColors"]["customCSS"])){
wp_add_inline_style( 'asowp-frontend', safecss_filter_attr($config["data"]["settings"]["themeColors"]["customCSS"]) );
}
wp_localize_script("asowp-frontend","asowp_configurator_data",$ASO);
wp_localize_script("asowp-frontend","asowp_data",[
"rest_url"=>get_rest_url()."asowp/v1",
'ajax_url' => esc_url(admin_url('admin-ajax.php')),
"page"=>"configurator"
]);
}
}
}
}
$content.= ob_get_clean();
return $content;
}
private function includes_config_fonts($all_fonts) {
foreach ( $all_fonts as $font ) {
if ( ! empty( $font['url'] ) && $font['isGoogleFont'] ) {
$font_url = str_replace( 'http://', '//', $font['url'] );
$this->include_config_ttf_font_style($font['label'],$font_url);
} elseif ( ! empty( $font['url'] ) ) {
$this->include_config_ttf_font_style($font['label'],$font['url']);
}
}
}
private function include_config_ttf_font_style( $font_label,$url ) {
$font_label = str_replace(" ", "-", $font_label);
$inline_style = "@font-face {
font-family: ".esc_html( $font_label).";
src: url('".esc_url($url)."') format('truetype');
}";
wp_add_inline_style( 'asowp-frontend', $inline_style );
wp_add_inline_style( 'asowp-style', $inline_style );
?>