Merge pull request #19 from omajoshi/master

This commit is contained in:
Sriram Hariharan
2021-10-17 15:16:41 -05:00
committed by GitHub
6 changed files with 44 additions and 20 deletions

View File

@@ -100,8 +100,16 @@ function buildEventSource(saved_courses) {
coursename,
datetimearr
} = saved_courses[i];
let number = seperateCourseNameParts(coursename).number;
hours += parseInt(number.charAt(0));
let number = separateCourseNameParts(coursename).number;
let class_length = parseInt(number.charAt(0));
let multi_semester_code = number.slice(-1);
if (["A","B"].includes(multi_semester_code)) {
hours += Math.floor(class_length/2);
} else if (["X","Y","Z"].includes(multi_semester_code)) {
hours += Math.floor(class_length/3);
} else {
hours += class_length;
}
for (let j = 0; j < datetimearr.length; j++) {
let session = datetimearr[j]; // One single session for a class
let event_obj = setEventForSection(session, color_counter, i);
@@ -129,7 +137,7 @@ function setEventForSection(session, colorCounter, i) {
let {
department,
number
} = seperateCourseNameParts(coursename)
} = separateCourseNameParts(coursename)
beg_day = calculateBeginningDate(full_day)
start_date = formatCalculateDate(beg_day, full_day, session[1][0]);
end_date = formatCalculateDate(beg_day, full_day, session[1][1]);

View File

@@ -105,7 +105,7 @@ function buildBasicCourseInfo(row, course_name, individual) {
name,
department,
number
} = seperateCourseNameParts(course_name);
} = separateCourseNameParts(course_name);
let instructor_text = $(row).find('td[data-th="Instructor"]').text();
let has_initial = instructor_text.indexOf(',') > 0;
course_info = {
@@ -223,7 +223,7 @@ function updateTextHighlighting(tds, canHighlight, isConflict, alreadyContains,
}
return false;
}).map(function(course){
let { name, department, number} = seperateCourseNameParts(course.coursename);
let { name, department, number} = separateCourseNameParts(course.coursename);
return `${department} ${number} (${course.unique})`;
});
if(isConflict && unique_list.length){
@@ -277,7 +277,7 @@ function getDayTimeArray(row, course_info) {
}
function convertDateTimeArrToLine(date, time, place) {
let arr = seperateDays(date)
let arr = separateDays(date)
let output = prettifyDaysText(arr)
let building = place.substring(0, place.search(/\d/) - 1);
building = building ? building : "Undecided Location";

View File

@@ -114,7 +114,7 @@ function buildBasicCourseInfo(row, course_name, individual) {
name,
department,
number
} = seperateCourseNameParts(course_name);
} = separateCourseNameParts(course_name);
let instructor_text = $(row).find('td[data-th="Instructor"]').text();
let has_initial = instructor_text.indexOf(',') > 0;
course_info = {

View File

@@ -12,7 +12,7 @@ function setCourseList() {
updateConflicts();
courses = data.savedCourses;
handleEmpty();
let num_hours = 0;
let hours = 0;
// build and append the course list element
for (var i = 0; i < courses.length; i++) {
let { coursename, unique, profname, status, datetimearr } = courses[i];
@@ -20,13 +20,20 @@ function setCourseList() {
let line = buildTimeLines(datetimearr);
let list_tile_color = getStatusColor(status);
let list_sub_color = getStatusColor(status, true);
let { department, number } = seperateCourseNameParts(coursename);
num_hours += parseInt(number.substring(0, 1));
let { department, number } = separateCourseNameParts(coursename);
let class_length = parseInt(number.charAt(0));
let multi_semester_code = number.slice(-1);
if (["A","B"].includes(multi_semester_code)) {
hours += Math.floor(class_length/2);
} else if (["X","Y","Z"].includes(multi_semester_code)) {
hours += Math.floor(class_length/3);
} else {
hours += class_length;
}
let list_html = Template.Popup.list_item(i, list_tile_color, unique, department, number, profname, list_sub_color, line);
$("#courseList").append(list_html);
}
$("#meta-metric").text(num_hours);
$("#meta-metric").text(hours);
});
}
@@ -69,7 +76,7 @@ function updateConflicts() {
/* prettify the name for the conflict messages*/
function formatShortenedCourseName(course) {
let { number, department } = seperateCourseNameParts(course.coursename);
let { number, department } = separateCourseNameParts(course.coursename);
return `${department} ${number} (${course.unique})`;
}
@@ -300,9 +307,18 @@ function handleRemove(clicked_item, curr_course) {
function subtractHours(curr_course) {
let curr_total_hours = parseInt($("#meta-metric").text());
let curr_course_number = seperateCourseNameParts(curr_course.coursename).number;
let curr_individual_hours = parseInt(curr_course_number.substring(0, 1));
$("#meta-metric").text(curr_total_hours - curr_individual_hours);
let curr_course_number = separateCourseNameParts(curr_course.coursename).number;
let class_length = parseInt(curr_course_number.charAt(0));
let multi_semester_code = curr_course_number.slice(-1);
if (["A","B"].includes(multi_semester_code)) {
$("#meta-metric").text(curr_total_hours - Math.floor(class_length/2));
} else if (["X","Y","Z"].includes(multi_semester_code)) {
$("#meta-metric").text(curr_total_hours - Math.floor(class_length/3));
} else {
$("#meta-metric").text(curr_total_hours - class_length);
}
}
function handleMoreInfo(clicked_item, curr_course) {

View File

@@ -184,7 +184,7 @@ function buildTimeTitle(times) {
}
function makeLine(date, time, place) {
var arr = seperateDays(date)
var arr = separateDays(date)
var output = prettifyDaysText(arr)
var building = place.substring(0, place.search(/\d/) - 1);
building = building == "" ? "Undecided Location" : building;

View File

@@ -54,7 +54,7 @@ function capitalizeString(string) {
return output.trim();
}
function seperateCourseNameParts(name) {
function separateCourseNameParts(name) {
let num_index = name.search(/\d/);
department = name.substring(0, num_index).trim();
number = name.substring(num_index, name.indexOf(" ", num_index)).trim();
@@ -67,11 +67,11 @@ function seperateCourseNameParts(name) {
}
function seperateDays(date, simple=false) {
function separateDays(date, simple=false) {
let arr = [];
for (var i = 0; i < date.length; i++) {
let letter = date.charAt(i);
let seperated_letter = letter;
let separated_letter = letter;
if (letter == "T" && i < date.length - 1 && date.charAt(i + 1) == "H") {
arr.push(simple ? "TH" : days.get("TH"));
} else {