aremesh / Members_StockMonitor Linkage

// ==UserScript==
// @name         Members_StockMonitor Linkage
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://members.stockmonitor.com//*
// @require      https://code.jquery.com/jquery-3.3.1.slim.js
// @require      https://openuserjs.org/src/libs/aremesh/External_Lib.js
// @license      MIT
// ==/UserScript==

(function () {

  'use strict';

  AddLinksToAll();
  Open_Finviz();
  DetectAjaxChanges()
  // Your code here...
})();

function DetectAjaxChanges() {
  var _send = XMLHttpRequest.prototype.send;
  XMLHttpRequest.prototype.send = function () {
alert(1)
    /* Wrap onreadystaechange callback */
    var callback = this.onreadystatechange;
    this.onreadystatechange = function () {
      if (this.readyState == 4) {

        /* We are in response; do something,
           like logging or anything you want */
      }
      callback.apply(this, arguments);
      AddLinksToAll();
    }

    _send.apply(this, arguments);

  }
}

function AddLinksToAll() {

 var newall = $("span[class='symbol']")

  newall.each(function (x) {
    var stockName = $(this).text();

    var existing = $(this).parents("span").html();
    var finalLink1 = GenerateLowfloatLinks(stockName, existing)
    $(this).parent("span").html(finalLink1)

  })
}

function Open_Finviz() {
  var newall = $("span[class='symbol']")
  var allLink = ""
  var stockName = []
  newall.each(function (x) {

    stockName.push($(this).html())

  })

  $(".help").parent().prepend("<a class='tab-link' target='_blank'  href='https://finviz.com/screener.ashx?t=" + stockName.join(",") + "'>Open In Finviz</a> | ")
}