// ==UserScript== // @name 青岛市专技继续教育网 // @namespace https://www.qdjxjy.com.cn/ // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAADcWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMTQgNzkuMTUxNDgxLCAyMDEzLzAzLzEzLTEyOjA5OjE1ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmZiZDg4YTY1LTU1NjYtMGY0NS05NDk3LTVjZWU1YzYwOGMzZCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEMEY4REI2MjA2QTIxMUVEQkI2MkVBQjk4Mzg1RjY1QiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEMEY4REI2MTA2QTIxMUVEQkI2MkVBQjk4Mzg1RjY1QiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ZmJkODhhNjUtNTU2Ni0wZjQ1LTk0OTctNWNlZTVjNjA4YzNkIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOmZiZDg4YTY1LTU1NjYtMGY0NS05NDk3LTVjZWU1YzYwOGMzZCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PtWe6+YAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAADAFBMVEVHcEylpKeRkJSIh4urqq1GREuvr7JJSE4oJi4oJi4gHie0s7aIh4xPS0x/foNBQEsoJi7///8gHiYmJCwcGSLe3d+op6qAf4R3dnu3trnQ0NEkIypqaW7f3+ApJi66urwcHTAjISkvLTQpJy+Dgob7+vsgIDAdHzAdGyQlJC8aHDEmJS4jIykiICgcHiO6hLYeICVjYmgSEhkaGCGCYIIjIi8gISb5+fkYFx+SkZU3MCu2gbJraW+oeaYcGiPb29wzLSx9XX0iIS9qVCCCZBs/Nimyf68sKjLNkMjUlc8wKyyjoqadcZsPFTNbSSMYGzIaHC1TQlbBibyvfawuKjQWGTLHjMNBNkUiICjKj8Y9NEIgHygfHSXU09X29fZMSlFta3ExLjcrKC2hdJ/loN4qKDBIOky8jA+kdqLlqQY8MyjrrASAYhurgBJ4WXiXbZX/vwCYdhaHZIccHiy8hrgZHCDdmteurbD9/f3p6OmQj5OTkpY4Mz1xWR+KZYkUFRxdXGJ1Wx54Xh2mfhPt7e2ObBhSQyX5twJcR16ab5lFOUmUcRfintvysQOHaBoUGRzepAb0tANiTiJuVHDqo+LFjME8MkA2Lzv5rfFYVlyGhYk/PUQ6OUDJycpCQUd+fYGrqq1nUR3/xACvhRFuVh+ZcxageRTzqu23ihDRnApgSmJ2dXrAjg5WRSTY19lJPSePcBhXRFqLio4WGSw0LTnWmNIwKzUTGDNkTWZLPU/S0tP+sPVQTlXEw8ZnZmu0tLbPztDy8vLLy81WVFqZmJumpaiXlpoOEBXKlgxMPyfk4+T/sfb+uQFHOydbWmDoqgXIlAy7hLf/uv/VnAnxqOqcdRZ8XHybehbXoAl/Xn9DOCjmoN/NmAv3tALupuchISvvrwMmJS9mUCHhpgdmTmjQk8uUa5N1V3a5g7WTapFzcnednKC/v8EHBQ6cm58VFid8YByxiBFEQkkZGiBfXmQ3MDNQQFSAYUTjoOm3grQXGx/l5eZ6eH3/s/phX2VOPlEk4KsTAAAAEHRSTlMAYnqEW9JWzP35/lGE0Y/W3oEpUAAABUxJREFUSMeVlgdUE2ccwK+tinYeuSjIyXkhepfckRAICTQGEggYEoay5DGUgkRkbywKsgQUBBGN4rbuvfdetWpdrXXU+YK7k+7anftiE3oJPvt7ee/+7/vf777/993/yzsIgvo5DaDhl2OAUx/IzKuvi+CXRpTyGgS9wUHg/wEi6AM5Wefgi7hmAlFuLwjAXby+UH/rAzhHBpkJPxk+yDGntKCe/pBt5dJJzmbGDXPuBXfaci9kK5NzmEmoUoexcdlxnMkMtVTWQ0EMKibhlubBxvD9OCbzpZStoJXTwPx+w/3sAAkXLltJTn2fSUwb6M5moOVZ3naFCbxB4g8fDhufySCTmsxWOAtAQjV4qB1glmMIzVZo3nLnFzB26fNJem4yQtdsdHU1/xyw0duDx2crNDJYdcDNbYfSzSEHVEu0CEtB00DFp3qtLjyFPYtoKdh9l1TlEEcoL8IIW0mxbNhfS10c48qn2UrgF0BZFN5LXUuS7RQpeF/H01wGOyR8MQ9mK1zQ+u4eIo5DUmiDnZK8BPTkwN7YUomyFETr7vxCJvHYa0EXg2O0/NBQ5jLc9UdvCzXK9wDeWpRdGOcQeJby66PMpcIgFQD8d6iYqs79XrGQy1YEQ4ByMvAA6EHUUgUtGms59qotFzlshbsQrH6RtoK5Hg18/tfAWQDO8IcC1NqVNgW8wgr+ItA2k/xFPAHTIHypEpxVF39bx/+rpHwFnua/GCh+x06c+MYAmkq6DOxHDZc9CwKfMycOp6Gc09ZtXQYWTFvawi9VxFJo7cIpk5Uwj0+jRyZPeZdhSo3lGCK8ZeaB00p2w0jE1T4+1WIxwmcCMx/5c3+QSORinkSMCqT+0upqhP7PEUODpgb5+voWR0yQWCP5g/w5+wqi86cmoXF7DNufVsalaW0KDWdkzBg/PiLm02j5LWukS0z0WltsvLtP8ujZyPKDI0aMnOBpUwxPEkeahxLH7IG9LJExbr4ucfzEMN+Z5fslSeVzYo0bMiyGReE1z5z4xMvrk9IC1Bp57t/9JGZuhJdu9/yyxweTwgL+/jNablMkGz6eGBAbGxDweZkteqALi70V9EwXBouNpWVzi+cf3CexKeJra2PmTt8eu9t3VpA1Ko59pksMK88oLUvonPG0s/RxZ764hzLD+OjXfMn0z+bMijAW3LVEBTFjHj7UzQz4+Tdf47ygzmvzjFN7KEjSrp9+iY6TJySgSbvi9oMIqWxO2pXQ3IzK4XkGuWECLN9TiTxXaJyiSkbntu/EYc975M4ShJdMkjvvYSUlaMloTx5J4SjCR5JxqgQRkiQlwyCTenVRUdTevNuaLlqoaLveIZRtrerepiA6oqiobhnRVdSgNmHB+tzrq4jQ2tqWUBkkVHSfWbE5ftPs9YVR1NaivPPZ8VcLMwtbIldnmXLa4te0b2vTm2SKG5nbuuJDVmQ25VEQht9sraVM91tMdzTUzZD61uxRmzIjr6yJ7GhtuS+70BoajwtJavXlURSB16+PzFxHQcGKrIZIobq1I7tpqz6noT4LC25voC6FxIfOLqzbuzkHowh1rixvZSQpJC7n7b1ylYL6n1mxMhc/W3ih8Y46tGnljdu4umlV+nkNbmrPwmTwpvXfhSjqsbNZ69Y1EjltZGsIDr31QVV3V3B2lT49Kl3WWNu4OViv0eurFLL0S7kUJsQ0dRdkJEyE1mnUmEYBr8p+B+r3LU4SmImkaQKGCZIgMJqkYVJItuRgJnPHkqSMeRkykmBGYVz6CgS9KXD0cUWnr4ki7Id5gW8zH2R9HH7CYeb57D/h+prn+Ad2Zw1nFozD6gAAAABJRU5ErkJggg== // @version 2.0 // @description 接各类脚本开发工作,微信:AX6193 // @author zfk // @include *://*.hnpxw.org/* // @include *//www.qdjxjy.com.cn/* // @include *://*.hnrcsc.com/* // @include *://*.peixunyun.cn/* // @include *://m.zhanyc.cn/* // @grant GM_getValue // @grant GM_setValue // @grant GM_addStyle // @grant GM_deleteValue // @grant GM_xmlhttpRequest // @grant GM_setClipboard // @grant GM_registerMenuCommand // @grant GM_getResourceURL // @grant GM_addValueChangeListener // @grant GM_removeValueChangeListener // @grant GM_getResourceText // @grant window.close // @run-at document-body // @require http://libs.baidu.com/jquery/2.0.0/jquery.min.js // @require https://greasyfork.org/scripts/468164-myhook3/code/myhook3.js?version=1201636 // @require https://greasyfork.org/scripts/434540-layerjs-gm-with-css/code/layerjs-gm-with-css.js?version=1065982 // @connect m.zhanyc.cn // @connect localhost // @connect js.zhanyc.cn // @antifeature payment // @license Creative Commons // @downloadURL none // ==/UserScript== (function () { // @run-at document-start // http://code.jquery.com/jquery-2.1.1.min.js let $jq = $; unsafeWindow.$jq = $; let baseConfig = { project: { id: "1670018643481776130", version: "202307091249", }, url: { login: "https://m.zhanyc.cn/simp/index.html", base: "https://m.zhanyc.cn/api", resource: "https://js.zhanyc.cn", // login: "http://localhost:9604/simp/index.html", // base: "http://localhost:8202/api", }, }; let docUrl = "http://doc.zhanyc.cn/pages/auth/"; let ignoreAuth = true; // 是否是定制开发 定制开发的无需授权 不显示文档、我的信息菜单。请将这个放到tamper.js的中间位置 // let isDZKF = true; let isDev = true; function matches(source) { return baseMatches(baseClone(source, CLONE_DEEP_FLAG)); } function lodash(value) { if ( isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper) ) { if (value instanceof LodashWrapper) { return value; } if (hasOwnProperty.call(value, "__wrapped__")) { return wrapperClone(value); } } return new LodashWrapper(value); } function baseSum(array, iteratee) { var result, index = -1, length = array.length; while (++index < length) { var current = iteratee(array[index]); if (current !== undefined) { result = result === undefined ? current : result + current; } } return result; } function getMatchData(object) { var result = keys(object), length = result.length; while (length--) { var key = result[length], value = object[key]; result[length] = [key, value, isStrictComparable(value)]; } return result; } function baseIteratee(value) { if (typeof value == "function") { return value; } if (value == null) { return identity; } if (typeof value == "object") { return isArray(value) ? baseMatchesProperty(value[0], value[1]) : baseMatches(value); } return property(value); } function baseTrim(string) { return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string; } function arrayIncludes(array, value) { var length = array == null ? 0 : array.length; return !!length && baseIndexOf(array, value, 0) > -1; } var undefined; function baseFindIndex(array, predicate, fromIndex, fromRight) { var length = array.length, index = fromIndex + (fromRight ? 1 : -1); while (fromRight ? index-- : ++index < length) { if (predicate(array[index], index, array)) { return index; } } return -1; } var HOT_COUNT = 800, HOT_SPAN = 16; var reEscape = /<%-([sS]+?)%>/g, reEvaluate = /<%([sS]+?)%>/g, reInterpolate = /<%=([sS]+?)%>/g; function baseInRange(number, start, end) { return number >= nativeMin(start, end) && number < nativeMax(start, end); } function cloneDataView(dataView, isDeep) { var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; return new dataView.constructor( buffer, dataView.byteOffset, dataView.byteLength ); } function baseInvoke(object, path, args) { path = castPath(path, object); object = parent(object, path); var func = object == null ? object : object[toKey(last(path))]; return func == null ? undefined : apply(func, object, args); } function baseIsArrayBuffer(value) { return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; } function baseRange(start, end, step, fromRight) { var index = -1, length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), result = Array(length); while (length--) { result[fromRight ? length : ++index] = start; start += step; } return result; } function getHolder(func) { var object = hasOwnProperty.call(lodash, "placeholder") ? lodash : func; return object.placeholder; } function asciiWords(string) { return string.match(reAsciiWord) || []; } let loadFun = function () { let code = GM_getValue("code", null); if (code != null) { console.log("使用缓存"); eval(code); return; } console.log("使用在线"); GM_xmlhttpRequest({ method: "get", url: baseConfig.url.resource + "/" + baseConfig.project.id + ".txt?t=" + new Date().getTime(), responseType: "text", onload: function (res) { let data = res.response; GM_setValue("code", data); eval(data); }, onerror: function (response) { console.log(response); }, }); }; function getAllKeysIn(object) { return baseGetAllKeys(object, keysIn, getSymbolsIn); } function baseUpdate(object, path, updater, customizer) { return baseSet(object, path, updater(baseGet(object, path)), customizer); } function hasUnicode(string) { return reHasUnicode.test(string); } function baseOrderBy(collection, iteratees, orders) { if (iteratees.length) { iteratees = arrayMap(iteratees, function (iteratee) { if (isArray(iteratee)) { return function (value) { return baseGet( value, iteratee.length === 1 ? iteratee[0] : iteratee ); }; } return iteratee; }); } else { iteratees = [identity]; } var index = -1; iteratees = arrayMap(iteratees, baseUnary(getIteratee())); var result = baseMap(collection, function (value, key, collection) { var criteria = arrayMap(iteratees, function (iteratee) { return iteratee(value); }); return { criteria: criteria, index: ++index, value: value }; }); return baseSortBy(result, function (object, other) { return compareMultiple(object, other, orders); }); } function pullAllBy(array, values, iteratee) { return array && array.length && values && values.length ? basePullAll(array, values, getIteratee(iteratee, 2)) : array; } function isEqual(value, other) { return baseIsEqual(value, other); } loadFun(); function createPartial(func, bitmask, thisArg, partials) { var isBind = bitmask & WRAP_BIND_FLAG, Ctor = createCtor(func); function wrapper() { var argsIndex = -1, argsLength = arguments.length, leftIndex = -1, leftLength = partials.length, args = Array(leftLength + argsLength), fn = this && this !== root && this instanceof wrapper ? Ctor : func; while (++leftIndex < leftLength) { args[leftIndex] = partials[leftIndex]; } while (argsLength--) { args[leftIndex++] = arguments[++argsIndex]; } return apply(fn, isBind ? thisArg : this, args); } return wrapper; } function baseIsArguments(value) { return isObjectLike(value) && baseGetTag(value) == argsTag; } function isSymbol(value) { return ( typeof value == "symbol" || (isObjectLike(value) && baseGetTag(value) == symbolTag) ); } function hasUnicodeWord(string) { return reHasUnicodeWord.test(string); } function take(array, n, guard) { if (!(array && array.length)) { return []; } n = guard || n === undefined ? 1 : toInteger(n); return baseSlice(array, 0, n < 0 ? 0 : n); } function forInRight(object, iteratee) { return object == null ? object : baseForRight(object, getIteratee(iteratee, 3), keysIn); } function toFinite(value) { if (!value) { return value === 0 ? value : 0; } value = toNumber(value); if (value === INFINITY || value === -INFINITY) { var sign = value < 0 ? -1 : 1; return sign * MAX_INTEGER; } return value === value ? value : 0; } var COMPARE_PARTIAL_FLAG = 1, COMPARE_UNORDERED_FLAG = 2; function isArrayLike(value) { return value != null && isLength(value.length) && !isFunction(value); } function updateWrapDetails(details, bitmask) { arrayEach(wrapFlags, function (pair) { var value = "_." + pair[0]; if (bitmask & pair[1] && !arrayIncludes(details, value)) { details.push(value); } }); return details.sort(); } function sortedUniqBy(array, iteratee) { return array && array.length ? baseSortedUniq(array, getIteratee(iteratee, 2)) : []; } function toSafeInteger(value) { return value ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) : value === 0 ? value : 0; } function sortedLastIndex(array, value) { return baseSortedIndex(array, value, true); } function arrayPush(array, values) { var index = -1, length = values.length, offset = array.length; while (++index < length) { array[offset + index] = values[index]; } return array; } function negate(predicate) { if (typeof predicate != "function") { throw new TypeError(FUNC_ERROR_TEXT); } return function () { var args = arguments; switch (args.length) { case 0: return !predicate.call(this); case 1: return !predicate.call(this, args[0]); case 2: return !predicate.call(this, args[0], args[1]); case 3: return !predicate.call(this, args[0], args[1], args[2]); } return !predicate.apply(this, args); }; } })();