Merge pull request #3 from DereC4/semesterSelection

Semester selection
This commit is contained in:
Derek Chen
2023-04-29 00:59:07 -05:00
committed by GitHub
2 changed files with 9 additions and 9 deletions

View File

@@ -48,7 +48,7 @@
<input type="text" id="courseField" name="fname" required><br><br> <input type="text" id="courseField" name="fname" required><br><br>
<label for="courseNum">Course Number (Ex: "307"):</label> <label for="courseNum">Course Number (Ex: "307"):</label>
<input type="text" id="courseNum" name="fname" required><br><br> <input type="text" id="courseNum" name="fname" required><br><br>
<label for="courseName">Course Name (Optional, useful if multiple classes have the same number):</label> <label for="courseName">Course Name (Optional, useful if classes have the same number like UGS 303):</label>
<input type="text" id="courseName" name="fname"><br><br> <input type="text" id="courseName" name="fname"><br><br>
<!-- <label for="courseInstructor">Instructor (Optional):</label> <!-- <label for="courseInstructor">Instructor (Optional):</label>
<input type="text" id="courseInstructor" name="fname"><br><br> --> <input type="text" id="courseInstructor" name="fname"><br><br> -->

16
main.js
View File

@@ -12,9 +12,9 @@ const ctx = document.getElementById("gradeBar");
Parse the input form and class data Parse the input form and class data
*/ */
async function parseName() { async function parseName() {
let className = document.getElementById('courseName').value; let className = document.getElementById('courseName').value.toUpperCase();
let classNum = document.getElementById('courseNum').value; let classNum = document.getElementById('courseNum').value;
let department = document.getElementById('courseField').value.trim(); let department = document.getElementById('courseField').value.trim().toUpperCase();
let semester = document.getElementById('semester').value; let semester = document.getElementById('semester').value;
let departments = ''; let departments = '';
await fetch('https://derec4.github.io/ut-grade-data/2022prefixes.json') await fetch('https://derec4.github.io/ut-grade-data/2022prefixes.json')
@@ -48,14 +48,14 @@ async function PapaParse(department, num, name, sem) {
url = 'https://derec4.github.io/ut-grade-data/2022%20Fall.json'; url = 'https://derec4.github.io/ut-grade-data/2022%20Fall.json';
break; break;
case 's2022': case 's2022':
url = 'https://derec4.github.io/ut-grade-data/2022%20Fall.json'; url = 'https://derec4.github.io/ut-grade-data/2022%20Summer.json';
break; break;
case 'sp2022': case 'sp2022':
// Temp, change when other data sets are added // Temp, change when other data sets are added
url = 'https://derec4.github.io/ut-grade-data/2022%20Fall.json'; url = 'https://derec4.github.io/ut-grade-data/2022%20Spring.json';
break; break;
case 'f2021': case 'f2021':
url = 'https://derec4.github.io/ut-grade-data/2022%20Fall.json'; url = 'https://derec4.github.io/ut-grade-data/2021%20Fall.json';
break; break;
default: default:
url = 'https://derec4.github.io/ut-grade-data/2022%20Fall.json'; url = 'https://derec4.github.io/ut-grade-data/2022%20Fall.json';
@@ -65,13 +65,13 @@ async function PapaParse(department, num, name, sem) {
.then(res => res.json()) .then(res => res.json())
.then(data => { cData = data; }); .then(data => { cData = data; });
let selectedClass = cData.filter(cData => cData["Course Prefix"].includes(department.toUpperCase())) let selectedClass = cData.filter(cData => cData["Course Prefix"].includes(department))
.filter(cData => cData["Course Number"] == num.toString().toUpperCase()) .filter(cData => cData["Course Number"] == num.toString().toUpperCase())
.filter(cData => cData["Course Title"].includes(name.toUpperCase())); .filter(cData => cData["Course Title"].includes(name));
if(selectedClass.length == 0) { if(selectedClass.length == 0) {
// Possible that the class name was typed wrong; try again with just the course number // Possible that the class name was typed wrong; try again with just the course number
console.log("Second Option"); console.log("Second Option");
selectedClass = cData.filter(cData => cData["Course Prefix"].includes(department.toUpperCase())) selectedClass = cData.filter(cData => cData["Course Prefix"].includes(department))
.filter(cData => cData["Course Number"] == num.toString().toUpperCase()); .filter(cData => cData["Course Number"] == num.toString().toUpperCase());
} }
if(selectedClass.length == 0) { if(selectedClass.length == 0) {