settings option for loading

This commit is contained in:
Sriram Hariharan
2019-01-09 20:47:49 -06:00
parent cac80ea94e
commit 74aed3e64b
5 changed files with 135 additions and 74 deletions

View File

@@ -9,8 +9,15 @@
</head>
<body>
<div id='calendar' style=" width: 75%; margin-left:auto; margin-right:auto;"></div>
<button id="export" class="matbut" style="font-size:medium; background:#4CAF50;margin: 10px;">Export Schedule</button>
<div style='display:flex'>
<div id='calendar' style="flex-grow: 1"></div>
<div>
<button id="export" class="matbut" style="font-size:medium; background:#4CAF50;margin: 10px;white-space: nowrap;text-align: center;">Export
Schedule</button>
</div>
</div>
</body>

View File

@@ -1,7 +1,7 @@
/* Handle messages and their commands from content and popup scripts*/
chrome.runtime.onMessage.addListener(function (request, sender, response) {
switch(request.command){
switch (request.command) {
case "courseStorage":
if (request.action == "add") {
add(request, sender, response);
@@ -43,9 +43,8 @@ chrome.runtime.onMessage.addListener(function (request, sender, response) {
/* Initially set the course data in storage */
chrome.runtime.onInstalled.addListener(function (details) {
if (details.reason == "install") {
chrome.storage.sync.get('savedCourses', function(data){
if(!data.savedCourses){
console.log(data.savedCourses);
chrome.storage.sync.get('savedCourses', function (data) {
if (!data.savedCourses) {
var arr = new Array();
chrome.storage.sync.set({
savedCourses: arr
@@ -57,9 +56,14 @@ chrome.runtime.onInstalled.addListener(function (details) {
}, function () {
console.log('initial highlighting: true');
});
chrome.storage.sync.set({
loadAll: true
}, function () {
console.log('initial loadAll: true');
});
}
});
} else if(details.reason == "update"){
} else if (details.reason == "update") {
console.log("updated");
}
});
@@ -221,7 +225,7 @@ function updateStatus() {
dummy.innerHTML = result;
let newstatus = dummy.querySelector('[data-th="Status"]').textContent;
let registerlink = dummy.querySelector('td[data-th="Add"] a');
if(registerlink){
if (registerlink) {
registerlink = registerlink.getAttribute('href');
}
c.registerlink = registerlink;

View File

@@ -29,8 +29,8 @@ const butdelay = 75;
//This extension may be super lit, but you know what's even more lit?
//Matthew Tran's twitter and insta: @MATTHEWTRANN and @matthew.trann
$(function () {
loadNextPages($("html").html());
$('[title*="next listing"]').remove();
loadDataBase();
//make heading and modal
if (!$("#kw_results_table").length) {
@@ -139,6 +139,9 @@ $(function () {
});
function loadNextPages(inHTML) {
chrome.storage.sync.get('loadAll', function (data) {
if (data.loadAll) {
$('[title*="next listing"]').remove();
var html = $('<div/>').html(inHTML).contents();
let next = html.find("#next_nav_link");
if (next.length) {
@@ -170,6 +173,8 @@ function loadNextPages(inHTML) {
} else {
update();
}
}
});
}
function saveCourse() {

View File

@@ -1,38 +1,70 @@
var manifestData = chrome.runtime.getManifest();
$("#version").text(manifestData.version);
chrome.storage.sync.get('courseConflictHighlight', function(data) {
if(data.courseConflictHighlight){
off();
chrome.storage.sync.get('courseConflictHighlight', function (data) {
if (data.courseConflictHighlight) {
off('courseConflictHighlight');
} else {
on('courseConflictHighlight');
}
else {
on();
});
chrome.storage.sync.get('loadAll', function (data) {
if (data.loadAll) {
off('loadAll');
} else {
on('loadAll');
}
});
$("#toggleConflictHighlighting").click(function(){
var action = $("#toggleConflictHighlighting").text();
if(action == "Turn Off"){
chrome.storage.sync.set({courseConflictHighlight: false}, function() {
on();
$("#togglecourseConflictHighlight").click(function () {
var action = $("#togglecourseConflictHighlight").text();
if (action == "Turn Off") {
chrome.storage.sync.set({
courseConflictHighlight: false
}, function () {
on('courseConflictHighlight');
});
} else{
chrome.storage.sync.set({courseConflictHighlight: true}, function() {
off();
} else {
chrome.storage.sync.set({
courseConflictHighlight: true
}, function () {
off('courseConflictHighlight');
});
}
chrome.tabs.query({}, function(tabs) {
for(var i = 0; i<tabs.length; i++){
chrome.tabs.sendMessage(tabs[i].id, {command: "updateCourseList"});
chrome.tabs.query({}, function (tabs) {
for (var i = 0; i < tabs.length; i++) {
chrome.tabs.sendMessage(tabs[i].id, {
command: "updateCourseList"
});
}
});
});
function on(){
$("#toggleConflictHighlighting").text("Turn On");
$("#toggleConflictHighlighting").css("background","#4CAF50");
$("#toggleloadAll").click(function () {
var action = $("#toggleloadAll").text();
if (action == "Turn Off") {
chrome.storage.sync.set({
loadAll: false
}, function () {
on('loadAll');
});
} else {
chrome.storage.sync.set({
loadAll: true
}, function () {
off('loadAll');
});
}
});
function on(setting) {
$("#toggle" + setting).text("Turn On");
$("#toggle" + setting).css("background", "#4CAF50");
}
function off(){
$("#toggleConflictHighlighting").text("Turn Off");
$("#toggleConflictHighlighting").css("background","#F44336");
function off(setting) {
$("#toggle" + setting).text("Turn Off");
$("#toggle" + setting).css("background", "#F44336");
}

View File

@@ -1,17 +1,30 @@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/styles.css">
</head>
<body>
<div class="card" style="width: 400px; margin-left:auto;margin-right: auto; height:auto;"id="header">
<div class="card" style="width: 400px; margin-left:auto;margin-right: auto; height:auto;" id="header">
<h2 style="padding:16px 16px 0px 16px;font-size: 20px"> <u>Options</u> </h2>
<h2 style="padding: 5px 16px 16px 16px; font-weight: normal;display: inline-block;text-align:left;">Conflict Highlighting</h2>
<button id="toggleConflictHighlighting" class="matbut" style="margin-left: 20%;text-align:right;display:inline-block;font-size:medium;background:#F44336;">Turn Off</button>
<div>
<h2 style="padding: 5px 16px 5px 16px; font-weight: normal;display: inline-block;text-align:left;">Conflict
Highlighting</h2>
<button id="togglecourseConflictHighlight" class="matbut" style="float:right; display:inline-block;font-size:medium;background:#F44336;">Turn
Off</button>
<h2 style="padding: 5px 16px 16px 16px; font-weight: normal;display: inline-block;text-align:left;">All Courses
on First Page</h2>
<button id="toggleloadAll" class="matbut" style="float: right;display:inline-block;font-size:medium;background:#F44336;">Turn
Off</button>
</div>
<p style="padding:0px 5px 5px 0px; float: right">(v<span id="version"></span>), Sriram Hariharan, 2018<p>
<script src="js/jquery-3.3.1.min.js"></script>
<script src="js/options.js"></script>
</body>
</html>