Kamizelka koszulowa bez rękawów zapinana na guziki
${function() {
const variantData = data.variant || {"id":"66630c07-411c-4bf2-9a0c-74e7f89c2aa7","product_id":"4ec109f5-1f4b-433c-a796-cce0b758a8dd","title":"Jasnozielony-S","weight_unit":"kg","inventory_quantity":100,"sku":"bg35-LightG-S","barcode":"","position":1,"option1":"Jasnozielony","option2":"S","option3":"","note":"","image":{"src":"\/\/img.staticdj.com\/c445e1fa8b2ebf54ac210d4c3eee2097.jpeg","path":"c445e1fa8b2ebf54ac210d4c3eee2097.jpeg","width":800,"height":800,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":115,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"115","retail_price":"0","available":true,"url":"\/products\/sleeveless-shirt-vest-with-buttons?variant=66630c07-411c-4bf2-9a0c-74e7f89c2aa7","available_quantity":999999999,"options":[{"name":"Kolor","value":"Jasnozielony"},{"name":"Rozmiar","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":0};
const saveType = "amount";
const productLabelDiscountOn = true;
return `
-
${saveType == 'percentage'
? `-${variantData.off_ratio}%`
: `-`
}
`;
}()}
${function(){
const tipText = "Wybierz {{ name }}".replace(/\{\{\s+name\s+\}\}/g, data);
return `${tipText}
`
}()}
${function(){
const tipText = "Wybierz {{ name }}".replace(/\{\{\s+name\s+\}\}/g, data);
return `${tipText}
`
}()}
Produkt był niedostępny.
Produkt niedostępny.
${function(){
const variantData = data.variant || {"id":"66630c07-411c-4bf2-9a0c-74e7f89c2aa7","product_id":"4ec109f5-1f4b-433c-a796-cce0b758a8dd","title":"Jasnozielony-S","weight_unit":"kg","inventory_quantity":100,"sku":"bg35-LightG-S","barcode":"","position":1,"option1":"Jasnozielony","option2":"S","option3":"","note":"","image":{"src":"\/\/img.staticdj.com\/c445e1fa8b2ebf54ac210d4c3eee2097.jpeg","path":"c445e1fa8b2ebf54ac210d4c3eee2097.jpeg","width":800,"height":800,"alt":"","aspect_ratio":1},"wholesale_price":[{"price":115,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"115","retail_price":"0","available":true,"url":"\/products\/sleeveless-shirt-vest-with-buttons?variant=66630c07-411c-4bf2-9a0c-74e7f89c2aa7","available_quantity":999999999,"options":[{"name":"Kolor","value":"Jasnozielony"},{"name":"Rozmiar","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":0};
return `
`
}()}
Płatność gotówką przy odbiorze
Masz prawo zwrócić produkt w ciągu 14 dni
Zapłać online i zyskaj 10% rabatu
CECHY
Materiał: wysokiej jakości tkanina poliestrowa, super lekka i oddychająca, ale zachowująca swój kształt, nieprzezroczysta, idealna na lato.
Odpowiednia okazja: codziennie, biuro, impreza na plaży, wakacje, odzież uliczna, odzież domowa, wydarzenia na plaży.
Łatwe do dopasowania do spodni, dżinsów, szortów.
SPECYFIKACJE
Typ przedmiotu: Kamizelka
Okazja: plaża, wakacje, codziennie
Styl: swobodny
Płeć żeńska
Sezon: lato
Kolor: zieleń wojskowa, biały, czarny, szary, niebieski, pomarańczowy, jasnozielony
Rozmiar: S-5XL (CM/IN)
PAKIET
- 1 * kamizelka bez rękawów z guzikami
NOTATKA
Proszę pozwolić na niewielkie odchylenia pomiaru ze względu na pomiary ręczne.
Ze względu na inny monitor i efekt świetlny rzeczywisty kolor przedmiotu może nieznacznie różnić się od koloru pokazanego na zdjęciach.
Here are what our customers say.
Najnowsza
Najbardziej lubiany
Najwyższe oceny
Najniższe oceny
Najbardziej lubiany
Najwyższe oceny
Najniższe oceny
×
${function(){
const limit = typeof data === 'number' ? data : 0;
return `
Zdjęcia/wideo (${limit || 0}/5)
` }()}
${(function(){
const closeIcon =
'
';
if (item.type === 'image') {
return `
${closeIcon}
`
}
return `
${closeIcon}
`
})()}
class SpzCustomFileUpload extends SPZ.BaseElement {
constructor(element) {
super(element);
this.uploadCount_ = 0;
this.fileList_ = [];
}
buildCallback() {
this.action = SPZServices.actionServiceForDoc(this.element);
this.registerAction('upload', (data) => {
this.handleFileUpload_(data.event?.detail?.data || []);
});
this.registerAction('delete', (data) => {
this.handleFileDelete_(data?.args?.data);
});
this.registerAction('preview', (data) => {
this.handleFilePreview_(data?.args?.data);
});
this.registerAction('limit', (data) => {
this.handleFileLimit_();
});
this.registerAction('sizeLimit', (data) => {
this.handleFileSizeLimit_();
});
}
isLayoutSupported(layout) {
return layout == SPZCore.Layout.LOGIC;
}
setData_(count, file) {
this.uploadCount_ = count;
this.fileList_ = file;
}
handleFileUpload_(data) {
data.forEach(i => {
if(this.fileList_.some(j => j.url === i.url)) return;
this.fileList_.push(i);
})
this.uploadCount_++;
sessionStorage.setItem('fileList', JSON.stringify(this.fileList_));
this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_});
if(this.fileList_.length >= 5){
document.querySelector('#review_upload').style.display = 'none';
}
if(this.fileList_.length > 0){
document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px';
}
}
handleFileDelete_(index) {
this.fileList_.splice(index, 1);
this.uploadCount_--;
sessionStorage.setItem('fileList', JSON.stringify(this.fileList_));
this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_});
document.querySelector('#review_upload').style.display = 'block';
if(this.fileList_?.length === 0){
document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px';
}
}
handleFilePreview_(index) {
const finalPreviewData = this.fileList_[index];
const filePreviewModal = document.getElementById('filePreviewModal');
const fullScreenVideo = document.getElementById('fullScreenVideo');
const fullScreenImage = document.getElementById('fullScreenImage');
const previewModalClose = document.getElementById('previewModalClose');
const previewLoading = document.getElementById('previewLoading');
filePreviewModal.style.display = 'block';
previewLoading.style.display = 'flex';
if(finalPreviewData?.type === 'video'){
const media = this.mediaParse_(this.fileList_[index]?.url);
fullScreenVideo.addEventListener('canplaythrough', function() {
previewLoading.style.display = 'none';
});
fullScreenImage.src = '';
fullScreenImage.style.display = 'none';
fullScreenVideo.style.display = 'block';
fullScreenVideo.src = media.mp4 || '';
} else {
fullScreenImage.onload = function() {
previewLoading.style.display = 'none';
};
fullScreenVideo.src = '';
fullScreenVideo.style.display = 'none';
fullScreenImage.style.display = 'block';
fullScreenImage.src = finalPreviewData.url;
}
previewModalClose.addEventListener('click', function() {
filePreviewModal.style.display = 'none';
});
}
handleFileLimit_() {
alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5');
this.triggerEvent_("handleFileLimit");
}
handleFileSizeLimit_() {
alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M');
}
clear(){
this.fileList_ = [];
this.uploadCount_ = 0;
sessionStorage.setItem('fileList', JSON.stringify(this.fileList_));
this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_});
document.querySelector('#review_upload').style.display = 'block';
}
mediaParse_(url) {
var result = {};
try {
url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) {
try {
result[key] = decodeURIComponent(value);
} catch (e) {
result[key] = value;
}
});
result.preview_image = url.split('?')[0];
} catch (e) {};
return result;
}
triggerEvent_(name, data) {
const event = SPZUtils.Event.create(this.win, name, data);
this.action.trigger(this.element, name, event);
}
}
SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.