Torn Extensions - Stock Order

Helps to order stock for your company.

  1. // ==UserScript==
  2. // @name Torn Extensions - Stock Order
  3. // @namespace TornExtensions
  4. // @version 1.1
  5. // @description Helps to order stock for your company.
  6. // @author Mathias [XID 1918010]
  7. // @match https://www.torn.com/companies.php*
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function() {
  12. //'use strict';
  13. let APIKey = "YOUR API HERE";
  14. let targetNode = document.getElementById('stock');
  15. let config = { childList: true };
  16. let onItsWay = 0;
  17. let callback = function(mutationsList, observer) {
  18. $(".total-price.bold").after("<div class=\"total-stock-container bold\">Total stock:</span> <span class=\"total-stock\"></span></div><br />");
  19. $(".total-stock-container").css("padding", "10px 10px 0");
  20. $(".input-money").change(() => {
  21. calcStock();
  22. });
  23. calcStock();
  24. let API = `https://api.torn.com/company/?selections=stock&key=${APIKey}`;
  25. fetch(API)
  26. .then((res) => res.json())
  27. .then((res) => {
  28. console.log(API);
  29. let stockstr = "";
  30. stockstr += "<br /><br /><h4>Torn Extensions - Stock Order</h4><table><tr><th>Product</th><th>In stock</th><th>Sold yesterday</th></tr>";
  31. $.each(res.company_stock, (k, v) => {
  32. onItsWay += v.on_order;
  33. stockstr += `<tr><td>${k}</td><td>${v.in_stock.toLocaleString("en-US")}(${(v.in_stock + v.on_order).toLocaleString("en-US")})</td><td>${v.sold_amount.toLocaleString("en-US")}</td></tr>`;
  34. });
  35. $(".clear-all.t-blue.h.m-left10.c-pointer").after(stockstr + "</table>");
  36. $("table,th,td").css("border", "1px solid black").css("border-collapse", "collapse");
  37. $("th,td").css("padding", "5px");
  38. $(".total-stock").text((parseInt($(".total-stock").text().replace(",", "")) + onItsWay).toLocaleString("en-US"));
  39. });
  40. };
  41.  
  42. let observer = new MutationObserver(callback);
  43. observer.observe(targetNode, config);
  44.  
  45. function calcStock() {
  46. $(".total-stock").text((parseInt($(".quantity.bold").text().replace(/,/g, "")) + parseInt($(".stock.bold").text().replace(/,/g, "")) + onItsWay).toLocaleString("en-US"));
  47. }
  48. })();