var grades;
var rmpLink;
var eCISLink;
var coursename;
var profname;
var profinit;
var uniquenum;
var profurl;
var department;
var course_nbr;
var description;
var status;
const days = new Map([["M" ,"Monday"],
["T", "Tuesday"], ["W", "Wednesday"],["TH" ,"Thursday"],
["F", "Friday"]]);
const fadetime = 150;
const butdelay = 100;
$(document).ready( function() {
loadDataBase();
//make heading
$("table thead th:last-child").after('
'+makeLine(date,time,place)+'');
// makeLine(date,time,place);
}
return false;
}
});
if(typeof coursename == 'undefined'){
coursename = $("#details h2").text();
console.log(profname+" "+profinit);
profinit = profinit.substring(0,1);
profurl = document.URL;
}
//console.log(coursename);
getDescription();
department = coursename.substring(0,coursename.search(/\d/)-2);
//console.log(department);
course_nbr = coursename.substring(coursename.search(/\d/),coursename.indexOf(" ",coursename.search(/\d/)));
}
//MWF
//TTH
//MTHF
function makeLine(date, time, place){
var arr = new Array();
var output = "";
for(var i = 0; i 2){
for(var i = 0; i"+place.substring(0,place.search(/\d/)-1)+">";
}
function order(){
}
function getDistribution(){
var query = "select * from agg";
query += " where dept like '%"+department+"%'";
query += " and prof like '%"+profname+"%'";
query += " and course_nbr like '%"+course_nbr+"%'";
// console.log(query);
var res = grades.exec(query)[0];
// console.log(res);
var output = "";
openDialog(department,coursename,"aggregate",profname,res);
}
function openDialog(dep,cls,sem,professor,res){
$(".modal").fadeIn(fadetime);
var data;
if(typeof res == 'undefined'){
data = [];
}
else{
data = res.values[0];
}
var modal = document.getElementById('myModal');
var span = document.getElementsByClassName("close")[0];
modal.style.display = "block";
$(".title").text(prettifyTitle());
var color = "black";
if(status.includes("open")){
color = "#4CAF50";
}
else if(status.includes("waitlisted")){
color = "#FF9800"
}
else if(status.includes("closed") || status.includes("cancelled")){
color = "#F44336";
}
$(".title").append(""+" #"+uniquenum+">");
var name;
if(profname == ""){
name = "Undecided Professor ";
if(typeof res == 'undefined'){
}
}
else{
name = profname.substring(0,1)+profname.substring(1).toLowerCase();
}
$(".profname").html("
with "+""+name+"
{point.key}
',
pointFormat: '
{point.y:.0f} Students
',
footerFormat: '
',
shared: true,
useHTML: true
},
plotOptions: {
bar: {
pointPadding: 0.2,
borderWidth: 0
},
series: {
animation: {
duration: 700
}
}
},
series: [{
name: 'Grades',
data: [{y: data[6], color: '#4CAF50'}, {y: data[7], color: '#8BC34A'}, {y: data[8], color: '#CDDC39'}, {y: data[9], color: '#FFEB3B'}, {y: data[10], color: '#FFC107'}, {y: data[11], color: '#FFA000'}, {y: data[12], color: '#F57C00'}, {y: data[13], color: '#FF5722'}, {y: data[14], color: '#FF5252'}, {y: data[15], color: '#E64A19'}, {y: data[16], color: '#F44336'}, {y: data[17], color: '#D32F2F'}]
}]
}, function(chart) { // on complete
if(data.length == 0){
chart.renderer.text('Could not find distribution for this Instructor teaching this Course', 100, 120)
.css({
fontSize: '20px',
align:'center',
width: '300px',
left:'160px'
})
.add();
$.each(chart.series, function(i, ser) {
ser.hide();
});
}
}); // When the user clicks anywhere outside of the modal, close it
window.onclick = function(event) {
if (event.target == modal) {
$(".modal").fadeOut(fadetime);
}
}
}
function prettifyTitle(){
val = department.length+course_nbr.length+3;
output = coursename.substring(val).replace(/\b\w*/g, function(txt){
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
});
return output + " ("+department+" "+course_nbr+")";
}
function getDescription(){
chrome.runtime.sendMessage({
method: "GET",
action: "xhttp",
url: profurl,
data: ""
}, function(response) {
if(response){
var output="";
var object = $('').html(response).contents();
object.find('#details > p').each(function(){
var sentence = $(this).text();
if(sentence.indexOf("Prerequisite") == 0){
sentence = "