// ==UserScript== // @name 哈尔滨工程大学成绩查询Pro_test // @namespace Devour // @version 4.1 // @description кто знает,кто знает. // @author Devour // @match *://*.edu.cn/* // @match https://edusys.wvpn.hrbeu.edu.cn/jsxsd/kscj/cjcx_list // @match https://edusys.wvpn.hrbeu.edu.cn/* // @match http://edusys.hrbeu.edu.cn/jsxsd/kscj/cjcx_list // @grant none // @require https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js // @downloadURL https://update.greasyfork.icu/scripts/424948/%E5%93%88%E5%B0%94%E6%BB%A8%E5%B7%A5%E7%A8%8B%E5%A4%A7%E5%AD%A6%E6%88%90%E7%BB%A9%E6%9F%A5%E8%AF%A2Pro_test.user.js // @updateURL https://update.greasyfork.icu/scripts/424948/%E5%93%88%E5%B0%94%E6%BB%A8%E5%B7%A5%E7%A8%8B%E5%A4%A7%E5%AD%A6%E6%88%90%E7%BB%A9%E6%9F%A5%E8%AF%A2Pro_test.meta.js // ==/UserScript== (function () { 'use strict'; var no_border_table_class = document.querySelector("#kscjQueryForm > table > tbody"); var pjxt_url = "http://pjcs.hrbeu.edu.cn/static/html/main/mycollege/index.html"; if (no_border_table_class != undefined) { var button_teacher_comment_html = document.createElement("tr"); button_teacher_comment_html.innerHTML = ""; no_border_table_class.appendChild(button_teacher_comment_html); } if (window.location.href == pjxt_url) { var script_section = document.createElement("script"); script_section.innerHTML = 'setInterval("aaaa();",1000);function aaaa(){var li_list = document.getElementsByTagName("li");\ if(li_list.length != 0){\ li_list[0].click()\ }else{\ window.location.href="https://edusys.wvpn.hrbeu.edu.cn/jsxsd/kscj/cjcx_list";\ }}'; document.querySelector("body").appendChild(script_section); } else if (window.location.href.indexOf("teaching/course_evaluate_l.html?") != -1) { var script_section_pj_run = document.createElement("script"); script_section_pj_run.innerHTML = 'setInterval("aaaa();",1000);function aaaa(){var data_comment = ["老师在教室上教得东西我当时就能记住,老师举例生动形象,老师能够锻炼我们举一反三的能力。",\ "整堂课思路清晰,环节紧凑,重难点突出,设计合理。学生的课堂习惯非常好,每个人都能积极的参与到课堂中,课堂效果较好。",\ "学生们上课的积极性和参与率极高,特别是老师能抓住儿童的心理特点,创设一定的情境。老师并提供了丰富的内容,在整个教学过程中给予了学生比较充分的自主探究机会,让学生在活动中学习、提升。",\ "老师能从学生特点出发,让学生在玩活动过程中探究新知识、理解新知,人整体上来看,效果确实不错,值得学习。",\ "感谢老师谆谆教诲,老师的课堂活泼有趣,同学们听的津津有味,老师常引人入胜,我们总是身临其境。",\ "老师与同学们互动,使课堂效率达到高点。老师还平易近人,总是和同学们一起讨论难问题,谢谢老师的教诲。"];\ var data_list = document.getElementsByClassName("mui-input-row mui-radio mui-left");\ for (var i = 0; i < data_list.length; i++) {\ if (data_list[i].innerText == \'非常满意\') {\ data_list[i].getElementsByTagName("input")[0].setAttribute("checked", "checked")\ }\ }\ document.getElementsByTagName("textarea")[0].value = data_comment[Math.round(Math.random() * 10) % 6];\ validate();\ window.location.href = "http://pjcs.hrbeu.edu.cn/static/html/main/mycollege/index.html";}'; document.querySelector("body").appendChild(script_section_pj_run); } if(window.location.href.indexOf("/jsxsd/kscj/cjcx_list") != -1){ if (document.getElementById("dataList").rows[1].cells[0].innerText == "未查询到数据") { alert("未查询到数据!!"); return 0; } function Add_th(th_HTML, width = 120) { let var_th = document.createElement("th"); var_th.innerHTML = th_HTML; var_th.setAttribute("class", "Nsb_r_list_thb"); var_th.setAttribute("style", "width: " + width.toString() + "px;"); document.getElementById("dataList").rows[0].appendChild(var_th); } function PC_Credit_Calc(CourseType, Credit) { if (document.getElementById("Top1_divLoginName").innerHTML.split("(")[1].split(")")[0].substring(0, 4) < 2019) { switch (CourseType) { case "中外历史与文化": PC_A_Credit += Credit; break; case "语言与文学": PC_B_Credit += Credit; break; case "哲学人生与社会科学": PC_C_Credit += Credit; break; case "艺术修养与审美": PC_D_Credit += Credit; break; case "自然科学与人类文明": PC_E_Credit += Credit; break; case "国防文化与船海史话": PC_F_Credit += Credit; break; case "中华传统文化": PC_G_Credit += Credit; break; case "新生研讨类": PCCategory_2 += Credit; break; case "专业拓展类": PCCategory_3 += Credit; break; case "创新创业类": PCCategory_4 += Credit; break; } } else { if (Course_name_2019[CourseType] == undefined) { Course_name_2019[CourseType] = Credit; console.log(Course_name_2019[CourseType]); } else { Course_name_2019[CourseType] += Credit; console.log(Course_name_2019[CourseType]); } } } function AVG_Grade_Color_Control(let_grade) { if (let_grade < 60) return "#E6E6FA"; else if (let_grade < 70) return "#00AA00"; else if (let_grade < 80) return "#BB5500"; else if (let_grade < 85) return "#FF0088"; else if (let_grade < 90) return "#FF0000"; else if (let_grade < 95) return "#B22222"; else return "#880000"; } function Grade_Detail_Color_control(let_grade) { let result = new Array(2); if (let_grade < 60 || let_grade == '不及格') { result[0] = "#880000"; result[1] = "┗( T﹏T )┛"; } else if (let_grade < 70 || let_grade == '及格') { result[0] = "#66DD00"; result[1] = "…(⊙_⊙;)…"; } else if (let_grade < 80 || let_grade == '中等') { result[0] = "#CC6600"; result[1] = "(= ̄ω ̄=)"; } else if (let_grade < 90 || let_grade == '良好') { result[0] = "#00DDDD"; result[1] = "(●'◡'●)"; } else { result[0] = "#FF359A"; result[1] = "(✿◕‿◕✿)"; } return result; } function div_create_parent(width, height) { var divOB = "
" + GradeAvg.toString() + ""; Grade_Avg.setAttribute("id", "Grade_AVG"); Grade_Avg.style.fontSize = "150%"; document.getElementById("StudentInfo").appendChild(Grade_Avg); var ECC = document.createElement("p"); ECC.innerHTML = "专业选修课已修:" + ElectiveCourseCredit.toString() + "分"; ECC.style.fontSize = "150%"; document.getElementById("StudentInfo").appendChild(ECC); } function student_level_2018_detail() { var Graph = document.getElementById("StudentInfo"); var GEC = document.createElement("p"); GEC.innerHTML = "通识教育选修课程已修:" + GeneralEducationCredit.toString() + "分
其中:"; GEC.style.fontSize = "150%"; Graph.appendChild(GEC); var GEC_D = document.createElement("p"); GEC_D.innerHTML += "新生研讨类已修:" + PCCategory_2.toString() + "分"; GEC_D.innerHTML += "
专业拓展类已修:" + PCCategory_3.toString() + "分"; GEC_D.innerHTML += "
创新创业类已修:" + PCCategory_4.toString() + "分"; GEC_D.innerHTML += "
文化素质教育类已修:" + PCCategory_1.toString() + "分
其中:"; GEC_D.style.fontSize = "120%"; Graph.appendChild(GEC_D); var GEC_D_A = document.createElement("ol"); GEC_D_A.innerHTML += "
  • 中外文明与历史:" + PC_A_Credit.toString() + "分
  • "; GEC_D_A.innerHTML += "
  • 语言与文学:" + PC_B_Credit.toString() + "分
  • "; GEC_D_A.innerHTML += "
  • 哲学人生与社会科学:" + PC_C_Credit.toString() + "分
  • "; GEC_D_A.innerHTML += "
  • 艺术修养与审美:" + PC_D_Credit.toString() + "分
  • "; GEC_D_A.innerHTML += "
  • 自然科学与人类文明:" + PC_E_Credit.toString() + "分
  • "; GEC_D_A.innerHTML += "
  • 国防文化与船海史话:" + PC_F_Credit.toString() + "分
  • "; GEC_D_A.innerHTML += "
  • 中华优秀传统文化:" + PC_G_Credit.toString() + "分
  • "; GEC_D_A.style.fontSize = "100"; Graph.appendChild(GEC_D_A); } function student_level_2019_detail() { var Graph = document.getElementById("StudentInfo"); let let_text_haed = document.createElement("p"); let count_credit = 0; var Course_And_Credit = document.createElement("ol"); for (let key in Course_name_2019) { Course_And_Credit.innerHTML += "
  • " + key + ":" + Course_name_2019[key] + "分
  • "; count_credit += Course_name_2019[key]; } let_text_haed.innerHTML += "
    公选课已修:" + count_credit.toString() + "分
    其中:"; let_text_haed.style.fontSize = "150%"; Graph.appendChild(let_text_haed); Graph.appendChild(Course_And_Credit); } function Count_Credit_GradeAVG_text() { var CCGA_text = document.createElement("script"); CCGA_text.innerHTML = 'function Count_Credit_GradeAVG() {\ var GradeList = document.getElementById("dataList");\ var CourseGradeSum = 0, CreditSum = 0, GradeAvg = 0;\ for (var i = 1; i < GradeList.rows.length; i++) {\ var Course = GradeList.rows[i];\ var Grade, Credit;\ if (Course.cells[4].getElementsByTagName("a")[0] == undefined) Grade = Course.cells[4].innerHTML;\ else Grade = Course.cells[4].getElementsByTagName("a")[0].innerHTML;\ Credit = parseFloat(Course.cells[5].innerHTML);\ let checkbox_id = "checkbox" + i.toString();\ if (!document.getElementById("checkbox_free").checked){\ if (Course.cells[9].innerHTML == "必修") {\ document.getElementById(checkbox_id).checked = document.getElementById("checkbox_bx").checked;\ } else if (Course.cells[9].innerHTML == "公选") {\ document.getElementById(checkbox_id).checked = document.getElementById("checkbox_gx").checked;\ } else {\ document.getElementById(checkbox_id).checked = document.getElementById("checkbox_zx").checked;\ }\ if (Course.cells[8].innerHTML == "自主考试") {\ document.getElementById(checkbox_id).checked = document.getElementById("checkbox_zz").checked;\ }\ if (Grade == "不及格" || Grade < 60) {\ document.getElementById(checkbox_id).checked = document.getElementById("checkbox_np").checked;\ }\ }\ if (Grade == "---" || !document.getElementById(checkbox_id).checked) {document.getElementById(checkbox_id).checked=false;continue;}\ switch (Grade) {\ case "优秀": Grade = 95; break;\ case "良好": Grade = 85; break;\ case "中等": Grade = 75; break;\ case "及格": Grade = 65; break;\ case "不及格": Grade = 30; break;\ }\ CourseGradeSum += Grade * Credit;\ CreditSum += Credit;\ }\ if (CreditSum == 0) {\ let_text = "Error!";\ document.getElementById("Grade_AVG").getElementsByTagName("strong")[0].innerText = let_text;\ } else {\ GradeAvg = CourseGradeSum / CreditSum;\ GradeAvg = GradeAvg.toFixed(2);\ document.getElementById("Grade_AVG").getElementsByTagName("strong")[0].innerText = GradeAvg;\ }\ }'; document.getElementById("Footer1_divCopyright").appendChild(CCGA_text); } var function_text = document.createElement("script"); function_text.innerHTML = "function all_checkbox_function(checkbox_status){"; function_text.innerHTML += "let checkbox_list = document.getElementsByName('all_checkbox');"; function_text.innerHTML += "for(let i=0; i" + let_var_color_ico[1] + ""; var_td_grade_detail.setAttribute("style", "width: 120px;"); } document.getElementById("dataList").rows[i].appendChild(var_td_grade_detail); function create_course_checkbox(statusCode) { let var_td_checked = document.createElement("td"); let checkbox_id = "checkbox" + i.toString(); let all_checkbox_name = "all_checkbox"; if (statusCode == 1) { var_td_checked.innerHTML = ""; } else { var_td_checked.innerHTML = ""; } document.getElementById("dataList").rows[i].appendChild(var_td_checked); } if (Grade == "---" || Course.cells[8].innerHTML == "自主考试") { create_course_checkbox(0); continue; } if (Course.cells[9].innerHTML == "公选" && Grade != "不及格") { PC_Credit_Calc(Course.cells[10].innerHTML, Credit); create_course_checkbox(0); continue; } if (Course.cells[9].innerHTML != "必修" && Grade != "不及格" && Course.cells[9].innerHTML != "公选") { ElectiveCourseCredit += Credit; } if (Course.cells[9].innerHTML != "必修" && Grade == "不及格") { create_course_checkbox(0); continue; } if (Course.cells[8].innerText == "补考") { create_course_checkbox(0); continue; } create_course_checkbox(1); switch (Grade) { case "优秀": Grade = 95; break; case "良好": Grade = 85; break; case "中等": Grade = 75; break; case "及格": Grade = 65; break; case "不及格": Grade = 30; break; } CourseGradeSum += Grade * Credit; CreditSum += Credit; } PCCategory_1 = PC_A_Credit + PC_B_Credit + PC_C_Credit + PC_D_Credit + PC_E_Credit + PC_F_Credit + PC_G_Credit; GeneralEducationCredit = PCCategory_1 + PCCategory_2 + PCCategory_3 + PCCategory_4; GradeAvg = CourseGradeSum / CreditSum + Correction; GradeAvg = GradeAvg.toFixed(2); let student_level = document.getElementById("Top1_divLoginName").innerHTML.split("(")[1].split(")")[0].substring(0, 4); Count_Credit_GradeAVG_text(); if (parseInt(student_level) < 2019) { div_create_parent(300, 400); student_level_2018_detail(); } else { div_create_parent(300, 400); student_level_2019_detail(); } } })();