Merge pull request #581 from patriceac/Hotfix-for-repeat-image-modifiers-handling

Hotfix for repeat image modifiers
This commit is contained in:
cmdr2 2022-12-01 14:47:15 +05:30 committed by GitHub
commit 45f7b35954
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -91,7 +91,7 @@ function createModifierGroup(modifierGroup, initiallyExpanded) {
if (activeTags.map(x => trimModifiers(x.name)).includes(trimmedName)) { if (activeTags.map(x => trimModifiers(x.name)).includes(trimmedName)) {
// remove modifier from active array // remove modifier from active array
activeTags = activeTags.filter(x => trimModifiers(x.name) != trimmedName) activeTags = activeTags.filter(x => trimModifiers(x.name) != trimmedName)
toggleCardState(modifierCard, false) toggleCardState(trimmedName, false)
} else { } else {
// add modifier to active array // add modifier to active array
activeTags.push({ activeTags.push({
@ -100,7 +100,7 @@ function createModifierGroup(modifierGroup, initiallyExpanded) {
'originElement': modifierCard, 'originElement': modifierCard,
'previews': modifierPreviews 'previews': modifierPreviews
}) })
toggleCardState(modifierCard, true) toggleCardState(trimmedName, true)
} }
refreshTagsList() refreshTagsList()
@ -221,8 +221,8 @@ function refreshTagsList() {
tag.element.addEventListener('click', () => { tag.element.addEventListener('click', () => {
let idx = activeTags.indexOf(tag) let idx = activeTags.indexOf(tag)
if (idx !== -1 && activeTags[idx].originElement !== undefined) { if (idx !== -1) {
toggleCardState(activeTags[idx].originElement, false) toggleCardState(activeTags[idx].name, false)
activeTags.splice(idx, 1) activeTags.splice(idx, 1)
refreshTagsList() refreshTagsList()
@ -235,14 +235,20 @@ function refreshTagsList() {
editorModifierTagsList.appendChild(brk) editorModifierTagsList.appendChild(brk)
} }
function toggleCardState(card, makeActive) { function toggleCardState(modifierName, makeActive) {
if (makeActive) { document.querySelector('#editor-modifiers').querySelectorAll('.modifier-card').forEach(card => {
card.classList.add(activeCardClass) const name = card.querySelector('.modifier-card-label').innerText
card.querySelector('.modifier-card-image-overlay').innerText = '-' if (trimModifiers(modifierName) == trimModifiers(name)) {
} else { if(makeActive) {
card.classList.remove(activeCardClass) card.classList.add(activeCardClass)
card.querySelector('.modifier-card-image-overlay').innerText = '+' card.querySelector('.modifier-card-image-overlay').innerText = '-'
} }
else{
card.classList.remove(activeCardClass)
card.querySelector('.modifier-card-image-overlay').innerText = '+'
}
}
})
} }
function changePreviewImages(val) { function changePreviewImages(val) {