Script tự động điền nhận xét cho VNEdu
// ==UserScript==
// @name vnedu
// @version 1.03
// @include https://*.vnedu.vn/*
// @grant none
// @description Script tự động điền nhận xét cho VNEdu
// @author riverstore (Nguyen Nhut Truong)
// @homepageURL https://github.com/riverstore/vnedu-auto
// @namespace https://greasyfork.org/users/728004
// ==/UserScript==
//var btnUnikey = document.getElementById('btnUnikey');
var btnUnikey = document.getElementsByTagName('body')[0];
var divNhanxet = document.createElement('div');
divNhanxet.setAttribute('class', 'x-btn x-box-item x-toolbar-item x-btn-default-toolbar-small x-icon x-btn-icon x-btn-default-toolbar-small-icon');
divNhanxet.setAttribute('style', 'z-index:999999;background:black;');
var btnNhanxet = document.createElement('button');
btnNhanxet.setAttribute('type', 'button');
btnNhanxet.setAttribute('class', 'x-btn-icon');
btnNhanxet.setAttribute('style', 'color:white;');
btnNhanxet.value = 'NX';
btnNhanxet.innerText = "NX";
btnNhanxet.addEventListener('click', function () {
var IsFoundSodiemTable = false;
var tables = document.getElementsByTagName('table');
var SLTable = tables.length;
console.log("sl table=" + SLTable);
// Duyệt qua từng bảng để tìm bảng nhập nhận xét
for (var i = 0; i < SLTable; i++) {
var trArr = tables[i].getElementsByTagName('tr');
if(trArr.length>=3){//Bảng có từ 3 dòng trở lên
var tdArr = trArr[0].getElementsByTagName('td'); // Dòng đầu tiên
//console.log(tdArr.length);
//console.log(tdArr[8].innerText);
// Nếu bảng có 10 ô mới xét
if(tdArr.length==10){
// Tìm thấy cột nhận xét
if(tdArr[8].innerText =="Nhận xét"){
IsFoundSodiemTable = true;
//alert("Found");
}else{
console.log(tdArr[8].innerText);
}
} // if(tdArr.length==10)
}// if(trArr.length>=3)
// Nếu tìm thấy
if(IsFoundSodiemTable){
for (var j = 2; j < trArr.length; j++){ // Duyệt qua từng dòng
tdArr = trArr[j].getElementsByTagName('td');
// Tìm input nhập điểm
var txtDiemArr = tdArr[12].getElementsByTagName('input');
// Nếu tìm thấy
if (typeof(txtDiemArr) != 'undefined' || txtDiemArr != null || txtDiemArr.length > 0){
var diemStr = tdArr[11].innerText;
console.log(diemStr);
if(diemStr != "" && !isNaN(diemStr)){
var diemNumber = parseFloat(diemStr);
var txtDiem = txtDiemArr[0];
txtDiem.value = Mark2Remark(diemNumber);
//console.log(diemNumber + "-->" + Mark2Remark(diemNumber));
}
}else{
console.log("Không tìm thấy thẻ input");
}
} // for (var j = 2; j < trArr.length; j++)
} // if(IsFoundSodiemTable)
} // for (var i = 0; i < SLTable; i++)
if(!IsFoundSodiemTable){
alert("Không tìm thấy cửa sổ để nhập nhận xét");
}
//alert("hi");
//Console.log(encodeURI('https://www.cgpeers.com/' + x3[1].getAttribute('href')));
}, false);
divNhanxet.appendChild(btnNhanxet);
btnUnikey.appendChild(divNhanxet);
//insertAfter(btnUnikey, divNhanxet);
function Mark2Remark(diem){
if(diem<3.5){
return "Chưa đạt yêu cầu của bộ môn, chưa tự giác trong học tập, cần nỗ lực học tập hơn nữa.";
}else if(diem < 5){
return "Chưa hoàn thành các yêu cầu cần đạt của bộ môn, cần cố gắng học tập hơn nữa.";
}else if(diem < 6){
return "Hoàn thành được các yêu cầu của bộ môn, cần chủ động hơn trong học tập.";
}else if(diem < 7){
return "Tiếp thu được các kiến thức cơ bản của môn học, tương đối chủ động trong học tập.";
}else if(diem < 7.5){
return "Đáp ứng tốt yêu cầu cần đạt của bộ môn, có sự tự giác và tiến bộ trong học tập.";
}else if(diem < 8){
return "Đáp ứng tốt yêu cầu cần đạt của bộ môn, có sự tự giác và tiến bộ trong học tập.";
}else if(diem < 9){
return "Nắm vững kiến thức của bộ môn. Có tính tự giác trong học tập và rèn luyện cao.";
}else{
return "Hoàn thành rất tốt nội dung kiến thức môn học, làm được nhiều bài tập khó, chăm chỉ, đam mê học tập đối với bộ môn.";
}
}
function insertAfter(referenceNode, newNode) {
referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
}