Spaces:
Running
Running
Fix quote: add CK% global input + fix image crossorigin blocking
Browse files- index.html +23 -3
index.html
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
<!DOCTYPE html>
|
| 2 |
<html lang="vi">
|
| 3 |
-
<head><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script>
|
| 4 |
<meta charset="UTF-8">
|
| 5 |
<meta name="viewport" content="width=device-width,initial-scale=1">
|
| 6 |
<title>V.AI STUDIO | Niềm tin khách hàng là tài sản của chúng tôi</title>
|
|
@@ -690,6 +690,11 @@ textarea.form-input{height:120px;resize:vertical}
|
|
| 690 |
</div>
|
| 691 |
</div>
|
| 692 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 693 |
<div class="quote-actions">
|
| 694 |
<button class="quote-btn" onclick="shareQuoteImage()" style="background:#25D366"><i class="fas fa-share-alt"></i> Chia sẻ ảnh</button>
|
| 695 |
<button class="quote-btn" onclick="shareQuoteLink()" style="background:#0068FF"><i class="fas fa-share-alt"></i> Chia sẻ báo giá</button>
|
|
@@ -2105,7 +2110,7 @@ let discStyle='width:80px;padding:5px 6px;border:1.5px solid var(--gl);border-ra
|
|
| 2105 |
discStyle+=locked?'background:var(--l);cursor:not-allowed':'background:#fff';
|
| 2106 |
return `<tr>
|
| 2107 |
<td style="text-align:center">${i+1}</td>
|
| 2108 |
-
<td><img class="qt-img" src="${c.image}" alt="${c.name}"
|
| 2109 |
<td class="qt-name">${c.name}</td>
|
| 2110 |
<td style="text-align:center">${model}</td>
|
| 2111 |
<td style="font-size:.72rem;color:var(--g);max-width:160px">${specs}</td>
|
|
@@ -2126,9 +2131,24 @@ let discInput=document.querySelector(`.qt-disc[data-idx="${i}"]`);
|
|
| 2126 |
let discVal=discInput?parseInt(discInput.value.replace(/\D/g,''))||0:c.priceNum;
|
| 2127 |
let lineTotal=discVal*c.qty;
|
| 2128 |
let cell=document.querySelector(`.qt-linetotal[data-idx="${i}"]`);
|
| 2129 |
-
if(cell)cell.textContent=lineTotal>0?lineTotal.toLocaleString('vi-VN')+'
|
| 2130 |
total+=lineTotal;
|
| 2131 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2132 |
document.getElementById('quoteTotalCell').textContent=total.toLocaleString('vi-VN')+'đ';
|
| 2133 |
}
|
| 2134 |
|
|
|
|
| 1 |
<!DOCTYPE html>
|
| 2 |
<html lang="vi">
|
| 3 |
+
<head><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script><script>window.huggingface={variables:{"SPACE_CREATOR_USER_ID":"661b9191e7b0ab12bceb66f3","VAISTUDIO":""}};</script>
|
| 4 |
<meta charset="UTF-8">
|
| 5 |
<meta name="viewport" content="width=device-width,initial-scale=1">
|
| 6 |
<title>V.AI STUDIO | Niềm tin khách hàng là tài sản của chúng tôi</title>
|
|
|
|
| 690 |
</div>
|
| 691 |
</div>
|
| 692 |
|
| 693 |
+
<div style="display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0;padding:10px;background:#f8fafc;border-radius:8px">
|
| 694 |
+
<label style="font-size:.8rem;font-weight:600">Chiết khấu %:</label>
|
| 695 |
+
<input type="number" id="globalCKPercent" value="0" min="0" max="100" step="1" style="width:60px;padding:6px;border:2px solid #003f62;border-radius:6px;font-size:.85rem;text-align:center">
|
| 696 |
+
<button onclick="applyGlobalDiscount()" style="padding:6px 14px;background:#003f62;color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer">Áp dụng CK</button>
|
| 697 |
+
</div>
|
| 698 |
<div class="quote-actions">
|
| 699 |
<button class="quote-btn" onclick="shareQuoteImage()" style="background:#25D366"><i class="fas fa-share-alt"></i> Chia sẻ ảnh</button>
|
| 700 |
<button class="quote-btn" onclick="shareQuoteLink()" style="background:#0068FF"><i class="fas fa-share-alt"></i> Chia sẻ báo giá</button>
|
|
|
|
| 2110 |
discStyle+=locked?'background:var(--l);cursor:not-allowed':'background:#fff';
|
| 2111 |
return `<tr>
|
| 2112 |
<td style="text-align:center">${i+1}</td>
|
| 2113 |
+
<td><img class="qt-img" src="${c.image||D[c.idx]?.image||''}" alt="${c.name}" referrerpolicy="no-referrer" onerror="this.onerror=null;this.src=D[c.idx]?.image||'';" style="width:72px;height:72px;object-fit:contain"></td>
|
| 2114 |
<td class="qt-name">${c.name}</td>
|
| 2115 |
<td style="text-align:center">${model}</td>
|
| 2116 |
<td style="font-size:.72rem;color:var(--g);max-width:160px">${specs}</td>
|
|
|
|
| 2131 |
let discVal=discInput?parseInt(discInput.value.replace(/\D/g,''))||0:c.priceNum;
|
| 2132 |
let lineTotal=discVal*c.qty;
|
| 2133 |
let cell=document.querySelector(`.qt-linetotal[data-idx="${i}"]`);
|
| 2134 |
+
if(cell)cell.textContent=lineTotal>0?lineTotal.toLocaleString('vi-VN')+'\u0111':'';
|
| 2135 |
total+=lineTotal;
|
| 2136 |
});
|
| 2137 |
+
document.getElementById('quoteTotalCell').textContent=total.toLocaleString('vi-VN')+'\u0111';
|
| 2138 |
+
}
|
| 2139 |
+
function applyGlobalDiscount(){
|
| 2140 |
+
var pctEl=document.getElementById('globalCKPercent');
|
| 2141 |
+
if(!pctEl)return;
|
| 2142 |
+
var pct=parseFloat(pctEl.value)||0;
|
| 2143 |
+
cart.forEach(function(c,i){
|
| 2144 |
+
var discInput=document.querySelector('.qt-disc[data-idx="'+i+'"]');
|
| 2145 |
+
if(discInput&&c.priceNum>0){
|
| 2146 |
+
var newPrice=Math.round(c.priceNum*(1-pct/100));
|
| 2147 |
+
discInput.value=newPrice>0?newPrice.toLocaleString('vi-VN'):'0';
|
| 2148 |
+
}
|
| 2149 |
+
});
|
| 2150 |
+
updateQuoteTotal();
|
| 2151 |
+
});
|
| 2152 |
document.getElementById('quoteTotalCell').textContent=total.toLocaleString('vi-VN')+'đ';
|
| 2153 |
}
|
| 2154 |
|