AP Racing Radi-CAL Competition Brake Kit (Rear CP9450/365mm)- Toyota GR Supra
AP Racing Radi-CAL Competition Brake Kit (Rear CP9450/365mm)- Toyota GR Supra
${function() {
const variantData = data.variant || {"id":"e188a12e-d697-4d79-8c70-283f26ead975","product_id":"4dca28f2-202a-4e77-a5b3-11d9015709bb","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"APP 13.01.10115","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":4099,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"4099","retail_price":"0","available":true,"url":"\/products\/ap-racing-radi-cal-competition-brake-kit-rear-cp9450-365mm-toyota-gr-supra?variant=e188a12e-d697-4d79-8c70-283f26ead975","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"e188a12e-d697-4d79-8c70-283f26ead975","product_id":"","quantity":0,"discount_id":"","limit_time":0,"limit_buy":0,"user_limit_buy":0,"discount_sales":0,"discount_sales_rate":"","discount_stock":0,"ends_at":0,"starts_at":0,"allow_oversold":"","allocation_method":"","price":"4099","compare_at_price":"","discount_price":"4099","customary_saved_price":"","customary_off_ratio":"","discount_saved_price":"","discount_off_ratio":"0","use_before_price":false,"before_price":"","title":"","properties":"","color_setting_promotional_copy":"","discount_quantity":0,"is_need_split":false},"sales":0};
const saveType = null;
const productSaveLabel = null;
return `
-
${ variantData.off_ratio }%
`; }()}
${function(){
return `
${data.starNum}/${data.starTotal}
`;
}()}
${function(){
return `
${data.showStarText === 'true' ? `
${data.starNum}/${data.starTotal}
` : ''}
`;
}()}
const TAG = 'spz-custom-revue-star';
class SPZCustomRevueStar extends SPZ.BaseElement {
constructor(element) {
super(element);
}
static deferredMount() {
return false;
}
buildCallback = () => {
this.action_ = SPZServices.actionServiceForDoc(this.element);
this.templates_ = SPZServices.templatesForDoc(this.element);
this.xhr_ = SPZServices.xhrFor(this.win);
this.starNum = this.element.getAttribute('starNum');
this.starTotal = this.element.getAttribute('starTotal');
this.showStarText = this.element.getAttribute('showStarText');
this.starColor = this.element.getAttribute('color');
this.interact = this.element.getAttribute('interact');
this.starSize = this.element.getAttribute('starSize') || 14;
}
mountCallback = () => {
this.doRender_({
starTotal: this.starTotal,
totalArray: Array.from({ length: Number(this.starTotal) }, (v, k) => k + 1),
starNum: this.starNum,
showStarText: this.showStarText,
starColor: this.starColor,
starSize: this.starSize
}).then(() => {
if (this.interact) {
this.addEventListeners_();
}
});
}
addEventListeners_ = () => {
const stars = document.querySelectorAll('.revue-star__star');
stars.forEach(star => {
star.addEventListener('click', event => {
const starEl = star.closest('.revue-star__star');
const starIndex = Number(starEl.dataset.index);
let isHalf = event.offsetX < star.offsetWidth / 2;
// rtl
if (document.documentElement.getAttribute('dir') === 'rtl') {
isHalf = event.offsetX > star.offsetWidth / 2;
}
const starValue = isHalf ? starIndex - 0.5 : starIndex;
this.starClickHandler_({ value: starValue });
});
});
}
renderStar = () => {
const isRtl = document.documentElement.getAttribute('dir') === 'rtl';
const stars = this.element.querySelectorAll('.revue-star__star');
stars.forEach((star, i) => {
const starIndex = i + 1;
const starEl = star.querySelector('svg:nth-child(2)');
const isHalf = this.starNum % 1 > 0 && Math.ceil(this.starNum) === starIndex;
const isSolid = starIndex <= Math.ceil(this.starNum);
starEl.style.display = isSolid ? 'block' : 'none';
if (isHalf) {
if (isRtl) {
// RTL布局下,如果是半星,显示星星的右半边
starEl.style.clipPath = `polygon(50% 0, 100% 0, 100% 100%, 50% 100%)`;
} else {
// LTR布局下,如果是半星,显示星星的左半边
starEl.style.clipPath = `polygon(0 0, 50% 0, 50% 100%, 0 100%)`;
}
} else {
starEl.style.clipPath = `polygon(0 0, 100% 0, 100% 100%, 0 100%)`
}
});
const showCountEle = this.element.querySelector('#revue-star-show-count');
showCountEle && SPZ.whenApiDefined(showCountEle).then((api) => {
api.render({ starNum: this.starNum, starTotal: this.starTotal });
});
}
doRender_ = (data) => {
return this.templates_
.findAndRenderTemplate(this.element, { starSize: this.starSize, ...data }, null)
.then((el) => {
const children = this.element.querySelector('*:not(template)');
children && SPZCore.Dom.removeElement(children);
this.element.appendChild(el);
})
.then(() => {
this.starNum = data.starNum;
this.renderStar();
});
}
starClickHandler_ = (event) => {
this.starNum = event.value;
this.renderStar();
this.triggerEvent_('change', { value: event.value });
}
triggerEvent_(name, data) {
const event = SPZUtils.Event.create(this.win, `${ TAG }.${ name }`, data || {});
this.action_.trigger(this.element, name, event);
}
isLayoutSupported(layout) {
return layout == SPZCore.Layout.CONTAINER;
}
}
SPZ.defineElement(TAG, SPZCustomRevueStar)
()
try {
const productId = window.SHOPLAZZA.meta.page.resource_id;
const productType = `default`;
const getProductReviews = (star_least) =>
fetch('/api/comment/count-star-multi',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
product_id: [productId],
star_least: star_least || 1,
}),
}).then(res => res.json());
try {
const section = document.querySelector('#revue-product-star');
if(productType === "gift_card" && section) {
section.style.display = 'none';
}
} catch(e) {
console.log(e);
window.addEventListener('load', () => {
try {
const section = document.querySelector('#revue-product-star');
if(productType=== "gift_card" && section) {
section.style.display = 'none';
}
} catch(e) {
console.log(e)
}
})
}
const getReviewsConfig = async () => {
let data = {};
const url = new URL(window.location.href);
const preview_theme_id = url.searchParams.get('preview_theme_id');
const commentConfig = await fetch('/api/comment-config', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
}
}).then(res => res.json());
data = commentConfig.data;
const themeConfig = await fetch(`/api/comment-config?theme_id=${preview_theme_id || ''}`, {
method: 'GET',
headers: {
'Content-Type': 'application/json',
}
}).then(res => res.json());
if (themeConfig?.data && themeConfig.data.star_color) {
data.star_color = themeConfig.data.star_color;
}
if (preview_theme_id) {
data.star_least = window.apps_global && apps_global.reviews && apps_global.reviews.preview_star_least;
} else if (themeConfig?.data && themeConfig.data.product_settings) {
data.star_least = themeConfig.data.product_settings.star_least;
}
return data;
};
if (productId && window.SHOPLAZZA.meta.page.template_type == 1) {
getReviewsConfig().then(async res => {
const config = res;
let review = await getProductReviews(config.star_least);
review = review.data[productId];
if (!config.open_status || (!review.comment_avg_star && !config.show_no_comment_star)) return;
const render = async () => {
const section = document.querySelector('#revue-product-star');
const starComponent = document.querySelector('#revue-product-star-component');
const count = document.querySelector('#revue-product-star-count');
count.innerText = review.published_count;
const api = await SPZ.whenApiDefined(starComponent);
api.doRender_({
starNum: review.comment_avg_star,
starTotal: 5,
showStarText: false,
starColor: config.star_color,
totalArray: Array.from({ length: 5 }, (v, k) => k + 1)
});
section.style.opacity = 1;
}
render();
document.addEventListener('dj.editor.update', render);
});
}
} catch (e) {console.warn(e)};
${function() {
const minInventory = parseInt('7');
const maxInventory = parseInt('10');
const randomInventory = Math.round(Math.random() * (maxInventory - minInventory)) + minInventory;
const customText = "Only {stock} item(s) left in stock!".replace(/\{stock\}/g, '' + randomInventory + '');
const barWidth = (randomInventory / maxInventory) * 100 + '%';
return `
`;
}()}
Product was out of stock.
Enjoy free shipping on every order, delivered to your doorstep no matter where you are in the world.
Shop with confidence with our hassle-free returns policy, ensuring you love what you buy.
Designed with the planet in mind, all our products are committed to sustainable practices.
Your payment information is always protected with our advanced, encrypted checkout security.
Advantages Over OEM Brake System
Our CP9450/365mm Radi-CAL Competition Brake Kit offers our customers the following advantages over the OEM brake system:
Approximately 22 lbs. of unsprung weight reduction from the rear of the car
AP Racing Radi-CAL calipers are the stiffest, lightest, and most technologically advanced calipers available at any price
Calipers use a commonly available brake pad shape
Ventilated, domed back, stainless steel pistons keep heat out of the brake fluid and provide an ultra-firm pedal
Mitigation of pad knockback via anti-knockback springs behind the caliper pistons
Anodized caliper finish that is resistant to wear and deterioration at elevated temperatures
Stainless steel caliper hardware for a long caliper service life under frequent pad change conditions
High temperature, low drag seals that will hold up to track temps means less rebuilding and longer service life
No dust boots to burn up
Simple pad change with one bolt, no caliper removal required
Lifetime professional caliper rebuilding support by Essex (at a fee) - pull off your calipers, send them to us, we clean, inspect, and rebuild them
Available disc burnishing service ensures that your kit arrives ready to be installed and driven hard immediately
Championship winning, 72 vane, fully floating, AP Racing J Hook racing discs
Anti-knockback/anti-rattle disc attachment hardware
Replacement iron disc rings available at an extremely competitive replacement price ($375 each).
Disc metallurgy specifically designed to handle the temps typically seen on track offer a long service life
Highest quality, Spiegler stainless steel brake line with clear sheath that reduces compliance over OEM rubber design
Model Year
2020+
Toyota GR Supra
Caliper
AP Racing CP9450-2/3S4L
Weight no Pads
4.85 lbs.
13.2 lbs.
Piston Sizes
- 28.58 x 2
- 34.0 x 2
Piston Area
30.9 cm2
Inlet Thread
M10x1.0
Mounting Type
Radial
Mtg. Centers
152mm
Mtg. Offset
44mm
Pad thickness
16.75mm
mm
Disc
CP8972-102/103GA
Type
2-piece floating
2-piece, non-floating
Weight
14.3 lbs.
18.4 lbs.
Diameter
365mm
345mm
Thickness
30mm
24mm
Radial Depth
42mm
mm
No. of Vanes
72
Pillar vane
Vendor by :
Brake Kit(汽摩)
Sku :
APP 13.01.10115
Inventory :
999999999
${function(){
const variantData = data.variant || {"id":"e188a12e-d697-4d79-8c70-283f26ead975","product_id":"4dca28f2-202a-4e77-a5b3-11d9015709bb","title":"","weight_unit":"lb","inventory_quantity":0,"sku":"APP 13.01.10115","barcode":"","position":1,"option1":"","option2":"","option3":"","note":"","image":null,"wholesale_price":[{"price":4099,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"4099","retail_price":"0","available":true,"url":"\/products\/ap-racing-radi-cal-competition-brake-kit-rear-cp9450-365mm-toyota-gr-supra?variant=e188a12e-d697-4d79-8c70-283f26ead975","available_quantity":999999999,"options":[],"off_ratio":"0","flashsale_info":{"variant_id":"e188a12e-d697-4d79-8c70-283f26ead975","product_id":"","quantity":0,"discount_id":"","limit_time":0,"limit_buy":0,"user_limit_buy":0,"discount_sales":0,"discount_sales_rate":"","discount_stock":0,"ends_at":0,"starts_at":0,"allow_oversold":"","allocation_method":"","price":"4099","compare_at_price":"","discount_price":"4099","customary_saved_price":"","customary_off_ratio":"","discount_saved_price":"","discount_off_ratio":"0","use_before_price":false,"before_price":"","title":"","properties":"","color_setting_promotional_copy":"","discount_quantity":0,"is_need_split":false},"sales":0};
return `
Vendor by :
${data.product && data.product.vendor}
Weight :
${variantData && variantData.weight}${variantData && variantData.weight_unit}
Barcode :
${variantData && variantData.barcode}
Sku :
${variantData && variantData.sku}
Inventory :
${variantData && variantData.available_quantity}
` }()}