// ==UserScript==
// @name 麦能网挂机助手
// @namespace https://blog.luoyb.com
// @version 1.6.2
// @description 麦能网成人教育课程自动选课、自动答题、自动播放
// @author robin<[email protected]>
// @match *://*.cjnep.net/lms/*
// @match *://*.cjnep.net/lms/web/
// @match *://*.cjnep.net/lms/web/default/index
// @match *://*.cjnep.net/lms/web/course/*
// @grant none
// @license GPL
// @run-at document-body
// @icon http://fs.cjnep.net/resources/public/favicon.ico
// ==/UserScript==
(function() {
'use strict';
var $origin = window.location.origin;
function createtoolbar(){
var html = '<div id="cjnep-helper">'
+'<span style="display:inline-block;text-align: center;width:100%;margin-top:15px;"><a href="http://blog.luoyb.com" style="color:#fff;" target="_blank">挂机助手</a></span>'
+'<span style="display:inline-block;text-align: center;width:100%;margin-top:10px;">自动选课:<span id="auto-select" style="cursor:pointer;color:red;font-weight:bold;">关闭</span></span>'
+'<span style="display:inline-block;text-align: center;width:100%;margin:2px 0;">自动播放:<span id="auto-play" style="cursor:pointer;font-weight:bold;color:red;">关闭</span></span>'
+'<span style="display:inline-block;text-align: center;width:100%">自动静音:<span id="auto-mute" style="cursor:pointer;font-weight:bold;color:red;">关闭</span></span>'
+'</div>';
var styles = {"border": "2px solid #fff", "width": "150px", "height": "150px", "position": "fixed", "right": "0", "top": "10%", "background-color": "rgb(12, 147, 243)", "color": "#fff"
,"padding-left":"5px","filter":"alpha(Opacity=80)","-moz-opacity":"0.8","opacity":"0.8","z-index":"99999999","border-radius":"80px","box-shadow": "1px 1px 6px #f7c804","cursor":"move"};
$("body").append(html);
$("#cjnep-helper").css(styles);
sessionStorage.getItem("auto-select")==="on"?$("#auto-select").text("开启").css("color", "#00fb00"):$("#auto-select").text("关闭").css("color","red");
sessionStorage.getItem("auto-play")==="on"?$("#auto-play").text("开启").css("color", "#00fb00"):$("#auto-play").text("关闭").css("color","red");
sessionStorage.getItem("auto-mute")==="on"?$("#auto-mute").text("开启").css("color", "#00fb00"):$("#auto-mute").text("关闭").css("color","red");
$("#auto-select").click(function(){
if(sessionStorage.getItem("auto-select")==="on"){
sessionStorage.setItem("auto-select", "off");
$(this).text("关闭").css("color","red");
}else{
sessionStorage.setItem("auto-select", "on");
$(this).text("开启").css("color", "#00fb00");
}
});
$("#auto-play").click(function(){
if(sessionStorage.getItem("auto-play")==="on"){
sessionStorage.setItem("auto-play", "off");
$(this).text("关闭").css("color","red");
}else{
sessionStorage.setItem("auto-play", "on");
$(this).text("开启").css("color", "#00fb00");
}
});
$("#auto-mute").click(function(){
if(sessionStorage.getItem("auto-mute")==="on"){
sessionStorage.setItem("auto-mute", "off");
$(this).text("关闭").css("color","red");
}else{
sessionStorage.setItem("auto-mute", "on");
$(this).text("开启").css("color", "#00fb00");
}
});
}
function autoselect(){
var _list = $('.coursediv>.courselist>.row>div');
if(_list.length===0){ return; }
if(sessionStorage.getItem("auto-select")==="on"){
var o = true;
for (var i = 0; i < _list.length; i++) {
if (!$(_list[i]).find('.statusdiv').length) {
//console.log("跳转至:"+$(_list[i]).find('.introdiv').text());
o = false;
window.location.href = $origin+$(_list[i]).find('.zbtn').attr('href').replace('/detail', '');
break;
}
}
if(o && _list.length>0) {
var course_index = sessionStorage.getItem("selected-course");
course_index = course_index ? course_index : -1;
if (_list.length > (course_index+1)){course_index++;}else{return;}
window.location.href = $origin+$(_list[course_index]).find('.zbtn').attr('href').replace('/detail', '');
}
}
setTimeout(autoselect, 10000);
}
var _mute = false, _playing = false;
function autoplay(){
if ($(".videodiv").length === 0){ return; }
if (sessionStorage.getItem("auto-play")==="on") {
var _next_btn = $('.pull-right>a')[0];
var _rtime = $('.vjs-remaining-time-display').text();
var _curtime = $('.vjs-current-time-display').text().substr(-5).replace(':', '');
var _total = $('.vjs-duration-display').text().substr(-5).replace(':', '');
var _is_last = $('.contdiv>div>.item:last').hasClass('active');
var _vlist = $('.icon-weibiaoti2');
if (_vlist.length > 0) {
for(var i = 0; i < _vlist.length; i++) {
if (!$(_vlist[i]).hasClass('active')) {
$(_vlist[i]).click();
}
break;
}
}
var _play_btn = $('.vjs-play-control');
if (!_playing && _play_btn.length > 0 && !$(_play_btn[0]).hasClass('vjs-playing')) {
//console.log('start play');
$(_play_btn[0]).click();
_playing = true;
}
if (parseInt(_total) > 0) {
var _lx = $('#quiz_wnd');
if (_lx.length > 0 && _lx.is(':visible')) {
autoanswer();//自动答题
}
var _mute_btn = $(".job-bcolbody>.vjs-mute-control");
if (sessionStorage.getItem("auto-mute")=="on"&&!_mute && _mute_btn.length > 0) {
_mute_btn[0].click();
_mute = true;
}
_rtime = parseInt(_rtime.substr(_rtime.lastIndexOf('-')+1).replace(':', ''));
//console.log("Remaining: "+_rtime);
if (_total <= _curtime && _rtime == 0) {
if (_is_last) {
window.location.href = $origin+'/lms/web/course/index';
}else {
_next_btn.click();
}
}
}
}
setTimeout(autoplay, 5000);
}
function autoanswer(){
var _list = $("#job_quizlist>li").find('input');
for (var i = 0; i < _list.length; i++) {
var _ele = $(_list[i]);
if (_ele.attr('flag') == 'Y') {
_ele.parent().click();
}
}
if (_list.length > 0) {
$('.job-quiz-cbar>#job_quizsub').click();
$('.job-quiz-cbar>#job_quizfinish').click();
}
}
function relieve(){
document.body.ondragstart = '';
document.body.onselect = '';
document.body.oncopy = '';
document.body.onbeforecopy = '';
document.body.onselectstart = '';
document.body.onmouseup = '';
}
function drag(){
var dv = document.getElementById('cjnep-helper');
var x = 0;
var y = 0;
var l = 0;
var t = 0;
var isDown = false;
dv.onmousedown = function(e) {
x = e.clientX;
y = e.clientY;
l = dv.offsetLeft;
t = dv.offsetTop;
isDown = true;
dv.style.cursor = 'move';
}
window.onmousemove = function(e) {
if (isDown == false) {
return;
}
var nx = e.clientX;
var ny = e.clientY;
var nl = nx - (x - l);
var nt = ny - (y - t);
dv.style.left = nl + 'px';
dv.style.top = nt + 'px';
}
dv.onmouseup = function() {
isDown = false;
//dv.style.cursor = 'default';
}
}
createtoolbar();
autoselect();
autoplay();
relieve();
drag();
})();