$product = {"id":7829058289763,"title":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome","handle":"iphone-15-plus-solidx-magsafe-bumper-back-crossover-design-tdf02","description":null,"published_at":"2025-07-14T10:50:42+08:00","created_at":"2025-06-30T15:57:04+08:00","vendor":"RHINOSHIELD Taiwan B2B","type":"","tags":["10%","20%","30%","40%","50%","brand-Apple","designer","designer-tour-de-france","device-iPhone 15 Plus","merge","reseller-tour-de-france"],"price":145000,"price_min":145000,"price_max":145000,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":43502764621923,"title":"Glacier Blue","option1":"Glacier Blue","option2":null,"option3":null,"sku":"MNS01296Z7-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099491602531,"product_id":7829058289763,"position":2,"created_at":"2025-06-30T15:57:08+08:00","updated_at":"2025-06-30T15:57:10+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230","variant_ids":[43502764621923]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Glacier Blue","public_title":"Glacier Blue","options":["Glacier Blue"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS01296Z7-TDF02","featured_media":{"alt":null,"id":25756146663523,"position":2,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43502764654691,"title":"Ocean Blue","option1":"Ocean Blue","option2":null,"option3":null,"sku":"MNS012960A-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099494355043,"product_id":7829058289763,"position":7,"created_at":"2025-06-30T15:57:11+08:00","updated_at":"2025-06-30T15:57:13+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/4dc7f01504a7c5220c5dfe25cdc88527057fd2ca.webp?v=1751270233","variant_ids":[43502764654691]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Ocean Blue","public_title":"Ocean Blue","options":["Ocean Blue"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS012960A-TDF02","featured_media":{"alt":null,"id":25756148170851,"position":7,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/4dc7f01504a7c5220c5dfe25cdc88527057fd2ca.webp?v=1751270233"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43502764687459,"title":"Ash Grey","option1":"Ash Grey","option2":null,"option3":null,"sku":"MNS01296O8-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099492520035,"product_id":7829058289763,"position":3,"created_at":"2025-06-30T15:57:09+08:00","updated_at":"2025-06-30T15:57:11+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/fea88e8c5f074d9f47e042ad237cc49543d9af9f.webp?v=1751270231","variant_ids":[43502764687459]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Ash Grey","public_title":"Ash Grey","options":["Ash Grey"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS01296O8-TDF02","featured_media":{"alt":null,"id":25756146991203,"position":3,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/fea88e8c5f074d9f47e042ad237cc49543d9af9f.webp?v=1751270231"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43502764720227,"title":"Black","option1":"Black","option2":null,"option3":null,"sku":"MNS0129652-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099496321123,"product_id":7829058289763,"position":10,"created_at":"2025-06-30T15:57:12+08:00","updated_at":"2025-06-30T15:57:14+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/97e18b652552adca7c95983158c97e37fce991ff.webp?v=1751270234","variant_ids":[43502764720227]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Black","public_title":"Black","options":["Black"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS0129652-TDF02","featured_media":{"alt":null,"id":25756148924515,"position":10,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/97e18b652552adca7c95983158c97e37fce991ff.webp?v=1751270234"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/9e78c3f77835de20180be147e2ac98ab55874179.webp?v=1751270229","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/fea88e8c5f074d9f47e042ad237cc49543d9af9f.webp?v=1751270231","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/9fbf525a09e4d3b87533acbbd8e08972a5790243.webp?v=1751270231","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/f0476d18e00fe736ef9c0f3732eb2e200bc905d5.webp?v=1751270232","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/0b882ba998917d651bf2411fe2185482d8554a79.webp?v=1751270232","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/4dc7f01504a7c5220c5dfe25cdc88527057fd2ca.webp?v=1751270233","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/2d26f4595bf1fc6181778d67e27182f3e418fc43.webp?v=1751270233","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/5e7433025da450b3710c92a2995b7c4df24e4a44.webp?v=1751270234","\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/97e18b652552adca7c95983158c97e37fce991ff.webp?v=1751270234"],"featured_image":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/9e78c3f77835de20180be147e2ac98ab55874179.webp?v=1751270229","options":["color"],"media":[{"alt":null,"id":25756146532451,"position":1,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/9e78c3f77835de20180be147e2ac98ab55874179.webp?v=1751270229"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/9e78c3f77835de20180be147e2ac98ab55874179.webp?v=1751270229","width":2000},{"alt":null,"id":25756146663523,"position":2,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230","width":2000},{"alt":null,"id":25756146991203,"position":3,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/fea88e8c5f074d9f47e042ad237cc49543d9af9f.webp?v=1751270231"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/fea88e8c5f074d9f47e042ad237cc49543d9af9f.webp?v=1751270231","width":2000},{"alt":null,"id":25756147253347,"position":4,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/9fbf525a09e4d3b87533acbbd8e08972a5790243.webp?v=1751270231"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/9fbf525a09e4d3b87533acbbd8e08972a5790243.webp?v=1751270231","width":2000},{"alt":null,"id":25756147515491,"position":5,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/f0476d18e00fe736ef9c0f3732eb2e200bc905d5.webp?v=1751270232"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/f0476d18e00fe736ef9c0f3732eb2e200bc905d5.webp?v=1751270232","width":2000},{"alt":null,"id":25756147744867,"position":6,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/0b882ba998917d651bf2411fe2185482d8554a79.webp?v=1751270232"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/0b882ba998917d651bf2411fe2185482d8554a79.webp?v=1751270232","width":2000},{"alt":null,"id":25756148170851,"position":7,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/4dc7f01504a7c5220c5dfe25cdc88527057fd2ca.webp?v=1751270233"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/4dc7f01504a7c5220c5dfe25cdc88527057fd2ca.webp?v=1751270233","width":2000},{"alt":null,"id":25756148400227,"position":8,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/2d26f4595bf1fc6181778d67e27182f3e418fc43.webp?v=1751270233"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/2d26f4595bf1fc6181778d67e27182f3e418fc43.webp?v=1751270233","width":2000},{"alt":null,"id":25756148629603,"position":9,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/5e7433025da450b3710c92a2995b7c4df24e4a44.webp?v=1751270234"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/5e7433025da450b3710c92a2995b7c4df24e4a44.webp?v=1751270234","width":2000},{"alt":null,"id":25756148924515,"position":10,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/97e18b652552adca7c95983158c97e37fce991ff.webp?v=1751270234"},"aspect_ratio":1.0,"height":2000,"media_type":"image","src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/97e18b652552adca7c95983158c97e37fce991ff.webp?v=1751270234","width":2000}],"requires_selling_plan":false,"selling_plan_groups":[],"content":null};
$isMerge = null;
$variants = [{"id":43502764621923,"title":"Glacier Blue","option1":"Glacier Blue","option2":null,"option3":null,"sku":"MNS01296Z7-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099491602531,"product_id":7829058289763,"position":2,"created_at":"2025-06-30T15:57:08+08:00","updated_at":"2025-06-30T15:57:10+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230","variant_ids":[43502764621923]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Glacier Blue","public_title":"Glacier Blue","options":["Glacier Blue"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS01296Z7-TDF02","featured_media":{"alt":null,"id":25756146663523,"position":2,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43502764654691,"title":"Ocean Blue","option1":"Ocean Blue","option2":null,"option3":null,"sku":"MNS012960A-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099494355043,"product_id":7829058289763,"position":7,"created_at":"2025-06-30T15:57:11+08:00","updated_at":"2025-06-30T15:57:13+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/4dc7f01504a7c5220c5dfe25cdc88527057fd2ca.webp?v=1751270233","variant_ids":[43502764654691]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Ocean Blue","public_title":"Ocean Blue","options":["Ocean Blue"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS012960A-TDF02","featured_media":{"alt":null,"id":25756148170851,"position":7,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/4dc7f01504a7c5220c5dfe25cdc88527057fd2ca.webp?v=1751270233"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43502764687459,"title":"Ash Grey","option1":"Ash Grey","option2":null,"option3":null,"sku":"MNS01296O8-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099492520035,"product_id":7829058289763,"position":3,"created_at":"2025-06-30T15:57:09+08:00","updated_at":"2025-06-30T15:57:11+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/fea88e8c5f074d9f47e042ad237cc49543d9af9f.webp?v=1751270231","variant_ids":[43502764687459]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Ash Grey","public_title":"Ash Grey","options":["Ash Grey"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS01296O8-TDF02","featured_media":{"alt":null,"id":25756146991203,"position":3,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/fea88e8c5f074d9f47e042ad237cc49543d9af9f.webp?v=1751270231"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43502764720227,"title":"Black","option1":"Black","option2":null,"option3":null,"sku":"MNS0129652-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099496321123,"product_id":7829058289763,"position":10,"created_at":"2025-06-30T15:57:12+08:00","updated_at":"2025-06-30T15:57:14+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/97e18b652552adca7c95983158c97e37fce991ff.webp?v=1751270234","variant_ids":[43502764720227]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Black","public_title":"Black","options":["Black"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS0129652-TDF02","featured_media":{"alt":null,"id":25756148924515,"position":10,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/97e18b652552adca7c95983158c97e37fce991ff.webp?v=1751270234"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}];
$defaultVariant = {"id":43502764621923,"title":"Glacier Blue","option1":"Glacier Blue","option2":null,"option3":null,"sku":"MNS01296Z7-TDF02","requires_shipping":true,"taxable":true,"featured_image":{"id":34099491602531,"product_id":7829058289763,"position":2,"created_at":"2025-06-30T15:57:08+08:00","updated_at":"2025-06-30T15:57:10+08:00","alt":null,"width":2000,"height":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230","variant_ids":[43502764621923]},"available":true,"name":"iPhone 15 Plus SolidX (MagSafe 兼容) Tour de France Monochrome - Glacier Blue","public_title":"Glacier Blue","options":["Glacier Blue"],"price":145000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":"MNS01296Z7-TDF02","featured_media":{"alt":null,"id":25756146663523,"position":2,"preview_image":{"aspect_ratio":1.0,"height":2000,"width":2000,"src":"\/\/b2b.rhinoshield.tw\/cdn\/shop\/files\/b2d102ba376521efab9e2edf755ff076db23f16c.webp?v=1751270230"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}};
$device_handle = null;
$brand_handle = null;
$type = "";
var sellingStatus
// 只有設計款(SKU 含 '-')才需要合圖
if ($isMerge && $defaultVariant.sku.includes('-')) {
$(document).ready(function() {
var productImg = $product.images[0];
var bumperImg = window.getProductImageUrl($defaultVariant.sku.split('-')[0]);
var layers = ($type === 'mod-nx-backplate' || $type === 'mod-backplate')
? [productImg, bumperImg]
: [bumperImg, productImg];
window.mergeProductImages(layers).then(function (mergedImg) {
$('.merged-img').attr('src', mergedImg);
});
});
};
var sellingStatusData
window.fetchSellingStatus().then(data => {
try {
sellingStatusData = data;
} catch (error) {
sellingStatusData = null
console.error('Unable to parse selling status', error)
}
$(document).ready(function() {
handleSellingStatus($defaultVariant.sku);
});
})
function handleSellingStatus(currentSku) {
if (!sellingStatusData) {
console.error('No selling status available!')
return
}
const sellingStatusElement = document.getElementById('selling-status')
const addToCartButton = document.getElementById('AddToCart-product-template')
const currentProductSku = currentSku.replace(/-(.*)$/, '-')
if ($variants) {
const flattenedSellingStatus = [...sellingStatusData.pending, ...sellingStatusData.preorder]
const matchSellingStatusProduct = flattenedSellingStatus.filter(product => currentProductSku === product.sku)
if (matchSellingStatusProduct.length > 0) {
const isProductPending = matchSellingStatusProduct[0].status === 'pending'
const matchDate = matchSellingStatusProduct[0].date
sellingStatus = isProductPending
? "缺貨中"
: "預購完成出貨日:" + matchDate
sellingStatusElement.textContent = sellingStatus
if (sellingStatus.includes("缺貨中")){
addToCartButton.disabled ='true';
addToCartButton.textContent = "缺貨中無法加入購物車"
} else {
addToCartButton.textContent = "加到購物車"
}
} else {
sellingStatusElement.textContent = ''
addToCartButton.textContent = "加到購物車"
};
};
};
document.addEventListener('DOMContentLoaded', function () {
var currentVariantSelect = document.getElementById('SingleOptionSelector-0')
currentVariantSelect.addEventListener('change', function() {
var currentSku = $('#current_sku').text()
var skuElement = document.getElementById('current-sku')
skuElement.textContent = currentSku
handleSellingStatus(currentSku)
});
});
// Override default values of shop.strings for each template.
// Alternate product templates can change values of
// add to cart button, sold out, and unavailable states here.
theme.productStrings = {
addToCart: "加到購物車",
soldOut: "售完",
unavailable: "停產"
}