diff --git a/src/addons/competency/classes/competency-plans-source.ts b/src/addons/competency/classes/competency-plans-source.ts index 471db5ba5..53b7f3c09 100644 --- a/src/addons/competency/classes/competency-plans-source.ts +++ b/src/addons/competency/classes/competency-plans-source.ts @@ -17,6 +17,7 @@ import { CoreRoutedItemsManagerSource } from '@classes/items-management/routed-i import { ADDON_COMPETENCY_COMPETENCIES_PAGE } from '../competency.module'; import { AddonCompetency, AddonCompetencyPlan, AddonCompetencyProvider } from '../services/competency'; import { AddonCompetencyHelper } from '../services/competency-helper'; +import { CoreIonicColorNames } from '@singletons/colors'; /** * Provides a collection of learning plans. @@ -73,13 +74,13 @@ export class AddonCompetencyPlansSource extends CoreRoutedItemsManagerSource Array.from(element.querySelectorAll('img.icon, img.questioncorrectnessicon, i.icon')); icons.forEach((icon) => { - let correct = false; + let iconName: string | undefined; + let color: string | undefined; if ('src' in icon) { if ((icon as HTMLImageElement).src.indexOf('correct') >= 0) { - correct = true; - } else if ((icon as HTMLImageElement).src.indexOf('incorrect') < 0 ) { - return; + iconName = 'check'; + color = CoreIonicColorNames.SUCCESS; + } else if ((icon as HTMLImageElement).src.indexOf('incorrect') >= 0 ) { + iconName = 'xmark'; + color = CoreIonicColorNames.DANGER; } } else { - const classList = icon.classList.toString(); - if (classList.indexOf('fa-check') >= 0) { - correct = true; - } else if (classList.indexOf('fa-xmark') < 0 && classList.indexOf('fa-remove') < 0) { - return; + if (icon.classList.contains('fa-check-square')) { + iconName = 'square-check'; + color = CoreIonicColorNames.WARNING; + } else if (icon.classList.contains('fa-check')) { + iconName = 'check'; + color = CoreIonicColorNames.SUCCESS; + } else if (icon.classList.contains('fa-xmark') || icon.classList.contains('fa-remove')) { + iconName = 'xmark'; + color = CoreIonicColorNames.DANGER; } } + if (!iconName) { + return; + } + // Replace the icon with the font version. const newIcon: HTMLIonIconElement = document.createElement('ion-icon'); - if (correct) { - const iconName = 'check'; - newIcon.setAttribute('name', `fas-${iconName}`); - newIcon.setAttribute('src', CoreIcons.getIconSrc('font-awesome', 'solid', iconName)); - newIcon.className = 'core-correct-icon ion-color ion-color-success questioncorrectnessicon'; - } else { - const iconName = 'xmark'; - newIcon.setAttribute('name', `fas-${iconName}`); - newIcon.setAttribute('src', CoreIcons.getIconSrc('font-awesome', 'solid', iconName)); - newIcon.className = 'core-correct-icon ion-color ion-color-danger questioncorrectnessicon'; - } - + newIcon.setAttribute('name', `fas-${iconName}`); + newIcon.setAttribute('src', CoreIcons.getIconSrc('font-awesome', 'solid', iconName)); + newIcon.className = `core-correct-icon ion-color ion-color-${color} questioncorrectnessicon`; newIcon.title = icon.title; newIcon.setAttribute('aria-label', icon.title); icon.parentNode?.replaceChild(newIcon, icon); diff --git a/src/theme/theme.dark.scss b/src/theme/theme.dark.scss index eb4b3641b..95d463e6e 100644 --- a/src/theme/theme.dark.scss +++ b/src/theme/theme.dark.scss @@ -135,16 +135,13 @@ html.dark { --core-question-correct-color-bg: var(--success-shade); --core-question-incorrect-color: var(--danger); --core-question-incorrect-color-bg: var(--danger-shade); + --core-question-partial-color: var(--warning-tint); + --core-question-partial-color-bg: var(--warning-shade); --core-question-feedback-color: var(--warning-tint); --core-question-feedback-color-bg: var(--warning-shade); --core-question-warning-color: var(--danger); --core-question-saved-color-bg: var(--gray-500); - --core-question-state-correct-color: var(--success-shade); - --core-question-state-partial-color: var(--warning-shade); - --core-question-state-partial-text: var(--warning); - --core-question-state-incorrect-color: var(--danger-shade); - --core-question-feedback-color: var(--warning-tint); --core-question-feedback-background-color: var(--warning-shade); diff --git a/src/theme/theme.light.scss b/src/theme/theme.light.scss index c4982111d..4a0a03940 100644 --- a/src/theme/theme.light.scss +++ b/src/theme/theme.light.scss @@ -171,16 +171,13 @@ html { --core-question-correct-color-bg: var(--success-tint); --core-question-incorrect-color: var(--danger); --core-question-incorrect-color-bg: var(--danger-tint); + --core-question-partial-color: var(--warning-shade); + --core-question-partial-color-bg: var(--warning-tint); --core-question-feedback-color: var(--warning-shade); --core-question-feedback-color-bg: var(--warning-tint); --core-question-warning-color: var(--danger); --core-question-saved-color-bg: var(--gray-200); - --core-question-state-correct-color: var(--success-tint); - --core-question-state-partial-color: var(--warning-tint); - --core-question-state-partial-text: var(--warning); - --core-question-state-incorrect-color: var(--danger-tint); - --core-question-feedback-color: var(--warning-shade); --core-question-feedback-background-color: var(--warning-tint);