Skip to content

Commit

Permalink
SAK-47738 Library tests & quizzes poor color contrast of print assess…
Browse files Browse the repository at this point in the history
…ment
  • Loading branch information
Sharadhi authored and Sharadhi committed Oct 21, 2024
1 parent 2f8d957 commit 162e092
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 2 deletions.
46 changes: 46 additions & 0 deletions library/src/webapp/js/portal/portal.theme.switcher.js
Original file line number Diff line number Diff line change
Expand Up @@ -63,30 +63,76 @@ document.addEventListener('DOMContentLoaded', () => {
portal.updateIframeTheme();
});

const assessmentTitle = document.getElementById("assessmentForm:title");
const getDynamicParts = () => {
const partNumbers = document.querySelectorAll("[id^='assessmentForm:parts'][id$=':number']");
const partTitles = document.querySelectorAll("[id^='assessmentForm:parts'][id$=':title']");
return { partNumbers, partTitles };
};

const applyColorToElements = (color) => {
const { partNumbers, partTitles } = getDynamicParts();

if (assessmentTitle) {
assessmentTitle.style.color = color;
}

partNumbers.forEach(partNumber => {
partNumber.style.color = color;
});

partTitles.forEach(partTitle => {
partTitle.style.color = color;
});
};

portal.enableDarkTheme = () => {

portal.setPortalThemeUserPref("dark");
portal.setDarkThemeSwitcherToggle(true);
portal.removeCssClassFromMarkup(portal.defaultThemeClass);
portal.removeCssClassFromMarkup(portal.lightThemeClass);
portal.addCssClassToMarkup(portal.darkThemeClass);
portal.setPortalThemeUserPref(portal.darkThemeClass);
portal.updateIframeTheme();
portal.darkThemeSwitcher.title = portal.i18n.theme_switch_to_light;
applyColorToElements('#02bce6');
localStorage.setItem('theme', 'dark');
};

portal.enableLightTheme = () => {

portal.setPortalThemeUserPref("light");
portal.setDarkThemeSwitcherToggle(false);
portal.removeCssClassFromMarkup(portal.defaultThemeClass);
portal.removeCssClassFromMarkup(portal.darkThemeClass);
portal.addCssClassToMarkup(portal.lightThemeClass);
portal.setPortalThemeUserPref(portal.lightThemeClass);
portal.updateIframeTheme();
portal.darkThemeSwitcher.title = portal.i18n.theme_switch_to_dark;
applyColorToElements('#016177');
localStorage.setItem('theme', 'light');
};

const applySavedTheme = async () => {
const savedTheme = localStorage.getItem('theme');

if (savedTheme === 'dark') {
portal.enableDarkTheme();
} else if (savedTheme === 'light') {
portal.enableLightTheme();
} else {
const themeFromBackend = await portal.getCurrentSetTheme();

if (themeFromBackend === portal.darkThemeClass) {
portal.enableDarkTheme();
} else {
portal.enableLightTheme();
}
}
};

applySavedTheme();

// if the dark theme switch is on the page, attach listener to dark theme toggle switch
portal.darkThemeSwitcher?.addEventListener('click', portal.toggleDarkTheme, false);
Expand Down
2 changes: 0 additions & 2 deletions samigo/samigo-app/src/webapp/css/print/print.css
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,6 @@ t .navModeAction {
font-size: 1.2em;
padding: 1em 3em 1em 1em;
margin-bottom: 0em;
color: #01a5cb;
font-weight: normal;
background-color: transparent !important;
}
Expand All @@ -138,7 +137,6 @@ t .navModeAction {

.part_title_text {
font-size: 1.2em;
color: #01a5cb;
padding: 3em 0em 1em 1em;
font-weight: normal;
}
Expand Down

0 comments on commit 162e092

Please sign in to comment.