From 37858cc99c6806b06f7cec6e0770ab70f1203050 Mon Sep 17 00:00:00 2001 From: Crazypersonalph <93847055+Crazypersonalph@users.noreply.github.com> Date: Mon, 4 Dec 2023 19:08:41 +0800 Subject: [PATCH] more done --- src/SEQTA.ts | 54 +++++++++++++++++++++++++++------------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/src/SEQTA.ts b/src/SEQTA.ts index a7fba1d1..aeaf348e 100644 --- a/src/SEQTA.ts +++ b/src/SEQTA.ts @@ -1263,14 +1263,15 @@ async function AddBetterSEQTAElements(toggle: any) { // Process the students data var index = students.findIndex(function (person: any) { return ( - person.firstname == info.userDesc.split(' ')[0] && - person.surname == info.userDesc.split(' ')[1] + person.firstname == students.userDesc.split(' ')[0] && + person.surname == students.userDesc.split(' ')[1] ); }); - let houseelement = document.getElementsByClassName('userInfohouse')[0]; + let houseelement1 = document.getElementsByClassName('userInfohouse')[0]; + const houseelement = houseelement1 as HTMLElement if (students[index]?.house) { - houseelement.style.background = students[index].house_colour; + (houseelement as HTMLElement).style.background = students[index].house_colour; try { let colorresult = GetThresholdOfColor(students[index]?.house_colour); @@ -1408,18 +1409,18 @@ async function AddBetterSEQTAElements(toggle: any) { var AddedSettings = document.getElementById('AddedSettings'); var extensionPopup = document.getElementById('ExtensionPopup'); - AddedSettings.addEventListener('click', function () { + AddedSettings!.addEventListener('click', function () { if (SettingsClicked) { - extensionPopup.classList.add('hide'); + extensionPopup!.classList.add('hide'); animate( '#ExtensionPopup', { opacity: [1, 0], scale: [1, 0] }, { easing: spring({ stiffness: 220, damping: 18 }) } ); - document.getElementById('ExtensionIframe').contentWindow.postMessage('popupClosed', '*'); + (document.getElementById('ExtensionIframe')! as HTMLIFrameElement).contentWindow!.postMessage('popupClosed', '*'); SettingsClicked = false; } else { - extensionPopup.classList.remove('hide'); + extensionPopup!.classList.remove('hide'); animate( '#ExtensionPopup', { opacity: [0, 1], scale: [0, 1] }, @@ -1495,7 +1496,7 @@ function CheckCurrentLesson(lesson: any, num: number) { // If 5 minutes before the start of another lesson: if (minutes == 5) { const result = browser.storage.local.get('lessonalert') - function open (result) { + function open (result: any) { if (result.lessonalert) { // Checks if notifications are supported if (!window.Notification) { @@ -1792,7 +1793,7 @@ function comparedate(obj1: any, obj2: any) { return 0; } -function CreateElement(type: string, class_, id, innerText, innerHTML, style) { +function CreateElement(type: string, class_?: any, id?: any, innerText?: string, innerHTML?: string, style?: string) { let element = document.createElement(type); if (class_ !== undefined) { element.classList.add(class_); @@ -1807,13 +1808,13 @@ function CreateElement(type: string, class_, id, innerText, innerHTML, style) { element.innerHTML = innerHTML; } if (style !== undefined) { - element.style = style; + element.style.cssText = style; } return element; } -function createAssessmentDateDiv(date, value, datecase = undefined) { - var options = { weekday: 'long', month: 'long', day: 'numeric' }; +function createAssessmentDateDiv(date: string, value: any, datecase = undefined) { + var options = { weekday: 'long' as 'long', month: 'long' as 'long', day: 'numeric' as 'numeric' }; const FormattedDate = new Date(date); const assessments = value.assessments; @@ -1846,7 +1847,7 @@ function createAssessmentDateDiv(date, value, datecase = undefined) { item.setAttribute('data-subject', element.code); item.id = `assessment${element.id}`; - item.style = element.colour; + item.style.cssText = element.colour; let titlediv = document.createElement('div'); titlediv.classList.add('upcoming-subject-title'); @@ -1855,7 +1856,7 @@ function createAssessmentDateDiv(date, value, datecase = undefined) { stringToHTML(` `).firstChild; - titlediv.append(titlesvg); + titlediv.append(titlesvg!); let detailsdiv = document.createElement('div'); detailsdiv.classList.add('upcoming-details'); @@ -1865,7 +1866,7 @@ function createAssessmentDateDiv(date, value, datecase = undefined) { subject.innerText = element.title; subject.classList.add('upcoming-assessment-title'); subject.onclick = function () { - document.querySelector('#menu ul').classList.add('noscroll'); + document.querySelector('#menu ul')!.classList.add('noscroll'); location.href = `../#?page=/assessments/${element.programmeID}:${element.metaclassID}&item=${element.id}`; }; detailsdiv.append(detailstitle); @@ -1897,7 +1898,7 @@ function createAssessmentDateDiv(date, value, datecase = undefined) { let submittedtext = document.createElement('div'); submittedtext.classList.add('upcoming-submittedtext'); submittedtext.innerText = 'Submitted'; - assessment.append(submittedtext); + assessment!.append(submittedtext); } }); } @@ -1907,7 +1908,7 @@ function createAssessmentDateDiv(date, value, datecase = undefined) { return container; } -function CheckSpecialDay(date1, date2) { +function CheckSpecialDay(date1: Date, date2: Date) { if ( date1.getFullYear() === date2.getFullYear() && date1.getMonth() === date2.getMonth() && @@ -1931,24 +1932,25 @@ function CheckSpecialDay(date1, date2) { } } -function CreateSubjectFilter(subjectcode, itemcolour, checked) { +function CreateSubjectFilter(subjectcode: any, itemcolour: string, checked: any) { let label = CreateElement('label', 'upcoming-checkbox-container'); label.innerText = subjectcode; - let input = CreateElement('input'); + let input1 = CreateElement('input'); + const input = input1 as HTMLInputElement input.type = 'checkbox'; input.checked = checked; input.id = `filter-${subjectcode}`; - label.style = itemcolour; + label.style.cssText = itemcolour; let span = CreateElement('span', 'upcoming-checkmark'); label.append(input); label.append(span); input.addEventListener('change', function (change) { const result = browser.storage.local.get() - function open (storage) { + function open (storage: any) { let filters = storage.subjectfilters; - let id = change.target.id.split('-')[1]; - filters[id] = change.target.checked; + let id = (change.target as HTMLInputElement)!.id.split('-')[1]; + filters[id] = (change.target as HTMLInputElement)!.checked; browser.storage.local.set({ subjectfilters: filters }); } @@ -1958,9 +1960,9 @@ function CreateSubjectFilter(subjectcode, itemcolour, checked) { return label; } -function CreateFilters(subjects) { +function CreateFilters(subjects: any) { const result = browser.storage.local.get() - function open (result) { + function open (result: any) { let filteroptions = result.subjectfilters; let filterdiv = document.querySelector('#upcoming-filters');