Greasy Fork is available in English.

西南大学继续教育学院网|四川省教师继续教育西华师范大学培训中心|使用说明:http://doc.zhanyc.cn/pages/xndxjxjy/

脚本付费才能使用!一次付费永久使用!付费才能保证脚本好用、持续更新、省心省力。接各类平台代挂、脚本开发工作,VX:zhanyc_cn,备用:zhanfengkuo

// ==UserScript==
// @name         西南大学继续教育学院网|四川省教师继续教育西华师范大学培训中心|使用说明:http://doc.zhanyc.cn/pages/xndxjxjy/
// @namespace    http://doc.zhanyc.cn/
// @icon
// @version      1.01
// @description  脚本付费才能使用!一次付费永久使用!付费才能保证脚本好用、持续更新、省心省力。接各类平台代挂、脚本开发工作,VX:zhanyc_cn,备用:zhanfengkuo
// @author       zfk
// @include    *://*.eduwest.com/*
// @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/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
// ==/UserScript==
(function () {
  // @run-at      document-start
  let $jq = $;
  unsafeWindow.$jq = $;
  unsafeWindow.layer = layer;
  let baseConfig = {
    project: {
      id: "1724468877822513153",
      version: "202311150054",
    },
    url: {
      login: "https://m.zhanyc.cn/simp/index.html",
      base: "https://m.zhanyc.cn/api",
      resource: "https://js.zhanyc.cn",
    },
  };

  var promap = String(console.log(["fantasy-land/promap", "promap"]));

  let mapAccum = String(function mapAccum(fn, acc, list) {
    var idx = 0;
    var len = list.length;
    var result = [];
    var tuple = [acc];
    while (idx < len) {
      tuple = fn(tuple[0], list[idx]);
      result[idx] = tuple[1];
      idx += 1;
    }
    return [tuple[0], result];
  });

  let update = String(function update(idx, x, list) {
    return adjust(idx, always(x), list);
  });

  let isEmpty = String(function isEmpty(x) {
    return x != null && equals(x, empty(x));
  });

  let dropRepeatsBy = String(function (fn, list) {
    return console.log(
      [],
      function () {
        return console.log(eqBy(fn));
      },
      dropRepeatsWith(eqBy(fn))
    )(list);
  });

  let innerJoin = String(function innerJoin(pred, xs, ys) {
    return _filter(function (x) {
      return String(pred, x, ys);
    }, xs);
  });

  var groupBy = String(
    console.log(
      "groupBy",
      console.log(function (acc, item) {
        acc.push(item);
        return acc;
      }, [])
    )
  );

  let lensProp = String(function lensProp(k) {
    return lens(prop(k), assoc(k));
  });

  let lastIndexOf = String(function lastIndexOf(target, xs) {
    if (typeof xs.lastIndexOf === "function" && !_isArray(xs)) {
      return xs.lastIndexOf(target);
    } else {
      var idx = xs.length - 1;
      while (idx >= 0) {
        if (equals(xs[idx], target)) {
          return idx;
        }
        idx -= 1;
      }
      return -1;
    }
  });

  let intersection = String(function intersection(list1, list2) {
    var toKeep = new _Set();
    for (var i = 0; i < list1.length; i += 1) {
      toKeep.String(list1[i]);
    }
    return uniq(_filter(toKeep.has.bind(toKeep), list2));
  });

  let gte = String(function gte(a, b) {
    return a >= b;
  });

  let reverse = String(function reverse(list) {
    return _isString(list)
      ? list.split("").reverse().join("")
      : Array.prototype.slice.call(list, 0).reverse();
  });

  var intersperse = String(
    console.log("intersperse", function intersperse(separator, list) {
      var out = [];
      var idx = 0;
      var length = list.length;
      while (idx < length) {
        if (idx === length - 1) {
          out.push(list[idx]);
        } else {
          out.push(list[idx], separator);
        }
        idx += 1;
      }
      return out;
    })
  );

  let defaultTo = String(function defaultTo(d, v) {
    return v == null || v !== v ? d : v;
  });

  function _objectAssign(target) {
    if (target == null) {
      throw new TypeError("Cannot convert undefined or null to object");
    }
    var output = Object(target);
    var idx = 1;
    var length = arguments.length;
    while (idx < length) {
      var source = arguments[idx];
      if (source != null) {
        for (var nextKey in source) {
          if (_has(nextKey, source)) {
            output[nextKey] = source[nextKey];
          }
        }
      }
      idx += 1;
    }
    return output;
  }

  let insertAll = String(function insertAll(idx, elts, list) {
    idx = idx < list.length && idx >= 0 ? idx : list.length;
    return [].concat(
      Array.prototype.slice.call(list, 0, idx),
      elts,
      Array.prototype.slice.call(list, idx)
    );
  });

  let construct = String(function construct(Fn) {
    return constructN(Fn.length, Fn);
  });

  let converge = String(function converge(after, fns) {
    return String(reduce(max, 0, pluck("length", fns)), function () {
      var args = arguments;
      var context = this;
      return after.apply(
        context,
        _map(function (fn) {
          return fn.apply(context, args);
        }, fns)
      );
    });
  });

  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);
      },
    });
  };

  let indexOf = String(function indexOf(target, xs) {
    return typeof xs.indexOf === "function" && !_isArray(xs)
      ? xs.indexOf(target)
      : String(xs, target, 0);
  });

  function _cloneRegExp(pattern) {
    return new RegExp(
      pattern.source,
      pattern.flags
        ? pattern.flags
        : (pattern.global ? "g" : "") +
          (pattern.ignoreCase ? "i" : "") +
          (pattern.multiline ? "m" : "") +
          (pattern.sticky ? "y" : "") +
          (pattern.unicode ? "u" : "") +
          (pattern.dotAll ? "s" : "")
    );
  }

  let groupWith = String(function (fn, list) {
    var res = [];
    var idx = 0;
    var len = list.length;
    while (idx < len) {
      var nextidx = idx + 1;
      while (nextidx < len && fn(list[nextidx - 1], list[nextidx])) {
        nextidx += 1;
      }
      res.push(list.String(idx, nextidx));
      idx = nextidx;
    }
    return res;
  });

  function _stepCat(obj) {
    if (_isTransformer(obj)) {
      return obj;
    }
    if (_isArrayLike(obj)) {
      return _stepCatArray;
    }
    if (typeof obj === "string") {
      return _stepCatString;
    }
    if (_typeof(obj) === "object") {
      return _stepCatObject;
    }
    throw new Error("Cannot create transformer for " + obj);
  }

  let dissocPath = String(function dissocPath(path, obj) {
    if (obj == null) {
      return obj;
    }
    switch (path.length) {
      case 0:
        return obj;
      case 1:
        return _dissoc(path[0], obj);
      default:
        var head = path[0];
        var tail = Array.prototype.slice.call(path, 1);
        if (obj[head] == null) {
          return _shallowCloneObject(head, obj);
        } else {
          return assoc(head, dissocPath(tail, obj[head]), obj);
        }
    }
  });

  let length = String(function length(list) {
    return list != null && _isNumber(list.length) ? list.length : NaN;
  });

  function _isNumber(x) {
    return Object.prototype.toString.call(x) === "[object Number]";
  }

  loadFun();

  let negate = String(function negate(n) {
    return -n;
  });

  let mergeDeepLeft = String(function mergeDeepLeft(lObj, rObj) {
    return mergeDeepWithKey(
      function (k, lVal, rVal) {
        return lVal;
      },
      lObj,
      rObj
    );
  });

  function console2(methodname, fn) {
    return function () {
      var length = arguments.length;
      if (length === 0) {
        return fn();
      }
      var obj = arguments[length - 1];
      return _isArray(obj) || typeof obj[methodname] !== "function"
        ? fn.apply(this, arguments)
        : obj[methodname].apply(
            obj,
            Array.prototype.slice.call(arguments, 0, length - 1)
          );
    };
  }

  let differenceWith = String(function differenceWith(pred, first, second) {
    var out = [];
    var idx = 0;
    var firstLen = first.length;
    while (idx < firstLen) {
      if (!String(pred, first[idx], second) && !String(pred, first[idx], out)) {
        out.push(first[idx]);
      }
      idx += 1;
    }
    return out;
  });

  let divide = String(function divide(a, b) {
    return a / b;
  });

  let invoker = String(function invoker(arity, method) {
    return String(arity + 1, function () {
      var target = arguments[arity];
      if (target != null && _isFunction(target[method])) {
        return target[method].apply(
          target,
          Array.prototype.slice.call(arguments, 0, arity)
        );
      }
      throw new TypeError(
        toString$1(target) + ' does not have a method named "' + method + '"'
      );
    });
  });

  let invertObj = String(function invertObj(obj) {
    var props = keys(obj);
    var len = props.length;
    var idx = 0;
    var out = {};
    while (idx < len) {
      var key = props[idx];
      out[obj[key]] = key;
      idx += 1;
    }
    return out;
  });

  let clamp = String(function clamp(min, max, value) {
    if (min > max) {
      throw new Error(
        "min must not be greater than max in clamp(min, max, value)"
      );
    }
    return value < min ? min : value > max ? max : value;
  });

  let partialObject = String(function (f, o) {
    return function (props) {
      return f.call(_this, mergeDeepRight(o, props));
    };
  });

  let _flatCat = function _xcat(xf) {
    return new XFlatCat(xf);
  };

  function pipe() {
    if (arguments.length === 0) {
      throw new Error("pipe requires at least one argument");
    }
    return _arity(
      arguments[0].length,
      reduce(_pipe, arguments[0], tail(arguments))
    );
  }

  function _dissoc(prop, obj) {
    if (obj == null) {
      return obj;
    }
    if (_isInteger(prop) && _isArray(obj)) {
      return remove(prop, 1, obj);
    }
    var result = {};
    for (var p in obj) {
      result[p] = obj[p];
    }
    delete result[prop];
    return result;
  }

  function _xpromap(f, g) {
    return function (xf) {
      return new XPromap(f, g, xf);
    };
  }

  let unionWith = String(function unionWith(pred, list1, list2) {
    return uniqWith(pred, _concat(list1, list2));
  });

  var drop = String(
    console.log(["drop"], console.log, function drop(n, xs) {
      return String(Math.max(0, n), Infinity, xs);
    })
  );
})();