maoger / EasyGoEnhancer

// ==UserScript==
// @name         EasyGoEnhancer
// @icon         https://gitee.com/maogie/img/raw/master/app/easygoenhancer/favicon.ico
// @homepage     https://github.com/maoger/EasyGoEnhancer
// @version      4.4.10
// @description  EasyGo助手
// @author       Maoger
// @include      http*://easykms.rccpa.com.cn/*
// @run-at       document-idle
// @updateURL    https://openuserjs.org/meta/maoger/EasyGoEnhancer.meta.js
// @downloadURL  https://openuserjs.org/install/maoger/EasyGoEnhancer.user.js
// @copyright    2016-2022, maoger (https://openuserjs.org/users/maoger)
// @license      MIT
// ==/UserScript==

var myIntervalUnit,
  myCondition,
  myFunction,
  myAddition,
  locationHref = window.location.href;
function EasyKnow_Main() {
  (document.title =
    document.title + " | EasyKnow知识管理系统 | maoyanqing.com"),
    do_something_after_condition(
      (myIntervalUnit = 100),
      (myCondition = function () {
        return document.querySelector(
          "#app > div > div.sidebar-container.has-logo > div > div > span:nth-child(1)"
        );
      }),
      (myFunction = function () {
        EasyKnow_Redirect();
      }),
      (myAddition = [])
    );
}
function EasyKnow_Redirect() {
  var t = document.querySelector(
      "#app > div > div.sidebar-container.has-logo > div > div"
    ),
    e = t.querySelector("span:nth-child(1)").getAttribute("style"),
    n = document.createElement("a");
  t.parentNode.insertBefore(n, t),
    (n.innerHTML =
      'EasyGoEnhancer<sup style="color:red;font-style:italic;">New!</sup>'),
    n.setAttribute("class", "right-menu-item"),
    n.setAttribute("href", "https://maoyanqing.com/easygoenhancer"),
    n.setAttribute("style", e),
    n.setAttribute("target", "_blank");
}
function do_something_after_condition(t, e, n, i) {
  var o = 0,
    a = setInterval(function () {
      0 == i.length
        ? (e || o >= 6e5) && (n(), clearInterval(a))
        : (e(i) || o >= 6e5) && (n(i), clearInterval(a)),
        (o += t);
    }, t);
}
locationHref.indexOf("easykms.rccpa.com.cn") >= 0 &&
  setTimeout(function () {
    EasyKnow_Main();
  }, 500);