function parseStockAdedi(stokAdedi) {
if (stokAdedi === null || stokAdedi === undefined) {
return null;
}
if (typeof stokAdedi === "number") {
return Number.isFinite(stokAdedi) ? stokAdedi : null;
}
const temizStok = String(stokAdedi)
.trim()
.replace(/\s+/g, "")
.replace(",", ".");
const stok = Number(temizStok);
return Number.isFinite(stok) ? stok : null;
}
function isOzelSiparis(stokAdedi) {
const stok = Number(stokAdedi);
return Number.isFinite(stok) && stok === 0;
}
function getDynamicStockAdedi(renk, el, uzunluk, renkt, elt, uzunlukt) {
if (typeof productDetailModel !== "undefined" && Array.isArray(productDetailModel.products)) {
const searchText = `${renkt}|${elt}|${uzunlukt}`.toLocaleUpperCase("tr-TR");
const variant = productDetailModel.products.find(v =>
String(v.tedarikciKodu).toLocaleUpperCase("tr-TR").includes(searchText)
);
if (!variant) {
console.warn("Varyant bulunamadı, butona dokunulmayacak:", searchText);
return null;
}
console.log("Bulunan varyant:", variant.tedarikciKodu, "Stok:", variant.stokAdedi);
return parseStockAdedi(variant.stokAdedi);
}
console.error("productDetailModel bulunamadı veya hatalı formatta.");
return null;
}
function getDynamicStockAdedi2(renk, el, renkt, elt) {
if (typeof productDetailModel !== "undefined" && Array.isArray(productDetailModel.products)) {
const searchText = `${renkt}|${elt}`.toLocaleUpperCase("tr-TR");
const variant = productDetailModel.products.find(v =>
String(v.tedarikciKodu).toLocaleUpperCase("tr-TR").includes(searchText)
);
if (!variant) {
console.warn("Varyant bulunamadı, butona dokunulmayacak:", searchText);
return null;
}
console.log("Bulunan varyant:", variant.tedarikciKodu, "Stok:", variant.stokAdedi);
return parseStockAdedi(variant.stokAdedi);
}
console.error("productDetailModel bulunamadı veya hatalı formatta.");
return null;
}
function getDynamicStockAdedi3(renk, renkt) {
if (typeof productDetailModel !== "undefined" && Array.isArray(productDetailModel.products)) {
const searchText = String(renkt).toLocaleUpperCase("tr-TR");
const variant = productDetailModel.products.find(v =>
String(v.tedarikciKodu).toLocaleUpperCase("tr-TR").includes(searchText)
);
if (!variant) {
console.warn("Varyant bulunamadı, butona dokunulmayacak:", searchText);
return null;
}
console.log("Bulunan varyant:", variant.tedarikciKodu, "Stok:", variant.stokAdedi);
return parseStockAdedi(variant.stokAdedi);
}
console.error("productDetailModel bulunamadı veya hatalı formatta.");
return null;
}
function getDynamicStockAdediTek() {
if (
typeof productDetailModel !== "undefined" &&
typeof productDetailModel.product !== "undefined"
) {
const variant = productDetailModel.product;
if (!variant) {
console.warn("Tek ürün bulunamadı, butona dokunulmayacak.");
return null;
}
console.log("Tek ürün stok:", variant.stokAdedi);
return parseStockAdedi(variant.stokAdedi);
}
console.error("productDetailModel bulunamadı veya hatalı formatta.");
return null;
}
function butonuStokaGoreGuncelle(stokAdedi) {
const addToBasketButton = document.querySelector(".Addtobasket");
if (!addToBasketButton) {
console.warn("Sepete ekle butonu bulunamadı.");
return;
}
if (stokAdedi === null) {
console.warn("Stok okunamadı, mevcut buton durumu korunuyor.");
return;
}
console.log("Kontrol edilen stok:", stokAdedi, "Özel sipariş mi:", isOzelSiparis(stokAdedi));
if (isOzelSiparis(stokAdedi)) {
addToBasketButton.value = "Özel Sipariş";
addToBasketButton.classList.add("special-order");
addToBasketButton.style.backgroundColor = "#E32E34";
ozelSiparisYazisiGoster();
} else {
addToBasketButton.value = "Sepete Ekle";
addToBasketButton.classList.remove("special-order");
addToBasketButton.style.backgroundColor = "#007A41";
ozelSiparisYazisiGizle();
}
}