Zestaw szortów haftowanych
${function() {
const variantData = data.variant || {"id":"b132dbfe-2eaa-4f2e-8d99-e4df5e46d01c","product_id":"b3555daa-e3fd-4e87-aa58-a227b09e21fe","title":"czarny-S","weight_unit":"kg","inventory_quantity":999,"sku":"ct15-bla-S","barcode":"","position":1,"option1":"czarny","option2":"S","option3":"","note":"","image":{"src":"\/\/img.staticdj.com\/0a80b959543fad307d654757a10bf7ce.png","path":"0a80b959543fad307d654757a10bf7ce.png","width":720,"height":1080,"alt":"","aspect_ratio":0.6666666666666666},"wholesale_price":[{"price":129,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"129","retail_price":"0","available":true,"url":"\/products\/embroidered-shorts-co-ord?variant=b132dbfe-2eaa-4f2e-8d99-e4df5e46d01c","available_quantity":999999999,"options":[{"name":"kolor","value":"czarny"},{"name":"rozmiar","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":17};
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":"b132dbfe-2eaa-4f2e-8d99-e4df5e46d01c","product_id":"b3555daa-e3fd-4e87-aa58-a227b09e21fe","title":"czarny-S","weight_unit":"kg","inventory_quantity":999,"sku":"ct15-bla-S","barcode":"","position":1,"option1":"czarny","option2":"S","option3":"","note":"","image":{"src":"\/\/img.staticdj.com\/0a80b959543fad307d654757a10bf7ce.png","path":"0a80b959543fad307d654757a10bf7ce.png","width":720,"height":1080,"alt":"","aspect_ratio":0.6666666666666666},"wholesale_price":[{"price":129,"min_quantity":1}],"weight":"0","compare_at_price":"0","price":"129","retail_price":"0","available":true,"url":"\/products\/embroidered-shorts-co-ord?variant=b132dbfe-2eaa-4f2e-8d99-e4df5e46d01c","available_quantity":999999999,"options":[{"name":"kolor","value":"czarny"},{"name":"rozmiar","value":"S"}],"off_ratio":0,"flashsale_info":[],"sales":17};
return `
`
}()}
Płatność gotówką przy odbiorze
Masz prawo zwrócić produkt w ciągu 14 dni
Zapłać online i zyskaj 10% rabatu
- Materiał: mieszanka bawełny
- Dekolt: Okrągły dekolt
- Talia: elastyczna talia
- Spodnie: Szorty
- Długość spodni: Spodnie o długości pięciu czwartych
- Długość rękawa: bez rękawów
- Styl garnituru: garnitur z krótkimi spodenkami
- Wzór: Drukuj
- Styl: etniczny retro
- Sezon: lato
- Okazja: codziennie, wakacje, dojazdy do pracy, impreza
TABELA ROZMIARÓW
Uwaga! ! ! Przy wyborze rozmiaru zaleca się sprawdzenie konkretnych wartości (w calach) podanych w tabeli. Rozmiary są porównywalnie małe, dlatego zalecamy o jeden rozmiar większy.
ROZMIAR |
Biust |
Długość górna |
Talia |
Biodra |
Długość spodni |
S |
95 cm |
56 cm |
72 cm |
100 cm |
45 cm |
M |
102 cm |
57 cm |
78 cm |
106 cm |
46 cm |
L |
109 cm |
58 cm |
84 cm |
112 cm |
47 cm |
XL |
116 cm |
59 cm |
90 cm |
118 cm |
48 cm |
2XL |
123 cm |
60 cm |
96 cm |
124 cm |
49 cm |
3XL |
130 cm |
61 cm |
112 cm |
130 cm |
50 cm |
CIEPŁE WSKAZÓWKI!
Dane te uzyskano na podstawie ręcznego pomiaru produktu, mogą różnić się o 1-2 CM.
Rozmiary ltem są zgodne z tabelą rozmiarów. Aby znaleźć swój rozmiar, zapoznaj się z tabelą rozmiarów
Jeśli wahasz się pomiędzy rozmiarami, zalecamy większą opcję, aby zapewnić lepsze dopasowanie.
ZDJĘCIA
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.