39 lines
1.0 KiB
JavaScript
39 lines
1.0 KiB
JavaScript
IdmHotspot = class extends IdmHotspot {
|
|
getDefaultHotspotOptions() {
|
|
const defaultOptions = super.getDefaultHotspotOptions();
|
|
defaultOptions.cssVariables.nameClamp = 2;
|
|
|
|
return defaultOptions;
|
|
}
|
|
markupLabel(prod) {
|
|
// Standardowe labelki
|
|
let labelMarkup = super.markupLabel(prod);
|
|
|
|
// Customowe labelki
|
|
const awards = prod?.awardedParameters;
|
|
if (awards?.length) {
|
|
const awardParam = awards.find(
|
|
(award) => award.name === "Idm_custom_label"
|
|
);
|
|
const values = awardParam?.values?.map((v) => v.name) || [];
|
|
|
|
const html = values
|
|
.map((label) => {
|
|
const [text, bgColor, color] = label.split("||");
|
|
return `<span class="label --custom" style="background-color:${bgColor}; color:${color}">${text}</span>`;
|
|
})
|
|
.join("");
|
|
|
|
labelMarkup += html;
|
|
}
|
|
|
|
return labelMarkup;
|
|
}
|
|
|
|
// Dodanie klasy do ramki rekomendacji
|
|
async afterInit() {
|
|
super.afterInit();
|
|
if (this.hotspotEl) this.hotspotEl.classList.add("--presentation");
|
|
}
|
|
};
|