Version 1.1.3

Убрал мерцание текста в меню расширения

Добавил заготовку для автоматического заполнения тестов(На стадии тестирования, работает только часть заданий)
This commit is contained in:
FutureX
2018-04-22 16:05:30 +03:00
parent e9f4ad855c
commit bb63305744
8 changed files with 123 additions and 49 deletions

View File

@@ -10,24 +10,29 @@
<div class="shadow title_text">
<h1>LMS Answers</h1>
</div>
<div class="button-add style style_1">
<input id="show_answers" type="checkbox">
<label for="show_answers" data-on-text="Автоматический режим" data-off-text="Автоматический режим"></label>
<div class="button-add style style_4">
<input id="show_mode" type="checkbox">
<label for="show_mode" data-text="Показывать ответы"></label>
<div class="button-add__icon"></div>
</div>
<div class="button-add style style_2">
<input id="simple_mode" type="checkbox">
<label for="simple_mode" data-on-text="Упрощенная страница" data-off-text="Упрощенная страница"></label>
<div class="button-add style style_1">
<input id="auto_mode" type="checkbox">
<label for="auto_mode" data-text="Автоматический режим"></label>
<div class="button-add__icon"></div>
</div>
<div class="button-add style style_3">
<input id="true_answers" type="checkbox">
<label for="true_answers" data-on-text="Максимальные баллы" data-off-text="Максимальные баллы"></label>
<input id="true_mode" type="checkbox">
<label for="true_mode" data-text="Максимальные баллы"></label>
<div class="button-add__icon"></div>
</div>
<div class="button-add style style_2">
<input id="simple_mode" type="checkbox">
<label for="simple_mode" data-text="Упрощенная страница"></label>
<div class="button-add__icon"></div>
</div>
<div class="">
<button id="showBtn">Показать ответы</button>
</div>

View File

@@ -4,7 +4,12 @@ document.addEventListener('DOMContentLoaded', function() {
showButton.addEventListener('click', function() {
show();
}, false);
var showChecker = document.getElementById('show_answers');
var autoChecker = document.getElementById('auto_mode');
autoChecker.addEventListener('change', function() {
saveOptions();
auto_mode();
}, false);
var showChecker = document.getElementById('show_mode');
showChecker.addEventListener('change', function() {
saveOptions();
if(showChecker.checked)show();
@@ -14,18 +19,18 @@ document.addEventListener('DOMContentLoaded', function() {
saveOptions();
simple_mode();
}, false);
var trueChecker = document.getElementById('true_answers');
var trueChecker = document.getElementById('true_mode');
trueChecker.addEventListener('change', function() {
saveOptions();
autotrue();
true_mode();
}, false);
}, false);
function loadOptions() {
chrome.storage.sync.get(['show_answers','simple_mode','true_answers'], function(items) {
var choise=items['show_answers'];
chrome.storage.sync.get(['show_mode','simple_mode','true_mode','auto_mode'], function(items) {
var choise=items['show_mode'];
if(choise == undefined) choise = true;
var select = document.getElementById("show_answers");
var select = document.getElementById("show_mode");
select.checked = choise;
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
else chrome.browserAction.setBadgeText({text: "off"});
@@ -36,17 +41,23 @@ function loadOptions() {
select.checked = choise;
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
choise=items['true_answers'];
choise=items['true_mode'];
if(choise == undefined) choise = false;
var select = document.getElementById("true_answers");
var select = document.getElementById("true_mode");
select.checked = choise;
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
choise=items['auto_mode'];
if(choise == undefined) choise = false;
var select = document.getElementById("auto_mode");
select.checked = choise;
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
});
}
function saveOptions() {
var select = document.getElementById("show_answers");
chrome.storage.sync.set({'show_answers': select.checked});
var select = document.getElementById("show_mode");
chrome.storage.sync.set({'show_mode': select.checked});
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
else chrome.browserAction.setBadgeText({text: "off"});
@@ -54,8 +65,12 @@ function saveOptions() {
chrome.storage.sync.set({'simple_mode': select.checked});
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
select = document.getElementById("true_answers");
chrome.storage.sync.set({'true_answers': select.checked});
select = document.getElementById("true_mode");
chrome.storage.sync.set({'true_mode': select.checked});
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
select = document.getElementById("auto_mode");
chrome.storage.sync.set({'auto_mode': select.checked});
if(select.checked) chrome.browserAction.setBadgeText({text: "on"});
}
@@ -66,6 +81,13 @@ function show() {
});
}
function auto_mode() {
var query = { active: true, currentWindow: true };
chrome.tabs.query(query, function(tabs) {
chrome.tabs.sendMessage(tabs[0].id, {command: "auto_mode"});
});
}
function simple_mode() {
var select = document.getElementById("simple_mode");
var query = { active: true, currentWindow: true };
@@ -77,9 +99,9 @@ function simple_mode() {
});
}
function autotrue() {
function true_mode() {
alert("Чтобы обновления вступили в силу обновите страницу");
var select = document.getElementById("true_answers");
var select = document.getElementById("true_mode");
if(select.checked===true)
chrome.runtime.sendMessage({msg: "auto_on"})
else

View File

@@ -55,16 +55,13 @@ body {
transition: 0.2s ease-out; }
.style label {
will-change: transform;
height: 30px;
line-height: 30px;
transition: all 0.2s;
border-radius: 2rem; }
.style label:before {
content: attr(data-on-text); }
.style label:after {
content: attr(data-off-text); }
.style input[type=checkbox] + label {
.style input[type=checkbox] ~ label {
width: 210px;
background: #FF5335; }
@@ -79,40 +76,43 @@ body {
.style input[type=checkbox]:checked ~ .button-add__icon:after {
transform: translate(30%) rotate(-45deg); }
.style .button-add__icon {
.button-add__icon {
position: absolute;
left: 0;
top: 0;
height: 30px;
width: 30px; }
.style .button-add__icon:before, .style .button-add__icon:after {
.button-add__icon:before, .button-add__icon:after {
height: 3px;
border-radius: 3px;
background: #fff;
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1); }
.style .button-add__icon:before {
.button-add__icon:before {
width: 17px;
transform: rotate(90deg); }
.style .button-add__icon:after {
.button-add__icon:after {
width: 17px;
transform: rotate(0); }
.style_1 label:before, .style_1 label:after {
content: attr(data-text);
position: absolute;
right: 0.9rem;
transition: all 0.2s .15s ease-out; }
right: 0.9rem; }
.style_2 label:before, .style_2 label:after {
content: attr(data-text);
position: absolute;
right: 1.3rem;
transition: all 0.2s .15s ease-out; }
right: 1.3rem; }
.style_3 label:before, .style_3 label:after {
content: attr(data-text);
position: absolute;
right: 1.4rem;
transition: all 0.2s .15s ease-out; }
right: 1.4rem; }
.style_4 label:before, .style_4 label:after {
content: attr(data-text);
position: absolute;
right: 1.9rem; }
button {
will-change: transform;
text-decoration: none;
outline: none;
display: inline-block;