Stats Xente Script

Stats Xente script for inject own data on Managerzone site

目前為 2024-08-21 提交的版本,檢視 最新版本

  1. // ==UserScript==
  2. // @name Stats Xente Script
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.91
  5. // @description Stats Xente script for inject own data on Managerzone site
  6. // @author xente
  7. // @match https://www.managerzone.com/*
  8. // @icon https://statsxente.com/MZ1/View/Images/etiqueta_bota.png
  9. // @license GNU
  10. // @grant GM_xmlhttpRequest
  11. // @grant GM_addStyle
  12. // @grant GM_getValue
  13. // @grant GM_setValue
  14. // @grant GM_deleteValue
  15. // @grant GM_listValues
  16. // @require https://code.jquery.com/jquery-3.7.1.js
  17. // ==/UserScript==
  18.  
  19. (function() {
  20. 'use strict';
  21.  
  22. GM_addStyle(`#snackbar_stx {
  23. visibility: hidden;
  24. position: fixed;
  25. display: flex;
  26. align-items: center;
  27. left: 50%;
  28. transform: translate(-50%, -50%);
  29. min-width: 350px;
  30. background-color: #323232;
  31. color: #ffffffb3;
  32. text-align: center;
  33. border-radius: 2px;
  34. padding: 16px;
  35. z-index: 1;
  36. bottom: 30px;
  37. font-size: 17px;
  38. border-radius: 5px;
  39. box-shadow: 0 3px 5px -1px #0003, 0 6px 10px #00000024, 0 1px 18px #0000001f;
  40. }
  41.  
  42. #snackbar_stx.showSnackBar_stx {
  43. visibility: visible;
  44. -webkit-animation: fadein 0.5s, fadeout 0.5s 4.5s;
  45. animation: fadein 0.5s, fadeout 0.5s 4.5s;
  46. }
  47.  
  48. @-webkit-keyframes fadein {
  49. from {bottom: 0; opacity: 0;}
  50. to {bottom: 30px; opacity: 1;}
  51. }
  52.  
  53. @keyframes fadein {
  54. from {bottom: 0; opacity: 0;}
  55. to {bottom: 30px; opacity: 1;}
  56. }
  57.  
  58. @-webkit-keyframes fadeout {
  59. from {bottom: 30px; opacity: 1;}
  60. to {bottom: 0; opacity: 0;}
  61. }
  62.  
  63. @keyframes fadeout {
  64. from {bottom: 30px; opacity: 1;}
  65. to {bottom: 0; opacity: 0;}
  66. }.divAlert {
  67. width: 75%;
  68. padding: 4px 3px;
  69. border-radius: 4px;
  70. border-style: solid;
  71. border-width: 1px;
  72. font-size: 13px;
  73. background-color: #ffc107;
  74. color: #161515;
  75. border-color: #ffffff;
  76. font-weight: bold;
  77. text-shadow: 1px 1px #ffffff;
  78. }.modal_cargando {
  79. display: none;
  80. /* Hidden by default */
  81. position: fixed;
  82. /* Stay in place */
  83. z-index: 150;
  84. /* Sit on top */
  85. padding-top: 25px;
  86. /* Location of the box */
  87. left: 0;
  88. top: 0;
  89. width: 100%;
  90. /* Full width */
  91. height: 100%;
  92. /* Full height */
  93. overflow: auto;
  94. /* Enable scroll if needed */
  95. background-color: rgb(0, 0, 0);
  96. /* Fallback color */
  97. background-color: rgba(0, 0, 0, 0.75);
  98. /* Black w/ opacity */
  99. justify-content: center;
  100. align-items: center;
  101. }
  102.  
  103. .modal-content_cargando {
  104. position:relative;
  105. border-radius:7px;
  106. background-color: #fefefe00;
  107. width: 90%;
  108. height: 40%;
  109. display: flex;
  110. justify-content: center;
  111. align-items: center;
  112. }
  113.  
  114.  
  115. .btn-save{
  116. width:8em;
  117. border-color:transparent;
  118. border-radius: 3px;
  119. display: inline-block;
  120. padding: 10px 5px;
  121. text-shadow: 0 1px 0 rgba(255,255,255,0.3);
  122. box-shadow: 0 1px 1px rgba(0,0,0,0.3);
  123. cursor:pointer;
  124. color: white;
  125. font-family: 'Roboto', sans-serif;
  126. background-color: #3CC93F;/*Color de fondo*/
  127. }
  128. .btn-save:hover{
  129. background-color: #37B839;/*Color de fondo*/
  130. }
  131. .btn-save:active{
  132. background-color: #29962A;/*Color de fondo*/
  133. }
  134.  
  135. .btn-delete{
  136. width:8em;
  137. border-color:transparent;
  138. border-radius: 3px;
  139. display: inline-block;
  140. padding: 10px 5px;
  141. text-decoration: none;
  142. text-shadow: 0 1px 0 rgba(255,255,255,0.3);
  143. box-shadow: 0 1px 1px rgba(0,0,0,0.3);
  144. cursor:pointer;
  145. color: white;
  146. font-family: 'Roboto', sans-serif;
  147. background-color: #e6413e;/*Color de fondo*/
  148. }
  149. .btn-delete:hover{
  150. background-color: #C93832;/*Color de fondo*/
  151. }
  152. .btn-delete:active{
  153. background-color: #ad2a24;/*Color de fondo*/
  154. }
  155.  
  156. .cerrar {
  157. position: absolute;
  158. top: 0;
  159. right: 0;
  160. padding: 5px;
  161. cursor: pointer;
  162. color: #fff;
  163. }
  164.  
  165. .close_cargando {
  166. color: #aaaaaa;
  167. float: right;
  168. font-size: 28px;
  169. font-weight: bold;
  170. }
  171.  
  172. .close_cargando:hover,
  173. .close_cargando:focus {
  174. color: #000;
  175. text-decoration: none;
  176. cursor: pointer;
  177. }.stx_legend {
  178. z-index:300;
  179. position: fixed;
  180. bottom: 60%;
  181. right: 1px;
  182. border: 1px solid #2bacf5;
  183. padding-right: 13px;
  184. padding-left: 3px;
  185. padding-top: 3px;
  186. padding-bottom: 3px;
  187. width: 14px;
  188. font-size: 13px;
  189. border-radius: 4px;
  190. text-shadow: 1px 1px 3px #676767;
  191. background-color: #246355;
  192. color: #246355;
  193. cursor: default;
  194. cursor: pointer;
  195. }.loader {
  196. width: 100%;
  197. height: 15px;
  198. border-radius: 40px;
  199. color: #ffc107;
  200. border: 2px solid;
  201. position: relative;
  202. overflow: hidden;
  203. }
  204. .loader::before {
  205. content: "";
  206. position: absolute;
  207. margin: 2px;
  208. width: 14px;
  209. top: 0;
  210. bottom: 0;
  211. left: -20px;
  212. border-radius: inherit;
  213. background: currentColor;
  214. box-shadow: -10px 0 12px 3px currentColor;
  215. clip-path: polygon(0 5%, 100% 0,100% 100%,0 95%,-30px 50%);
  216. animation: l14 1s infinite linear;
  217. }
  218. @keyframes l14 {
  219. 100% {left: calc(100% + 20px)}
  220. }
  221. .containerPeqAmarillo {
  222. display: block;
  223. position: relative;
  224. padding-left: 35px;
  225. margin-bottom: 12px;
  226. font-size:medium;
  227. padding-top:5px;
  228. cursor: pointer;
  229. -webkit-user-select: none;
  230. -moz-user-select: none;
  231. -ms-user-select: none;
  232. user-select: none;
  233. }
  234.  
  235. /* Hide the browser's default checkbox */
  236. .containerPeqAmarillo input {
  237. position: absolute;
  238. opacity: 0;
  239. cursor: pointer;
  240. height: 0;
  241. width: 0;
  242. }
  243.  
  244. /* Create a custom checkbox */
  245. .checkmarkPeqAmarillo {
  246. position: absolute;
  247. top: 0;
  248. left: 0;
  249. height: 25px;
  250. width: 25px;
  251. background-color: #eee;
  252. }
  253.  
  254. /* On mouse-over, add a grey background color */
  255. .containerPeqAmarillo:hover input ~ .checkmarkPeqAmarillo {
  256. background-color: #ccc;
  257. }
  258.  
  259. /* When the checkbox is checked, add a blue background */
  260. .containerPeqAmarillo input:checked ~ .checkmarkPeqAmarillo {
  261. background-color: #FFCC00;
  262. }
  263.  
  264. /* Create the checkmark/indicator (hidden when not checked) */
  265. .checkmarkPeqAmarillo:after {
  266. content: "";
  267. position: absolute;
  268. display: none;
  269. }
  270.  
  271. /* Show the checkmark when checked */
  272. .containerPeqAmarillo input:checked ~ .checkmarkPeqAmarillo:after {
  273. display: block;
  274. }
  275.  
  276. /* Style the checkmark/indicator */
  277. .containerPeqAmarillo .checkmarkPeqAmarillo:after {
  278. left: 9px;
  279. top: 5px;
  280. width: 5px;
  281. height: 10px;
  282. border: solid white;
  283. border-width: 0 3px 3px 0;
  284. -webkit-transform: rotate(45deg);
  285. -ms-transform: rotate(45deg);
  286. transform: rotate(45deg);
  287. }
  288. #showMenu {
  289. text-align: left;
  290. border-collapse: collapse;
  291. width: 75%;
  292. font-size: 14px;
  293. font-family: 'Roboto', sans-serif
  294. }
  295.  
  296. /* #showMenu th,td {
  297. padding: 4px;
  298. }*/
  299.  
  300. #showMenu td {
  301. background-color: white;
  302. }
  303.  
  304. #showMenu thead {
  305. background-color: #246355;
  306. border-bottom: solid 2px #0F362D;
  307. color: white;
  308. }
  309.  
  310. #showMenu tfoot {
  311. font-family: 'Righteous', cursive;
  312. background-color: #246355;
  313. border-bottom: solid 5px #0F362D;
  314. font-size: 13px;
  315. color: white;
  316. }
  317.  
  318.  
  319.  
  320. #showMenu tr td,
  321. th {
  322. border-top-right-radius: 0;
  323. border-top-left-radius: 0;
  324. border-bottom-left-radius: 0;
  325. border-bottom-right-radius: 0;
  326. }
  327.  
  328. #showMenu th:first-child {
  329. border-top-left-radius: 5px;
  330. }
  331.  
  332. #showMenu th:last-child {
  333. border-top-right-radius: 5px;
  334. }
  335.  
  336. #showMenu tr {
  337. background-color: transparent;
  338. border-color: transparent;
  339. font-family: 'Roboto';
  340. }
  341.  
  342. #show3{
  343.  
  344. width: 75%;
  345. background-color: transparent;
  346. border-collapse: separate;
  347. border-spacing: 0;
  348. }
  349.  
  350.  
  351.  
  352. #show3 td {
  353. background-color: white;
  354. }
  355.  
  356. #show3 tr:last-child td:last-child {
  357. border-bottom-right-radius: 5px;
  358. }
  359.  
  360.  
  361. #show3 tr:last-child td:first-child {
  362. border-bottom-left-radius: 5px;
  363. }
  364.  
  365. .caja_mensaje_50 {
  366. font-family: 'Roboto', sans-serif;
  367. background: #98D398;
  368. color: #FFFFFF;
  369. font-weight: bold;
  370. padding: 4px;
  371. text-align: center;
  372. width: 50%;
  373. font-size: 2.0em;
  374. border-radius: 5px;
  375. }
  376.  
  377. .modal_div_content_main{
  378.  
  379. background-color: #f2f2f2;
  380. min-height: 115px;
  381. border-radius: 5px;
  382. }
  383.  
  384.  
  385.  
  386.  
  387. .expandable-icon {
  388. right: 0px;
  389. top: 0px;
  390. transform: rotateZ(45deg);
  391. border-radius: 5px;
  392. width: 20px;
  393. height: 20px;
  394. background: rgb(12, 47, 94);
  395. transition: all .3s;
  396. }
  397.  
  398. .expandable-item.active .expandable-icon{
  399. transform: rotateZ(0);
  400. }
  401.  
  402. .expandable-icon .line {
  403. width: 15px;
  404. height: 2px;
  405. background: white;
  406. position: absolute;
  407. top: 0;
  408. left: 0;
  409. right: 0;
  410. bottom: 0;
  411. margin: auto;
  412. transition: all .4s;
  413. }
  414.  
  415. .expandable-icon .line:nth-child(1) {
  416. transform: rotateZ(45deg);
  417. }
  418.  
  419. .expandable-icon .line:nth-child(2) {
  420. transform: rotateZ(-45deg);
  421. }
  422.  
  423.  
  424. .imgMiddle {
  425. display: inline-block;
  426. vertical-align: middle;
  427. }
  428.  
  429. .textMiddle {
  430. display: inline-block;
  431. vertical-align: middle;
  432. }
  433.  
  434.  
  435.  
  436.  
  437. `)
  438.  
  439. /*var keys = GM_listValues();
  440. keys.forEach(function(key) {
  441. console.log(key+" "+GM_getValue(key))
  442. });*/
  443.  
  444. var link = document.createElement('link');
  445. link.href = 'https://fonts.googleapis.com/css?family=Roboto&display=swap';
  446. link.rel = 'stylesheet';
  447.  
  448. var link1 = document.createElement('link');
  449. link1.href = 'https://cdn.jsdelivr.net/npm/bootstrap-icons@1.3.0/font/bootstrap-icons.css';
  450. link1.rel = 'stylesheet';
  451. document.head.appendChild(link)
  452. document.head.appendChild(link1)
  453.  
  454. createModalMenu()
  455. createModalEventListeners()
  456.  
  457. setLangSportCats()
  458. getUsernameData()
  459.  
  460.  
  461. var inputHidden = document.createElement('input');
  462. inputHidden.type = 'hidden';
  463. inputHidden.id = 'ord_table';
  464. inputHidden.value = 'descendente';
  465. document.body.appendChild(inputHidden);
  466.  
  467.  
  468.  
  469.  
  470. setTimeout(function () {
  471.  
  472. var urlParams = new URLSearchParams(window.location.search);
  473. if((urlParams.has('p')) && (urlParams.get('p') === 'league')&&(GM_getValue("leagueFlag"))){
  474. leagues();
  475. }
  476.  
  477. if((urlParams.has('p')) && (urlParams.get('p') === 'federations')&& (urlParams.get('sub') === 'clash')&&(GM_getValue("federationFlag"))){
  478. clash();
  479. }
  480.  
  481. if((urlParams.has('p')) && (urlParams.get('p') === 'match')&& (urlParams.get('sub') === 'result')&&(GM_getValue("matchFlag"))){
  482. match();
  483. }
  484.  
  485.  
  486. if((urlParams.has('p')) && (urlParams.get('p') === 'federations')&& (urlParams.get('sub') === 'league')&&(GM_getValue("federationFlag"))){
  487.  
  488. clashLeagues();
  489.  
  490. }
  491.  
  492.  
  493. if((urlParams.has('p')) && (urlParams.get('p') === 'players')&&(!urlParams.has('pid')) &&(GM_getValue("playersFlag"))){
  494. playersPage()
  495. }
  496.  
  497. if((urlParams.has('p')) && (urlParams.get('p') === 'players') && (urlParams.has('pid'))){
  498. playersPageStats()
  499. }
  500.  
  501.  
  502. if((urlParams.has('p')) && (urlParams.get('p') === 'rank')&&(urlParams.get('sub') === 'countryrank')
  503. &&(GM_getValue("countryRankFlag"))){
  504. countryRank();
  505. }
  506.  
  507. if((urlParams.has('p')) && (urlParams.get('p') === 'clubhouse')){
  508. nextMatchesClubhouse()
  509. }
  510.  
  511.  
  512. if((urlParams.has('p')) && (urlParams.get('p') === 'friendlyseries')&&(urlParams.get('sub') === 'standings')){
  513. friendlyCupsAndLeagues()
  514. }
  515.  
  516.  
  517.  
  518. if((urlParams.has('p')) && (urlParams.get('p') === 'cup')&&(urlParams.get('sub') === 'groupplay')){
  519. friendlyCupsAndLeagues()
  520. }
  521.  
  522.  
  523. if((urlParams.has('p')) && (urlParams.get('p') === 'private_cup')&&(urlParams.get('sub') === 'groupplay')){
  524. friendlyCupsAndLeagues()
  525. }
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541. }, 2000);
  542.  
  543.  
  544. (function () {
  545.  
  546. if(document.getElementById("league_tab_table")!==null) {
  547. document.getElementById("league_tab_table").addEventListener('click', function () {
  548. if(document.getElementById("showMenu")===null) {
  549. leagues()
  550. }
  551. });
  552.  
  553. }
  554.  
  555.  
  556. })();
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569. setTimeout(function () {
  570.  
  571.  
  572.  
  573.  
  574. (function () {
  575.  
  576. if(document.getElementById("ui-id-2")!==null) {
  577. document.getElementById("ui-id-2").parentNode.addEventListener('click', function () {
  578. if(document.getElementById("showMenu")===null) {
  579.  
  580. var urlParams = new URLSearchParams(window.location.search);
  581.  
  582. if(urlParams.get('fsid')){
  583. friendlyCupsAndLeagues()
  584. }else{
  585. clashLeagues()
  586. }
  587.  
  588.  
  589. }
  590. });
  591.  
  592. }
  593. })();
  594.  
  595.  
  596.  
  597. (function () {
  598.  
  599. if(document.getElementById("ui-id-4")!==null) {
  600. document.getElementById("ui-id-4").parentNode.addEventListener('click', function () {
  601. if(document.getElementById("showMenu")===null) {
  602. friendlyCupsAndLeagues()
  603. }
  604. });
  605.  
  606. }
  607. })();
  608.  
  609.  
  610.  
  611.  
  612.  
  613. }, 2000);
  614.  
  615.  
  616. function fetchExistTeam(url) {
  617. return new Promise((resolve, reject) => {
  618.  
  619. GM_xmlhttpRequest({
  620. method: "GET",
  621. url: url,
  622. headers: {
  623. "Content-Type": "application/json"
  624. },
  625. onload: function(response) {
  626. var jsonResponse = JSON.parse(response.responseText);
  627. resolve(jsonResponse['inserted'])
  628. },
  629. onerror: function(error) {
  630. reject("no");
  631. }
  632. });
  633. });
  634. }
  635.  
  636. function fetchExistPlayers(url) {
  637. return new Promise((resolve, reject) => {
  638.  
  639. GM_xmlhttpRequest({
  640. method: "GET",
  641. url: url,
  642. headers: {
  643. "Content-Type": "application/json"
  644. },
  645. onload: function(response) {
  646. var jsonResponse = JSON.parse(response.responseText);
  647. console.log(jsonResponse)
  648. resolve(jsonResponse)
  649. },
  650. onerror: function(error) {
  651. reject("no");
  652. }
  653. });
  654. });
  655. }
  656.  
  657.  
  658.  
  659. async function match(){
  660.  
  661. setTimeout(async function() {
  662.  
  663.  
  664.  
  665. const elementos = document.querySelectorAll('.player_link');
  666. elementos.forEach(function(elemento) {
  667. elemento.addEventListener('click', function() {
  668.  
  669. setTimeout(function() {
  670. playersPageStats()
  671.  
  672. }, 1000);
  673.  
  674.  
  675.  
  676. });
  677. });
  678.  
  679. var team_div=document.getElementsByClassName("flex-grow-0 textCenter team-table block")
  680.  
  681. var teams_=[]
  682.  
  683.  
  684. for(x=0;x<2;x++) {
  685. var as=team_div[x].getElementsByTagName("a")
  686. var urlObj = new URL("https://www.managerzone.com/"+as[0].getAttribute('href'));
  687. var params = new URLSearchParams(urlObj.search);
  688. var tidValue = params.get('tid');
  689. teams_[x]={"team_name":as[0].innerHTML,"team_id":tidValue,"inserted":""}
  690.  
  691. }
  692.  
  693.  
  694. var elems = document.getElementsByClassName("hitlist "+window.sport+" statsLite marker tablesorter");
  695. for(var x=0;x<2;x++) {
  696. var linkIds=""
  697. var contIds=0;
  698. var tabla = elems[x]
  699. var filas = tabla.getElementsByTagName("tr");
  700. var fila = filas[1];
  701.  
  702. for (var i = 2; i < filas.length - 1; i++) {
  703.  
  704. fila = filas[i];
  705. var tds=fila.getElementsByTagName("td");
  706. var as_=tds[2].getElementsByTagName("a");
  707. urlObj = new URL("https://www.managerzone.com/"+as_[0].getAttribute("href"));
  708. params = new URLSearchParams(urlObj.search);
  709. var pid = params.get('pid');
  710.  
  711. linkIds+="&id"+contIds+"="+pid
  712. contIds++;
  713.  
  714.  
  715.  
  716. }
  717.  
  718. link="http://statsxente.com/MZ1/Functions/tamper_check_stats_player.php?sport="+window.sport+linkIds
  719. var inserted = await fetchExistPlayers(link);
  720. teams_[x]={"team_name":as[0].innerHTML,"team_id":tidValue,"inserted":inserted}
  721.  
  722. }
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729. elems = document.getElementsByClassName("hitlist "+window.sport+" statsLite marker tablesorter");
  730. for(x=0;x<2;x++) {
  731. if(teams_[x]['inserted']['total']>0){
  732. tabla = elems[x]
  733. var firstTrThead = tabla.querySelector('thead td');
  734. var currentColspan = firstTrThead.getAttribute('colspan');
  735. currentColspan = parseInt(currentColspan, 10) + 1;
  736. firstTrThead.setAttribute('colspan', currentColspan);
  737. var secondTrThead = tabla.querySelector('thead tr:nth-of-type(2)')
  738. var newTd = document.createElement('td');
  739. newTd.textContent = '';
  740. secondTrThead.appendChild(newTd);
  741. filas = tabla.getElementsByTagName("tr");
  742. fila = filas[1];
  743. var dato = document.createElement("td");
  744. var tfoot = tabla.querySelector("tfoot");
  745. var primeraFilaTfoot = tfoot.querySelector("tr");
  746. var primerTDTfoot = primeraFilaTfoot.querySelector("td");
  747. primerTDTfoot.setAttribute("colspan", "9");
  748.  
  749. var elems2 = document.getElementsByClassName("listHeadColor");
  750. var lista = elems2[0]
  751.  
  752. var nuevoElementoDD = document.createElement("dd");
  753. nuevoElementoDD.textContent = "Nuevo elemento";
  754. nuevoElementoDD.className = "c6"
  755. lista.appendChild(nuevoElementoDD);
  756.  
  757. var id = 1516;
  758. for (i = 2; i < filas.length - 1; i++) {
  759. fila = filas[i];
  760.  
  761. tds=fila.getElementsByTagName("td");
  762. as_=tds[2].getElementsByTagName("a");
  763. urlObj = new URL("https://www.managerzone.com/"+as_[0].getAttribute("href"));
  764. params = new URLSearchParams(urlObj.search);
  765. pid = params.get('pid');
  766. if(teams_[x]['inserted'][pid]=="yes"){
  767. dato = document.createElement("td");
  768. var iner = "<img src='https://statsxente.com/MZ1/View/Images/etiqueta_bota.png' width='20px' height='20px' id='but" + pid + "' style='cursor:pointer;'/>";
  769. dato.innerHTML = iner
  770. fila.appendChild(dato);
  771.  
  772.  
  773.  
  774. (function (currentId, currentTeamId,currentSport,lang,team_name,player_name) {
  775. document.getElementById("but" + currentId).addEventListener('click', function () {
  776.  
  777. var link = "http://statsxente.com/MZ1/Functions/tamper_player_stats.php?sport="+currentSport
  778. +"&player_id="+currentId+"&team_id="+currentTeamId+"&idioma="+lang+"&divisa="+GM_getValue("currency")+
  779. "&team_name="+encodeURIComponent(team_name)+"&player_name="+encodeURIComponent(player_name)
  780. openWindow(link,0.95,1.25);
  781. });
  782. })(pid, teams_[x]['team_id'],window.sport,window.lang,teams_[x]['team_name'],as_[0].innerHTML);
  783.  
  784.  
  785. }
  786.  
  787.  
  788.  
  789.  
  790. }
  791. }
  792. }
  793. }, 1000);
  794.  
  795. }
  796.  
  797. function clash(){
  798.  
  799. var badges = document.getElementsByClassName("fed_badge");
  800. var regex = /fid=(\d+)/;
  801. var srcLocal = badges[0].getAttribute('src');
  802. var local_id = srcLocal.match(regex);
  803. var src_away = badges[1].getAttribute('src');
  804. var away_id = src_away.match(regex);
  805. var names = document.getElementsByClassName("name-score text-ellipsis")
  806. var elems = document.getElementsByClassName("top-pane__deadline");
  807. var tabla = elems[0]
  808.  
  809. var contenidoNuevo="</br></br><center><table><tr><td class='subheader clearfix'>Clash Compare</td></tr><tr><td><center><img id=clashCompare src='https://www.statsxente.com/MZ1/View/Images/clash_icon.png' style='width:45px; height:45px; cursor:pointer;'/></center></td></tr></table></center>";
  810. tabla.insertAdjacentHTML('beforeend', contenidoNuevo)
  811.  
  812. document.getElementById("clashCompare").addEventListener('click', function () {
  813. var link = "https://statsxente.com/MZ1/Functions/loadClashFederationData.php?tamper=yes&fid="+local_id[1]+"&fid1="+away_id[1]+"&fede="+encodeURIComponent(names[0].innerText)+"&fede1="+encodeURIComponent(names[1].innerText)+"&idioma="+window.lang+"&divisa="+GM_getValue("currency")+"&sport="+window.sport;
  814. openWindow(link,0.95,1.25);
  815. });
  816.  
  817. }
  818.  
  819.  
  820. var teams_data="";
  821. var searchClassName=""
  822.  
  823. function leagues(){
  824. var urlParams = new URLSearchParams(window.location.search);
  825.  
  826. var initialValues = {};
  827. initialValues["senior"] = GM_getValue("league_default_senior");
  828. initialValues["world"] = GM_getValue("league_default_senior");
  829. initialValues["u23"] = GM_getValue("league_default_u23");
  830. initialValues["u21"] = GM_getValue("league_default_u21");
  831. initialValues["u18"] = GM_getValue("league_default_u18");
  832. initialValues["u23_world"] = GM_getValue("league_default_u23");
  833. initialValues["u21_world"] = GM_getValue("league_default_u21");
  834. initialValues["u18_world"] = GM_getValue("league_default_u18");;
  835.  
  836. var linkIds=""
  837. setTimeout(function() {
  838.  
  839. var elems = document.getElementsByClassName("nice_table");
  840. var tabla = elems[0]
  841. var thSegundo = tabla.querySelector("thead th:nth-child(2)");
  842. thSegundo.style.width = "250px";
  843.  
  844.  
  845. var values = new Map();
  846. values.set('valor23', 'U23 Value');
  847. values.set('valor21', 'U21 Value');
  848. values.set('valor18', 'U18 Value');
  849. values.set('salario', 'Salary');
  850. values.set('valorUPSenior', 'LM Value');
  851. values.set('valorUPSUB23', 'U23 LM Value');
  852. values.set('valorUPSUB21', 'U21 LM Value');
  853. values.set('valorUPSUB18', 'U18 LM Value');
  854. values.set('edad', 'Age');
  855. if(window.sport=="soccer"){
  856. values.set('valor11', 'TOP 11');
  857. values.set('valor11_23', 'U23 TOP 11');
  858. values.set('valor11_21', 'U21 TOP 11');
  859. values.set('valor11_18', 'U18 TOP 11');
  860. }else{
  861. values.set('valor11', 'TOP 21');
  862. values.set('valor11_23', 'U23 TOP 21');
  863. values.set('valor11_21', 'U21 TOP 21');
  864. values.set('valor11_18', 'U18 TOP 21');
  865. }
  866.  
  867. values.set('noNac', 'Foreigners');
  868. values.set('elo', 'ELO Score');
  869. values.set('elo23', 'U23 ELO Score');
  870. values.set('elo21', 'U21 ELO Score');
  871. values.set('elo18', 'U18 ELO Score');
  872. values.set('numJugadores', 'Number of players');
  873.  
  874. if(urlParams.get('type')=="senior"){
  875. values.set('leagues', 'Leagues');
  876. values.set('world_leagues_all', 'World Leagues');
  877. values.set('youth_leagues_all', 'Youth Leagues');
  878. values.set('world_youth_leagues_all', 'Youth World Leagues');
  879. values.set('federation_leagues', 'Federation Leagues');
  880. }
  881.  
  882.  
  883. if(urlParams.get('type')=="world"){
  884. values.set('leagues_all', 'Leagues');
  885. values.set('world_leagues', 'World Leagues');
  886. values.set('youth_leagues_all', 'Youth Leagues');
  887. values.set('world_youth_leagues_all', 'Youth World Leagues');
  888. values.set('federation_leagues', 'Federation Leagues');
  889. }
  890.  
  891.  
  892. if((urlParams.get('type').includes("u"))&&(!urlParams.get('type').includes("_"))){
  893. var actual_cat=urlParams.get('type').toUpperCase();
  894. GM_setValue("actual_league_cat",actual_cat)
  895. values.set('leagues_all', 'Leagues');
  896. values.set('world_leagues_all', 'World Leagues');
  897. values.set('youth_leagues', actual_cat+' Youth Leagues');
  898. values.set('world_youth_leagues_all', 'Youth World Leagues');
  899. values.set('federation_leagues', 'Federation Leagues');
  900. }
  901.  
  902.  
  903. if((urlParams.get('type').includes("u"))&&(urlParams.get('type').includes("_"))){
  904. actual_cat=urlParams.get('type').substring(0,3).toUpperCase();
  905. GM_setValue("actual_league_cat",actual_cat)
  906. values.set('leagues_all', 'Leagues');
  907. values.set('world_leagues_all', 'World Leagues');
  908. values.set('youth_leagues_all','Youth Leagues');
  909. values.set('world_youth_leagues',actual_cat+' Youth World Leagues');
  910. values.set('federation_leagues', 'Federation Leagues');
  911. }
  912.  
  913. values.set('cup', 'Cups');
  914. values.set('cup_u23', 'U23 Cups');
  915. values.set('cup_u21', 'U21 Cups');
  916. values.set('cup_u18', 'U18 Cups');
  917. values.set('special_cup', 'Special Cups');
  918.  
  919. var contenidoNuevo = '<div id=testClick><center>'
  920.  
  921.  
  922. getNativeTableStyles();
  923.  
  924. var idProgress="noProgress";
  925. if(urlParams.get('type')=="senior"){
  926. idProgress="divProgress"
  927. }
  928.  
  929.  
  930. var widthTable="1.5em"
  931. ///MENU TABLE
  932. contenidoNuevo+="<center><table id=showMenu border=0><thead style='background-color:"+GM_getValue("bg_native")+"; color:"+GM_getValue("color_native")+";'><tr>";
  933. contenidoNuevo+='<th align=center style="padding:4px;">Stats</th><th align=center style="padding:4px;">Graph</th>';
  934. contenidoNuevo+="<th align=center style='padding:4px;'>History</th>";
  935. contenidoNuevo+="<th align=center style='padding:4px;'>Top Players</th></tr></thead>";
  936. contenidoNuevo+= "<tr>";
  937. contenidoNuevo+= "<td style='padding:4px; max-width: "+widthTable+"; width:"+widthTable+";'><center><img id='detailDivision' style='cursor:pointer;' src=https://statsxente.com/MZ1/View/Images/detail.png width=25 height=25/></center></td>";
  938.  
  939. contenidoNuevo+= "<td style='padding:4px; max-width:"+widthTable+"; width:"+widthTable+";'><center><img id='graphDivision' style='cursor:pointer;' src=https://statsxente.com/MZ1/View/Images/report.png width=31 height=25/></center></td>";
  940. if(idProgress=="noProgress"){
  941. contenidoNuevo+= "<td style='padding:4px; max-width: "+widthTable+"; width: "+widthTable+";'><center><img id='"+idProgress+"' style='cursor:pointer;' src=https://statsxente.com/MZ1/View/Images/graph_disabled.png width=25 height=25/></center></td>";
  942. }else{
  943. contenidoNuevo+= "<td style='padding:4px; max-width: "+widthTable+"; width: "+widthTable+";'><center><img id='"+idProgress+"' style='cursor:pointer;' src=https://statsxente.com/MZ1/View/Images/graph.png width=25 height=25/></center></td>";
  944. }
  945. contenidoNuevo+= "<td style='padding:4px; max-width: "+widthTable+"; width: "+widthTable+";'><center><img id='topPlayersDivision' style='cursor:pointer;' src=https://statsxente.com/MZ1/View/Images/top-10.png width=25 height=25/></center></td>";
  946.  
  947. contenidoNuevo+= "</tr>";
  948.  
  949.  
  950.  
  951.  
  952.  
  953. var styleTable=" style='display:none;'";
  954. var styleIcon=""
  955. var styleSep="style='padding-top:5px;'";
  956.  
  957. if(GM_getValue("show_league_selects")==true){
  958. styleTable="";
  959. styleIcon=" active"
  960. styleSep=" style='display:none;'";
  961.  
  962. }
  963.  
  964.  
  965. contenidoNuevo+= "<tr><td></td><td colspan='2'>";
  966.  
  967. contenidoNuevo+='<center><div id="moreInfo" class="expandable-icon'+styleIcon+'" style="cursor:pointer; background-color:'+GM_getValue("bg_native")+';"><div id="line1" class="line"></div><div id="line2" class="line"></div></div></center>';
  968.  
  969. contenidoNuevo+= "</td><td></td></tr>";
  970.  
  971. contenidoNuevo+= "<tr><td colspan='5' id='separatorTd'"+styleSep+"></td></tr>";
  972.  
  973.  
  974.  
  975. contenidoNuevo+= "</table></center>";
  976.  
  977.  
  978.  
  979. contenidoNuevo+='<table id=show3 border="0"'+styleTable+'><tr><td><label>';
  980.  
  981. if((urlParams.get('type')=='senior')||(urlParams.get('type')=='world')){
  982. if("valor"==initialValues[urlParams.get('type')]){
  983. contenidoNuevo+='<input class="statsxente" type="checkbox" checked id="valor" value="Value">Value</label></td>';
  984. }else{
  985. contenidoNuevo+='<input class="statsxente" type="checkbox" id="valor" value="Value">Value</label></td>';
  986. }
  987. }else{
  988. contenidoNuevo+='<input class="statsxente" type="checkbox" id="valor" value="Value">Value</label></td>';
  989. }
  990.  
  991. values.forEach(function(valor, clave) {
  992.  
  993. if(clave=="valorUPSenior"){
  994. contenidoNuevo+="</tr><tr>";
  995. }
  996.  
  997. if(clave=="valor11"){
  998. contenidoNuevo+="</tr><tr>";
  999. }
  1000. if(clave=="elo"){
  1001. contenidoNuevo+="</tr><tr>";
  1002. }
  1003.  
  1004. if(clave=="leagues"){
  1005. contenidoNuevo+="</tr><tr>";
  1006. }
  1007.  
  1008. if(clave=="leagues_all"){
  1009. contenidoNuevo+="</tr><tr>";
  1010. }
  1011.  
  1012. if(clave=="cup"){
  1013. contenidoNuevo+="</tr><tr>";
  1014. }
  1015.  
  1016. if(clave==initialValues[urlParams.get('type')]){
  1017. contenidoNuevo+='<td><label><input class="statsxente" type="checkbox" checked value="'+valor+'" id="'+clave+'">'+valor+'</label></td>';
  1018. }else{
  1019. contenidoNuevo+='<td><label><input class="statsxente" type="checkbox" value="'+valor+'" id="'+clave+'">'+valor+'</label></td>';
  1020. }
  1021. });
  1022. contenidoNuevo+="</tr></table></center>"
  1023. contenidoNuevo+="</div></br>";
  1024.  
  1025.  
  1026. values.set('valor', 'Value');
  1027.  
  1028. elems = document.getElementsByClassName("nice_table");
  1029. tabla = elems[0]
  1030.  
  1031.  
  1032. tabla.insertAdjacentHTML('beforebegin', contenidoNuevo);
  1033.  
  1034. if(GM_getValue("show_league_selects")==true){
  1035.  
  1036. document.getElementById("line2").style.transform = 'rotateZ(0deg)';
  1037. document.getElementById("line1").style.transform = 'rotateZ(180deg)';
  1038. document.getElementById("moreInfo").style.transform = 'rotateZ(0deg)';
  1039. }
  1040.  
  1041.  
  1042. values.forEach(function(valor, clave) {
  1043.  
  1044. var elemento = document.getElementById(clave);
  1045. elemento.addEventListener('click', handleClick);
  1046.  
  1047. });
  1048. var nuevaCeldaEncabezado = document.createElement("th");
  1049. nuevaCeldaEncabezado.textContent = values.get(initialValues[urlParams.get('type')]);
  1050. nuevaCeldaEncabezado.style.textAlign = 'center';
  1051. nuevaCeldaEncabezado.style.maxWidth = '6.5em';
  1052. nuevaCeldaEncabezado.style.width = '6.5em';
  1053. nuevaCeldaEncabezado.style.whiteSpace = 'nowrap';
  1054. nuevaCeldaEncabezado.style.overflow = 'hidden';
  1055. nuevaCeldaEncabezado.style.textOverflow = 'ellipsis';
  1056.  
  1057. var ser = document.getElementsByClassName("seriesHeader")
  1058. document.getElementsByClassName("seriesHeader")[0].appendChild(nuevaCeldaEncabezado);
  1059.  
  1060. nuevaCeldaEncabezado = document.createElement("th");
  1061. nuevaCeldaEncabezado.textContent = "Stats Xente";
  1062. nuevaCeldaEncabezado.style.textAlign = 'center';
  1063.  
  1064.  
  1065.  
  1066. ser = document.getElementsByClassName("seriesHeader")
  1067. document.getElementsByClassName("seriesHeader")[0].appendChild(nuevaCeldaEncabezado);
  1068.  
  1069.  
  1070. if(tabla.getElementsByTagName("tbody")[0].innerHTML.includes("mazyar")){
  1071. searchClassName="responsive-hide"
  1072. }
  1073.  
  1074. var contIds=0
  1075. var filasDatos = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  1076. for (var i = 0; i < filasDatos.length; i++) {
  1077. if(checkClassNameExists(tabla.rows[i+1], searchClassName)){
  1078. var celda = tabla.rows[i+1].cells[1];
  1079. var equipo=celda.textContent.trim()
  1080. var iniIndex = celda.innerHTML.indexOf("tid=");
  1081. var lastIndex = celda.innerHTML.indexOf("\">", iniIndex+4);
  1082. var data=String(celda.innerHTML)
  1083. var id=data.substring(iniIndex+4,lastIndex)
  1084. linkIds+="&idEquipo"+contIds+"="+id
  1085. contIds++
  1086. celda.innerHTML+="<input type='hidden' id='team_"+id+"' value='"+equipo+"'/>"
  1087. }
  1088.  
  1089. }
  1090. var cat = cats[urlParams.get('type')]
  1091.  
  1092. var enlace = document.getElementById('league_tab_schedule');
  1093. var href = enlace.href;
  1094. var url = new URL(href);
  1095. var league_id = url.searchParams.get('sid');
  1096.  
  1097.  
  1098.  
  1099. ///DIV PROGRESS
  1100. setTimeout(function() {
  1101.  
  1102.  
  1103. if(idProgress!="noProgress"){
  1104. (function (currentId,currentLSport,lang) {
  1105. document.getElementById("divProgress").addEventListener('click', function () {
  1106.  
  1107. var link = "https://statsxente.com/MZ1/Graficos/graficoProgresoDivision.php?idLiga="+currentId+"&idioma="+lang+"&divisa="+GM_getValue("currency")+"&deporte="+currentLSport;
  1108. openWindow(link,0.95,1.25);
  1109. });
  1110. })(league_id,window.lsport,window.lang);
  1111.  
  1112. }
  1113.  
  1114.  
  1115. (function () {
  1116. document.getElementById("moreInfo").addEventListener('click', function () {
  1117. document.getElementById("moreInfo").classList.toggle('active');
  1118.  
  1119. if(document.getElementById("moreInfo").classList.contains("active")){
  1120. document.getElementById("line2").style.transform = 'rotateZ(0deg)';
  1121. document.getElementById("line1").style.transform = 'rotateZ(180deg)';
  1122. document.getElementById("moreInfo").style.transform = 'rotateZ(0deg)';
  1123. $('#separatorTd').fadeOut(1);
  1124. document.getElementById("separatorTd").style.paddingTop = "5px";
  1125. $('#show3').fadeIn('slow');
  1126. }else{
  1127. document.getElementById("line2").style.transform = 'rotateZ(45deg)';
  1128. document.getElementById("line1").style.transform = 'rotateZ(-45deg)';
  1129. document.getElementById("moreInfo").style.transform = 'rotateZ(45deg)';
  1130. $('#separatorTd').fadeIn(1);
  1131. $('#show3').fadeOut('slow');
  1132. }
  1133.  
  1134.  
  1135.  
  1136. });
  1137. })();
  1138.  
  1139.  
  1140.  
  1141.  
  1142.  
  1143.  
  1144. (function (currentId,currentLSport,lang,currentCat) {
  1145. document.getElementById("detailDivision").addEventListener('click', function () {
  1146. var url_="https://statsxente.com/MZ1/Functions/lecturaStatsDivisionesHistorico2.0.php"
  1147. if(window.sport=="hockey"){
  1148. url_="https://statsxente.com/MZ1/Functions/lecturaStatsDivisionesHockeyHistorico.php"
  1149. }
  1150.  
  1151. var link = url_+"?tamper=yes&modal=yes&idLiga="+currentId+"&idioma="+lang+"&categoria="+currentCat+"&season=75&season_actual=75";
  1152. openWindow(link,0.95,1.25);
  1153. });
  1154. })(league_id,window.lsport,window.lang,cat);
  1155.  
  1156.  
  1157. (function (currentId,sport,lang,currentCat) {
  1158. document.getElementById("topPlayersDivision").addEventListener('click', function () {
  1159. var url_="https://statsxente.com/MZ1/Functions/tamper_top_players_division.php"
  1160. if(window.sport=="hockey"){
  1161. url_="https://statsxente.com/MZ1/Functions/tamper_top_players_division_hockey.php"
  1162. }
  1163. var link = url_+"?league_id="+currentId+"&sport="+sport+"&category="+cat+"&idioma="+lang;
  1164. openWindow(link,0.95,1.25);
  1165. });
  1166. })(league_id,window.sport,window.lang,cat);
  1167.  
  1168.  
  1169.  
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175. (function (currentId,currentLSport,lang,currentCat) {
  1176. document.getElementById("graphDivision").addEventListener('click', function () {
  1177. var url_sport=""
  1178. if(window.sport=="hockey"){
  1179. url_sport="Hockey"
  1180. }
  1181. var link = "https://statsxente.com/MZ1/View/filtroGraficoLinealDivisiones"+url_sport+".php?tamper=yes&idLiga="+currentId+"&idioma="+lang+"&categoria="+currentCat+"&season=75&season_actual=75&modal=yes&valor=nota";
  1182. openWindow(link,0.95,1.25);
  1183. });
  1184. })(league_id,window.lsport,window.lang,cat);
  1185.  
  1186.  
  1187. }, 200);
  1188.  
  1189. GM_xmlhttpRequest({
  1190. method: "GET",
  1191. url: "https://statsxente.com/MZ1/Functions/tamper_teams.php?currency="+GM_getValue("currency")+"&sport="+window.sport+linkIds,
  1192. headers: {
  1193. "Content-Type": "application/json"
  1194. },
  1195. onload: function(response) {
  1196. var cat = window.cats[urlParams.get('type')]
  1197. var jsonResponse = JSON.parse(response.responseText);
  1198. teams_data=jsonResponse;
  1199. var filasDatos = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  1200. for (var i = 0; i < filasDatos.length; i++) {
  1201. if(checkClassNameExists(filasDatos[i], searchClassName)){
  1202. var celda = filasDatos[i].cells[1];
  1203. var equipo=celda.textContent.trim()
  1204. var iniIndex = celda.innerHTML.indexOf("tid=");
  1205. var lastIndex = celda.innerHTML.indexOf("\">", iniIndex+4);
  1206. var data=String(celda.innerHTML)
  1207. var id=data.substring(iniIndex+4,lastIndex)
  1208. var nuevaColumna = document.createElement("td");
  1209. var valor=0;
  1210.  
  1211. if (jsonResponse[id] && jsonResponse[id][initialValues[urlParams.get('type')]] !== undefined) {
  1212. valor = new Intl.NumberFormat(window.userLocal).format(Math.round(jsonResponse[id][initialValues[urlParams.get('type')]]))
  1213. }
  1214. nuevaColumna.innerHTML=valor
  1215. nuevaColumna.style.textAlign = 'center';
  1216. filasDatos[i].appendChild(nuevaColumna);
  1217.  
  1218. var eloType=1
  1219.  
  1220. if(window.sport=="soccer"){eloType=2}
  1221. if(cat.includes("SUB")){eloType=3}
  1222. var cats_elo={}
  1223. cats_elo["senior"] = "SENIOR";
  1224. cats_elo["seniorw"] = "SENIOR";
  1225. cats_elo["SUB23"] = "U23";
  1226. cats_elo["SUB21"] = "U21";
  1227. cats_elo["SUB18"] = "U18";
  1228. cats_elo["SUB23w"] = "U23";
  1229. cats_elo["SUB21w"] = "U21";
  1230. cats_elo["SUB18w"] = "U18";
  1231.  
  1232. var flagSenior=0,flagSub23=0,flagSub21=0,flagSub18=0;
  1233. if(jsonResponse[id]["elo"]>0){flagSenior=1}
  1234. if(jsonResponse[id]["elo23"]>0){flagSub23=1}
  1235. if(jsonResponse[id]["elo21"]>0){flagSub21=1}
  1236. if(jsonResponse[id]["elo18"]>0){flagSub18=1}
  1237.  
  1238. var buttonDisplay="display:block;";
  1239. nuevaColumna = document.createElement("td");
  1240. var iner = "<center><img src='https://statsxente.com/MZ1/View/Images/detail.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but"+id+"' style='cursor:pointer;'/>";
  1241. if(GM_getValue("league_graph_button")=="checked"){
  1242. buttonDisplay=""
  1243. }else{
  1244. buttonDisplay="display:none;";
  1245. }
  1246. iner += "<img src='https://statsxente.com/MZ1/View/Images/graph.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but1"+id+"' style='cursor:pointer; "+buttonDisplay+"'/>";
  1247.  
  1248. if(GM_getValue("league_report_button")=="checked"){
  1249. buttonDisplay=""
  1250. }else{
  1251. buttonDisplay="display:none;";
  1252. }
  1253. iner += "<img src='https://statsxente.com/MZ1/View/Images/report.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but2"+id+"' style='cursor:pointer; "+buttonDisplay+"'/>";
  1254.  
  1255. if(GM_getValue("league_calendar_button")=="checked"){
  1256. buttonDisplay=""
  1257. }else{
  1258. buttonDisplay="display:none;";
  1259. }
  1260. iner += " <img src='https://statsxente.com/MZ1/View/Images/calendar.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but3"+id+"' style='cursor:pointer; "+buttonDisplay+"'/>";
  1261. iner +="</center>";
  1262. cat = cats[urlParams.get('type')]
  1263. nuevaColumna.innerHTML=iner
  1264. filasDatos[i].appendChild(nuevaColumna);
  1265. nuevaColumna = document.createElement("td");
  1266. (function (currentId,currentLSport,lang) {
  1267. document.getElementById("but1" + currentId).addEventListener('click', function () {
  1268. var link = "https://statsxente.com/MZ1/Graficos/graficoProgresoEquipo.php?idEquipo="+currentId+"&idioma="+lang+"&divisa="+GM_getValue("currency")+"&deporte="+currentLSport;
  1269. openWindow(link,0.95,1.25);
  1270. });
  1271. })(id,window.lsport,window.lang);
  1272.  
  1273.  
  1274. (function (currentId,currentLSport,lang,currentCat) {
  1275. document.getElementById("but2" + currentId).addEventListener('click', function () {
  1276. var src="filtroGraficoEquiposHistoricoHockey";
  1277. if(currentLSport=="F"){
  1278. src="filtroGraficoLinealEquiposHistorico";
  1279. }
  1280.  
  1281. var link="https://statsxente.com/MZ1/View/"+src+".php?tamper=yes&categoria="+cat+"&idEquipo="+currentId+"&idioma="+lang+"&modal=yes&valor=nota&season=75&season_actual=75&equipo=-"
  1282. openWindow(link,0.95,1.25);
  1283. });
  1284. })(id,window.lsport,window.lang,cat);
  1285.  
  1286.  
  1287. (function (currentId, currentEquipo,currentCat,currentSport,lang) {
  1288. document.getElementById("but" + currentId).addEventListener('click', function () {
  1289.  
  1290. var link = "https://statsxente.com/MZ1/View/filtroStatsEquiposHistorico.php?tamper=no&idEquipo=" + currentId + "&idioma="+lang+"&modal=yes&deporte="+currentSport+"&season=77&season_actual=77&categoria="+currentCat+"&equipo=" + currentEquipo + "&cerrar=no";
  1291. openWindow(link,0.95,1.25);
  1292. });
  1293. })(id, equipo,cat,window.sport,window.lang);
  1294.  
  1295.  
  1296.  
  1297.  
  1298. (function (currentId, type,currentCat,currentSport,lang,flagS,flagS23,flagS21,flagS18) {
  1299. document.getElementById("but3" + currentId).addEventListener('click', function () {
  1300. var link = "https://statsxente.com/MZ1/Graficos/graficoRachaEquipoELO.php?tamper=yes&team_id="+currentId+"&idioma="+lang+"&deporte="+currentSport+"&type="+type+"&cat="+currentCat+"&flagSenior="+
  1301. flagS+"&flagSub23="+flagS23+"&flagSub21="+flagS21+"&flagSub18="+flagS18;
  1302. openWindow(link,0.95,1.25);
  1303. });
  1304. })(id, eloType,cats_elo[cat],window.sport,window.lang,flagSenior,flagSub23,flagSub21,flagSub18);
  1305.  
  1306. }
  1307.  
  1308. }
  1309. var thead=document.getElementsByClassName("seriesHeader")[0]
  1310. var ths = thead.querySelectorAll("th");
  1311. ths.forEach(function(th, index) {
  1312. th.addEventListener("click", function() {
  1313. ordenarTabla(index,true,"nice_table");
  1314. });
  1315. });
  1316. }
  1317. });
  1318. }, 2500);
  1319.  
  1320. }
  1321.  
  1322.  
  1323. function openWindow(link,porAncho,porAlto){
  1324. var ventanaAncho=(window.innerWidth)*porAncho
  1325. var ventanaAlto= (window.innerHeight)*porAlto
  1326. var ventanaIzquierda = (window.innerWidth - ventanaAncho) / 2;
  1327. var ventanaArriba = (window.innerHeight - ventanaAlto) / 2;
  1328. var opcionesVentana = "width=" + ventanaAncho +
  1329. ",height=" + ventanaAlto +
  1330. ",left=" + ventanaIzquierda +
  1331. ",top=" + ventanaArriba;
  1332.  
  1333. if((GM_getValue("tabsConfig")==false)&&(GM_getValue("windowsConfig")==true)){
  1334. window.open(link, "_blank", opcionesVentana);
  1335. }
  1336. if((GM_getValue("tabsConfig")==true)&&(GM_getValue("windowsConfig")==false)){
  1337. window.open(link, "_blank");
  1338. }
  1339. }
  1340. function handleClick(event) {
  1341. var urlParams = new URLSearchParams(window.location.search);
  1342. var elems = document.getElementsByClassName("nice_table");
  1343. var tabla = elems[0]
  1344. var filas = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  1345. var thSegundo = tabla.querySelector("thead th:nth-child(2)");
  1346.  
  1347. if(urlParams.get('fsid')){
  1348. thSegundo.style.width = "180px";
  1349. }else{
  1350. thSegundo.style.width = "250px";
  1351. }
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358. for (var i = 0; i < filas.length; i++) {
  1359. if(checkClassNameExists(filas[i], searchClassName)){
  1360. var celda = filas[i].cells[1];
  1361. var equipo=celda.textContent.trim()
  1362. var iniIndex = celda.innerHTML.indexOf("tid=");
  1363. var lastIndex = celda.innerHTML.indexOf("\">", iniIndex+4);
  1364. var data=String(celda.innerHTML)
  1365. var id=data.substring(iniIndex+4,lastIndex)
  1366. var celdas = filas[i].getElementsByTagName("td");
  1367. var ultimaCelda = celdas[celdas.length - 2];
  1368. var selects = document.getElementsByTagName('select');
  1369. var index_select=1;
  1370. if(selects[index_select]===undefined){
  1371. index_select=0;
  1372. }
  1373.  
  1374.  
  1375. var selectedIndex = selects[index_select].selectedIndex;
  1376. var selectedOption = selects[index_select].options[selectedIndex];
  1377. var selectedText = selectedOption.text;
  1378.  
  1379.  
  1380.  
  1381. var key_actual_league="Top";
  1382. if(selectedText.includes(".")){
  1383. key_actual_league=selectedText.substring(0,4)
  1384. }
  1385.  
  1386. var valor=0;
  1387.  
  1388. if(teams_data[id]===undefined){
  1389. valor=0
  1390. }else{
  1391.  
  1392. var table_key="";
  1393. var agg_value=0;
  1394.  
  1395. switch (event.target.id) {
  1396. case 'edad':
  1397. valor=new Intl.NumberFormat(window.userLocal,{minimumFractionDigits: 2, maximumFractionDigits: 2 }).format(teams_data[id][event.target.id])
  1398. break;
  1399. case "leagues":
  1400. table_key="league"
  1401. agg_value=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1402. valor="("+teams_data[id]['league_'+key_actual_league]+'/'+agg_value+")"
  1403. break;
  1404.  
  1405. case "world_leagues":
  1406. table_key="world_league"
  1407. agg_value=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1408. valor="("+teams_data[id][table_key+'_'+key_actual_league]+'/'+agg_value+")"
  1409. break;
  1410.  
  1411. case "youth_leagues":
  1412. var cat=GM_getValue("actual_league_cat").toLowerCase()
  1413. table_key="league_"+cat
  1414. agg_value=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1415. valor="("+teams_data[id][table_key+'_'+key_actual_league]+'/'+agg_value+")"
  1416. break;
  1417.  
  1418. case "world_youth_leagues":
  1419. cat=GM_getValue("actual_league_cat").toLowerCase()
  1420. table_key="world_league_"+cat
  1421. agg_value=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1422. valor="("+teams_data[id][table_key+'_'+key_actual_league]+'/'+agg_value+")"
  1423. break;
  1424.  
  1425. case "leagues_all":
  1426. table_key="league"
  1427. valor=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1428. break;
  1429.  
  1430.  
  1431. case "world_leagues_all":
  1432. table_key="world_league"
  1433. valor=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1434. break;
  1435.  
  1436. case "youth_leagues_all":
  1437. table_key="league_u23"
  1438. valor+=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1439. table_key="league_u21"
  1440. valor+=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1441. table_key="league_u18"
  1442. valor+=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1443. break;
  1444.  
  1445. case "world_youth_leagues_all":
  1446. table_key="world_league_u23"
  1447. valor+=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1448. table_key="world_league_u21"
  1449. valor+=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1450. table_key="world_league_u18"
  1451. valor+=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1452. break;
  1453.  
  1454. case "federation_leagues":
  1455. table_key="federation_league"
  1456. agg_value=teams_data[id][table_key+'_Top']+teams_data[id][table_key+'_div1']+teams_data[id][table_key+'_div2']+teams_data[id][table_key+'_div3']+teams_data[id][table_key+'_div4']+teams_data[id][table_key+'_div5']
  1457. valor=agg_value
  1458. break;
  1459.  
  1460.  
  1461. default:
  1462. valor= new Intl.NumberFormat(window.userLocal).format(Math.round(teams_data[id][event.target.id]))
  1463. break;
  1464.  
  1465.  
  1466. }
  1467. }
  1468.  
  1469. ultimaCelda.innerHTML = valor;
  1470. }
  1471. }
  1472. var checkboxes = document.querySelectorAll('.statsxente');
  1473. var thead = tabla.querySelector('thead');
  1474. var tr = thead.querySelectorAll('tr');
  1475. var td = tr[0].querySelectorAll('th');
  1476. var ultimaCeldaEncabezado = td[td.length - 2];
  1477. td[td.length - 2].textContent = event.target.value;
  1478. checkboxes.forEach(function(checkbox) {
  1479. if (checkbox.id !== event.target.id) {
  1480. checkbox.checked = false;
  1481. }
  1482. });
  1483. }
  1484. function ordenarTabla(columna,byClassName,param){
  1485. if(byClassName){
  1486. var elems = document.getElementsByClassName(param);
  1487. var tabla = elems[0]
  1488. }else{
  1489. tabla=document.getElementById(param)
  1490. }
  1491. var filas, switching, i, x, y, debeCambiar, direccion, cambioRealizado;
  1492. switching = true;
  1493. direccion = document.getElementById("ord_table").value
  1494. while (switching) {
  1495. switching = false;
  1496. filas = tabla.rows;
  1497. for (i = 1; i < (filas.length - 1); i++) {
  1498. debeCambiar = false;
  1499. x = filas[i].getElementsByTagName("td")[columna];
  1500. y = filas[i + 1].getElementsByTagName("td")[columna];
  1501. var xValue = parseFloat(x.innerHTML.replace(/\./g, "").replace(/[^0-9,-]+/g, "").replace(",", "."));
  1502. var yValue = parseFloat(y.innerHTML.replace(/\./g, "").replace(/[^0-9,-]+/g, "").replace(",", "."));
  1503. if (direccion == "ascendente") {
  1504. if (isNaN(xValue)) {
  1505. if (x.innerHTML.toLowerCase() > y.innerHTML.toLowerCase()) {
  1506. debeCambiar = true;
  1507. break;
  1508. }
  1509. } else {
  1510. if (xValue > yValue) {
  1511. debeCambiar = true;
  1512. break;
  1513. }
  1514. }
  1515. } else if (direccion == "descendente") {
  1516. if (isNaN(xValue)) {
  1517. if (x.innerHTML.toLowerCase() < y.innerHTML.toLowerCase()) {
  1518. debeCambiar = true;
  1519. break;
  1520. }
  1521. } else {
  1522. if (xValue < yValue) {
  1523. debeCambiar = true;
  1524. break;
  1525. }
  1526. }
  1527. }
  1528. }
  1529.  
  1530.  
  1531.  
  1532. if (debeCambiar) {
  1533. filas[i].parentNode.insertBefore(filas[i + 1], filas[i]);
  1534. switching = true;
  1535. cambioRealizado = true;
  1536. } else {
  1537. if (!cambioRealizado && direccion == "descendente") {
  1538. //direccion = "ascendente";
  1539. switching = true;
  1540. }
  1541. }
  1542. }
  1543.  
  1544. if(document.getElementById("ord_table").value=="descendente"){
  1545. document.getElementById("ord_table").value="ascendente";
  1546. }else{
  1547. document.getElementById("ord_table").value="descendente";
  1548. }
  1549.  
  1550.  
  1551. filas = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  1552. for ( i = 0; i < filas.length; i++) {
  1553. var primerTd = filas[i].querySelector("td");
  1554. primerTd.innerHTML = (i+1);
  1555. }
  1556. }
  1557. function getCookie(nombre) {
  1558. var regex = new RegExp("(?:(?:^|.*;\\s*)" + nombre + "\\s*\\=\\s*([^;]*).*$)|^.*$");
  1559. var valorCookie = document.cookie.replace(regex, "$1");
  1560. return decodeURIComponent(valorCookie);
  1561. }
  1562. function generateValuesSelect(cat){
  1563.  
  1564.  
  1565. var defaults = new Map();
  1566. defaults.set('senior', 'valor');
  1567. defaults.set('u23', 'valor23');
  1568. defaults.set('u21', 'valor21');
  1569. defaults.set('u18', 'valor18');
  1570.  
  1571. var values = new Map();
  1572. values.set('valor', 'Value');
  1573. values.set('valor23', 'U23 Value');
  1574. values.set('valor21', 'U21 Value');
  1575. values.set('valor18', 'U18 Value');
  1576. values.set('salario', 'Salary');
  1577. values.set('valorUPSenior', 'LM Value');
  1578. values.set('valorUPSUB23', 'U23 LM Value');
  1579. values.set('valorUPSUB21', 'U21 LM Value');
  1580. values.set('valorUPSUB18', 'U18 LM Value');
  1581. values.set('edad', 'Age');
  1582. values.set('valor11', 'TOP 11/21');
  1583. values.set('valor11_23', 'U23 TOP 11/21');
  1584. values.set('valor11_21', 'U21 TOP 11/21');
  1585. values.set('valor11_18', 'U18 TOP 11/21');
  1586. values.set('noNac', 'Foreigners');
  1587. values.set('elo', 'ELO Score');
  1588. values.set('elo23', 'U23 ELO Score');
  1589. values.set('elo21', 'U21 ELO Score');
  1590. values.set('elo18', 'U18 ELO Score');
  1591. values.set('numJugadores', 'Number of players');
  1592.  
  1593.  
  1594. var default_value=GM_getValue("league_default_"+cat,defaults.get(cat))
  1595. GM_setValue("league_default_"+cat,default_value)
  1596.  
  1597. var select="<select id='league_default_select_"+cat+"' style='width:115px;'>";
  1598. values.forEach((valor, clave, mapa) => {
  1599. var checked=""
  1600. if(clave==default_value){
  1601. checked="selected"
  1602. }
  1603. select+="<option "+checked+" value='"+clave+"'>"+valor+"</option>";
  1604. });
  1605. select+="</select>"
  1606. return select;
  1607.  
  1608. }
  1609. function createLeagueConfigOptionsListeners(){
  1610.  
  1611. var defaults = new Map();
  1612. defaults.set('senior', 'valor');
  1613. defaults.set('u23', 'valor23');
  1614. defaults.set('u21', 'valor21');
  1615. defaults.set('u18', 'valor18');
  1616.  
  1617.  
  1618.  
  1619. defaults.forEach((valor, clave, mapa) => {
  1620.  
  1621.  
  1622.  
  1623. document.getElementById("league_default_select_"+clave).addEventListener('change', function () {
  1624.  
  1625. var selectElement = document.getElementById("league_default_select_"+clave);
  1626. GM_setValue("league_default_"+clave,selectElement.value)
  1627. });
  1628.  
  1629. });
  1630. document.getElementById("league_graph_check").addEventListener('click', function () {
  1631.  
  1632. if(document.getElementById("league_graph_check").checked){
  1633. GM_setValue("league_graph_button","checked")
  1634. }else{
  1635. GM_setValue("league_graph_button","")
  1636. }
  1637.  
  1638.  
  1639. });
  1640.  
  1641.  
  1642. document.getElementById("league_report_check").addEventListener('click', function () {
  1643.  
  1644. if(document.getElementById("league_report_check").checked){
  1645. GM_setValue("league_report_button","checked")
  1646. }else{
  1647. GM_setValue("league_report_button","")
  1648. }
  1649.  
  1650.  
  1651. });
  1652.  
  1653. document.getElementById("league_calendar_check").addEventListener('click', function () {
  1654.  
  1655. if(document.getElementById("league_calendar_check").checked){
  1656. GM_setValue("league_calendar_button","checked")
  1657. }else{
  1658. GM_setValue("league_calendar_button","")
  1659. }
  1660.  
  1661.  
  1662. });
  1663.  
  1664.  
  1665.  
  1666.  
  1667.  
  1668.  
  1669. }
  1670. function createModalMenu() {
  1671. //setTimeout(function () {
  1672. var newElement = document.createElement("div");
  1673. newElement.id = "legendDiv";
  1674. newElement.className = "stx_legend";
  1675. newElement.innerHTML = '<div style="writing-mode: tb-rl;-webkit-writing-mode: vertical-rl;"><center><img src="https://statsxente.com/MZ1/View/Images/etiqueta_bota.png" style="width:25px;height:25px;"/></center></div>';
  1676. var body = document.body;
  1677. body.appendChild(newElement);
  1678.  
  1679. var newModalElement = document.createElement('div');
  1680. newModalElement.innerHTML = '<center><div id="snackbar"></div></center><div id="myModal_cargando" class="modal_cargando"><div class="modal-content_cargando" id="modal_content_div_cargando"><div id="contenido_modal_cargando" style="background-color:#f2f2f200;"></div></div></div>'
  1681. body.insertBefore(newModalElement, body.firstChild);
  1682.  
  1683. if (GM_getValue("leagueFlag") === undefined) {
  1684. GM_setValue("leagueFlag", true)
  1685. }
  1686.  
  1687. if (GM_getValue("matchFlag") === undefined) {
  1688. GM_setValue("matchFlag", true)
  1689. }
  1690.  
  1691. if (GM_getValue("federationFlag") === undefined) {
  1692. GM_setValue("federationFlag", true)
  1693. }
  1694.  
  1695. if (GM_getValue("playersFlag") === undefined) {
  1696. GM_setValue("playersFlag", true)
  1697. }
  1698.  
  1699. if (GM_getValue("countryRankFlag") === undefined) {
  1700. GM_setValue("countryRankFlag", true)
  1701. }
  1702.  
  1703.  
  1704. if (GM_getValue("league_graph_button") === undefined) {
  1705. GM_setValue("league_graph_button","checked")
  1706. }
  1707.  
  1708. if (GM_getValue("league_report_button") === undefined) {
  1709. GM_setValue("league_report_button","checked")
  1710. }
  1711.  
  1712. if (GM_getValue("league_calendar_button") === undefined) {
  1713. GM_setValue("league_calendar_button","checked")
  1714. }
  1715.  
  1716. if (GM_getValue("windowsConfig") === undefined) {
  1717. GM_setValue("windowsConfig",true)
  1718. }
  1719.  
  1720. if (GM_getValue("tabsConfig") === undefined) {
  1721. GM_setValue("tabsConfig",false)
  1722. }
  1723.  
  1724. if (GM_getValue("show_league_selects") === undefined) {
  1725. GM_setValue("show_league_selects",true)
  1726. }
  1727.  
  1728. if (GM_getValue("league_image_size") === undefined) {
  1729. GM_setValue("league_image_size",20)
  1730. }
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736.  
  1737.  
  1738. var leagueFlag = "", matchFlag = "", federationFlag = "", playersFlag="",countryRankFlag=""
  1739.  
  1740. if (GM_getValue("federationFlag")) federationFlag = "checked"
  1741. if (GM_getValue("matchFlag")) matchFlag = "checked"
  1742. if (GM_getValue("leagueFlag")) leagueFlag = "checked"
  1743. if (GM_getValue("playersFlag")) playersFlag = "checked"
  1744. if (GM_getValue("countryRankFlag")) countryRankFlag = "checked"
  1745. var newContent='<center><img id="closeButton" src="https://statsxente.com/MZ1/View/Images/error.png" style="width:40px; height:40px; cursor:pointer;"/></br></br><div id=alert_tittle class="caja_mensaje_50">Config</div><div id="div1" class="modal_div_content_main"></br><table border=0><tbody><tr>';
  1746. newContent+= '<td><label class="containerPeqAmarillo">League<input type="checkbox" id="leagueSelect" ' + leagueFlag + '><span class="checkmarkPeqAmarillo"></span></td>'
  1747. newContent+= '<td><label class="containerPeqAmarillo">Federation<input type="checkbox" id="federationSelect" ' + federationFlag + '><span class="checkmarkPeqAmarillo"></span></td>'
  1748. newContent += '<td><label class="containerPeqAmarillo">Match<input type="checkbox" id="matchSelect" ' + matchFlag + '><span class="checkmarkPeqAmarillo"></span></td>'
  1749. newContent += '<td><label class="containerPeqAmarillo">Players<input type="checkbox" id="playersSelect" ' + playersFlag + '><span class="checkmarkPeqAmarillo"></span></td>'
  1750. newContent += '<td><label class="containerPeqAmarillo">Country Rank<input type="checkbox" id="countryRankSelect" ' + countryRankFlag + '><span class="checkmarkPeqAmarillo"></span></td>'
  1751. newContent+="</tr></tbody></table>"
  1752.  
  1753. newContent+="<hr>"
  1754. newContent+="<h3 style='text-align: left; padding-left:7px;'>Leagues Config</h3>"
  1755.  
  1756. newContent+="<table border='0'><tr>"
  1757. newContent+="<td>Default Senior Param: <td>"+generateValuesSelect('senior')+"</td>";
  1758. newContent+="<td>Default U23 Param: <td>"+generateValuesSelect('u23')+"</td>";
  1759. newContent+="<td>Default U21 Param: <td>"+generateValuesSelect('u21')+"</td>";
  1760. newContent+="<td>Default U18 Param: <td>"+generateValuesSelect('u18')+"</td>";
  1761.  
  1762. newContent+="</tr><tr>"
  1763.  
  1764.  
  1765. var checked_graph=GM_getValue("league_graph_button")
  1766. var checked_report=GM_getValue("league_report_button")
  1767. var checked_calendar=GM_getValue("league_calendar_button")
  1768.  
  1769. newContent+="<td colspan='8'><center><table><tr><td><label><input "+checked_graph+" type='checkbox' value='graph' class='textMiddle' id='league_graph_check'><img class='textMiddle' src='https://statsxente.com/MZ1/View/Images/graph.png' width='20px' height='20px'/> <span class='textMiddle'>Progress</span></label></td>"
  1770. newContent+="<td><center><label><input "+checked_report+" type='checkbox' value='graph' id='league_report_check' class='textMiddle'><img class='textMiddle' src='https://statsxente.com/MZ1/View/Images/report.png' width='20px' height='20px'/> <span class='textMiddle'>Graph</span></label></td>"
  1771.  
  1772. newContent+="<td><center><label><input "+checked_calendar+" type='checkbox' value='graph' id='league_calendar_check' class='textMiddle'><img class='textMiddle' src='https://statsxente.com/MZ1/View/Images/calendar.png' width='20px' height='20px'/> <span class='textMiddle'>ELO Matches</span></label></td></tr></table></td>"
  1773.  
  1774. newContent+='</tr><tr>';
  1775.  
  1776. newContent+='<td colspan="4"><center><label><span class="textMiddle">Icons Size</span> <input class="textMiddle" id="slider_input" class="range-slider_input" type="range" value="'+GM_getValue("league_image_size")+'" min="10" max="30">'
  1777. newContent+='<img class="textMiddle" id="testImage" src="https://statsxente.com/MZ1/View/Images/calendar.png" width="20px" height="20px"/>'
  1778. newContent+='<span class="textMiddle" style="padding-left:10px;" id="sizeImageLeagueSpan"> ('+GM_getValue("league_image_size")+')</span></label></center></td>'
  1779.  
  1780.  
  1781.  
  1782. var checkedLeagueSelects=""
  1783. if(GM_getValue("show_league_selects")){
  1784. checkedLeagueSelects="checked"
  1785. }
  1786.  
  1787. newContent+='<td colspan="4"><center><label class="textMiddle"><input '+checkedLeagueSelects+' type="checkbox" class="textMiddle" value="graph" id="show_league_checkbox">Show selects</label></center></td>'
  1788. newContent+="</tr></table>"
  1789. newContent+="<hr>"
  1790. newContent+="<h3 style='text-align: left; padding-left:7px;'>Tabs Config</h3>"
  1791. newContent+="<table style='display:flex;'><tr><td>"
  1792.  
  1793. var checkedTab=""
  1794. if(GM_getValue("tabsConfig")){
  1795. checkedTab="checked"
  1796. }
  1797.  
  1798. var checkedWin=""
  1799. if(GM_getValue("windowsConfig")){
  1800. checkedWin="checked"
  1801. }
  1802.  
  1803.  
  1804. newContent+="<label><input type='checkbox' id='windowsConfig' "+checkedWin+">Windows</label>";
  1805. newContent+="<label><input type='checkbox' id='tabsConfig' "+checkedTab+">Tabs</label>";
  1806. newContent+="</td></tr></table></br></br>"
  1807.  
  1808.  
  1809.  
  1810.  
  1811. newContent+='<div style=padding-bottom:10px;><button class="btn-save" id="saveButton"><i class="bi bi-house-door-fill" style="font-style:normal;">Save</i></button><button id="deleteButton"class="btn-delete" style="margin-left:10px;"><i class="bi bi-trash-fill" style="font-style:normal;">Reset</i></button></div>'
  1812. newContent+='</div></center></br></br>';
  1813. document.getElementById("contenido_modal_cargando").innerHTML=newContent
  1814. createLeagueConfigOptionsListeners();
  1815. document.getElementById("contenido_modal_cargando").style.width="75%";
  1816. document.getElementById("myModal_cargando").style.display = "none"
  1817. getNativeTableStyles()
  1818.  
  1819. document.getElementById("alert_tittle").style.backgroundColor=GM_getValue("bg_native")
  1820.  
  1821. document.getElementById("legendDiv").addEventListener('click', function () {
  1822.  
  1823. if (document.getElementById("myModal_cargando").style.display == "none") {
  1824. document.getElementById("myModal_cargando").style.display = "flex";
  1825. } else {
  1826. document.getElementById("myModal_cargando").style.display = "none";
  1827. }
  1828.  
  1829. });
  1830.  
  1831.  
  1832. document.getElementById("closeButton").addEventListener('click', function () {
  1833. document.getElementById("myModal_cargando").style.display = "none";
  1834. });
  1835.  
  1836.  
  1837. document.getElementById("saveButton").addEventListener('click', function () {
  1838. window.location.reload();
  1839. });
  1840.  
  1841.  
  1842.  
  1843.  
  1844. (function () {
  1845. document.getElementById("deleteButton").addEventListener('click', function () {
  1846. var keys = GM_listValues();
  1847. keys.forEach(function(key) {
  1848. GM_deleteValue(key);
  1849. });
  1850. window.location.reload();
  1851. });
  1852. })();
  1853.  
  1854.  
  1855.  
  1856.  
  1857.  
  1858. // }, 3000);
  1859.  
  1860. }
  1861. function getNativeTableStyles(){
  1862. var elemento = document.querySelector('.subheader.clearfix');
  1863. if (elemento) {
  1864. var estilo = getComputedStyle(elemento);
  1865. var bg=estilo.backgroundColor
  1866. var color="white"
  1867. if(estilo.backgroundColor=="rgba(0, 0, 0, 0)"){
  1868. bg="#a9b0b4"
  1869. }
  1870. GM_setValue("bg_native",bg)
  1871. GM_setValue("color_native",color)
  1872. }
  1873.  
  1874.  
  1875. }
  1876. function createModalEventListeners() {
  1877. setTimeout(function () {
  1878.  
  1879.  
  1880. document.getElementById('leagueSelect').addEventListener('click', function () {
  1881. GM_setValue("leagueFlag", !GM_getValue("leagueFlag"))
  1882. });
  1883.  
  1884.  
  1885. document.getElementById('federationSelect').addEventListener('click', function () {
  1886. GM_setValue("federationFlag", !GM_getValue("federationFlag"))
  1887. });
  1888.  
  1889. document.getElementById('matchSelect').addEventListener('click', function () {
  1890. GM_setValue("matchFlag", !GM_getValue("matchFlag"))
  1891. });
  1892.  
  1893. document.getElementById('playersSelect').addEventListener('click', function () {
  1894. GM_setValue("playersFlag", !GM_getValue("playersFlag"))
  1895. });
  1896.  
  1897. document.getElementById('countryRankSelect').addEventListener('click', function () {
  1898. GM_setValue("countryRankFlag", !GM_getValue("countryRankFlag"))
  1899. });
  1900.  
  1901.  
  1902.  
  1903.  
  1904. document.getElementById('show_league_checkbox').addEventListener('click', function () {
  1905. GM_setValue("show_league_selects", !GM_getValue("show_league_selects"))
  1906. });
  1907.  
  1908.  
  1909.  
  1910. document.getElementById('windowsConfig').addEventListener('click', function () {
  1911.  
  1912. if(document.getElementById('windowsConfig').checked){
  1913. document.getElementById('tabsConfig').checked=false;
  1914. }else{
  1915. document.getElementById('tabsConfig').checked=true;
  1916. }
  1917.  
  1918. GM_setValue("windowsConfig", !GM_getValue("windowsConfig"))
  1919. GM_setValue("tabsConfig", !GM_getValue("tabsConfig"))
  1920.  
  1921.  
  1922. });
  1923.  
  1924.  
  1925. document.getElementById('tabsConfig').addEventListener('click', function () {
  1926. if(document.getElementById('tabsConfig').checked){
  1927. document.getElementById('windowsConfig').checked=false;
  1928. }else{
  1929. document.getElementById('windowsConfig').checked=true;
  1930. }
  1931. GM_setValue("windowsConfig", !GM_getValue("windowsConfig"))
  1932. GM_setValue("tabsConfig", !GM_getValue("tabsConfig"))
  1933.  
  1934.  
  1935. });
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941. (function () {
  1942. document.getElementById("slider_input").addEventListener('input', function () {
  1943. document.getElementById("testImage").style.width=document.getElementById("slider_input").value+"px";
  1944. document.getElementById("testImage").style.height=document.getElementById("slider_input").value+"px";
  1945.  
  1946. document.getElementById("sizeImageLeagueSpan").innerText="("+document.getElementById("slider_input").value+")"
  1947.  
  1948.  
  1949. GM_setValue("league_image_size",document.getElementById("slider_input").value)
  1950.  
  1951.  
  1952. });
  1953. })();
  1954.  
  1955.  
  1956.  
  1957.  
  1958. }, 5000);
  1959.  
  1960. }
  1961.  
  1962. function setLangSportCats(){
  1963.  
  1964. var langs = new Map();
  1965. langs.set('es', 'SPANISH');
  1966. langs.set('ar', 'SPANISH')
  1967. langs.set('en', 'ENGLISH');
  1968. langs.set('br', 'PORTUGUES');
  1969. langs.set('pt', 'PORTUGUES');
  1970. langs.set('pl', 'POLISH');
  1971. langs.set('ro', 'ROMANIAN');
  1972. langs.set('tr', 'TURKISH');
  1973.  
  1974. var lanCookie = getCookie("MZLANG");
  1975. if(langs.has(lanCookie)){
  1976. window.lang=langs.get(lanCookie);
  1977. }else{
  1978. window.lang="ENGLISH";
  1979. }
  1980.  
  1981. var sportCookie = getCookie("MZSPORT");
  1982. var lsport="F"
  1983. var sport_id=1;
  1984. if(sportCookie=="hockey"){
  1985. lsport="H";
  1986. sport_id=2;
  1987. }
  1988.  
  1989. var cats = {};
  1990. cats["senior"] = "senior";
  1991. cats["world"] = "seniorw";
  1992. cats["u23"] = "SUB23";
  1993. cats["u21"] = "SUB21";
  1994. cats["u18"] = "SUB18";
  1995. cats["u23_world"] = "SUB23w";
  1996. cats["u21_world"] = "SUB21w";
  1997. cats["u18_world"] = "SUB18w";
  1998.  
  1999.  
  2000. window.cats=cats;
  2001. window.sport=sportCookie;
  2002. window.lsport=lsport;
  2003. window.sport_id=sport_id;
  2004. window.userLocal=navigator.languages && navigator.languages.length ? navigator.languages[0] : navigator.language;
  2005.  
  2006. }
  2007.  
  2008. function getUsernameData(){
  2009. if ((GM_getValue("currency") === undefined)||(GM_getValue("currency") =="")) {
  2010. var username=document.getElementById("header-username").innerText
  2011. GM_xmlhttpRequest({
  2012. method: "GET",
  2013. url: "http://www.managerzone.com/xml/manager_data.php?sport_id="+window.sport_id+"&username="+username,
  2014. headers: {
  2015. "Content-Type": "application/json"
  2016. },
  2017. onload: function(response) {
  2018.  
  2019. var parser = new DOMParser();
  2020. var xmlDoc = parser.parseFromString(response.responseText, "text/xml");
  2021. var userTeamsData = xmlDoc.getElementsByTagName("Team");
  2022. var index=1;
  2023. if(userTeamsData[0].getAttribute("sport")==window.sport){
  2024. index=0;
  2025. }
  2026. GM_xmlhttpRequest({
  2027. method: "GET",
  2028. url: "http://www.managerzone.com/xml/team_playerlist.php?sport_id="+window.sport_id+"&team_id="+userTeamsData[index].getAttribute("teamId"),
  2029. headers: {
  2030. "Content-Type": "application/json"
  2031. },
  2032. onload: function(response) {
  2033.  
  2034. var parser = new DOMParser();
  2035. var xmlDoc = parser.parseFromString(response.responseText, "text/xml");
  2036. var team_data = xmlDoc.getElementsByTagName("TeamPlayers");
  2037. GM_setValue("currency",team_data[0].getAttribute("teamCurrency"))
  2038. }
  2039. });
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045. }
  2046. });
  2047.  
  2048. }
  2049.  
  2050.  
  2051. }
  2052.  
  2053. function clashLeagues(){
  2054.  
  2055. var urlParams = new URLSearchParams(window.location.search);
  2056. setTimeout(function() {
  2057.  
  2058.  
  2059.  
  2060.  
  2061.  
  2062. document.getElementById("division-select").addEventListener('change', function () {
  2063. clashLeagues()
  2064. });
  2065.  
  2066.  
  2067. document.getElementById("season-select").addEventListener('change', function () {
  2068. clashLeagues()
  2069. });
  2070.  
  2071.  
  2072.  
  2073.  
  2074. var elems = document.getElementsByClassName("nice_table");
  2075. var tabla = elems[0]
  2076. var thSegundo = tabla.querySelector("thead th:nth-child(2)");
  2077. thSegundo.style.width = "250px";
  2078. var values = new Map();
  2079. values.set('valueLM', 'LM Value');
  2080. values.set('elo', 'ELO Score');
  2081. values.set('teams_count', 'Number of teams');
  2082.  
  2083. var contenidoNuevo = '<div id=testClick><center>'
  2084. getNativeTableStyles();
  2085. var idProgress="noProgress";
  2086. if(urlParams.get('type')=="senior"){
  2087. idProgress="divProgress"
  2088. }
  2089.  
  2090. ///MENU TABLE
  2091. contenidoNuevo+="<center><table id=showMenu border=1><thead style='background-color:"+GM_getValue("bg_native")+"; color:"+GM_getValue("color_native")+";'><tr>";
  2092. contenidoNuevo+='<th align=center style="padding:4px;" colspan="3">Values</th></tr></thead>';
  2093. contenidoNuevo+= "<tr>";
  2094. contenidoNuevo+= "</tr></table></center>";
  2095. contenidoNuevo+='<table id=show3 border="0"><tr><td><label>';
  2096. contenidoNuevo+='<input class="statsxente" type="checkbox" checked id="value" value="Value">Value</label></td>';
  2097.  
  2098.  
  2099. values.forEach(function(valor, clave) {
  2100. contenidoNuevo+='<td><label><input class="statsxente" type="checkbox" value="'+valor+'" id="'+clave+'">'+valor+'</label></td>';
  2101. });
  2102. contenidoNuevo+="</tr></table></center>"
  2103. contenidoNuevo+="</div></br>";
  2104.  
  2105. values.set('value', 'Value');
  2106. elems = document.getElementsByClassName("nice_table");
  2107. tabla = elems[0]
  2108. tabla.insertAdjacentHTML('beforebegin', contenidoNuevo);
  2109.  
  2110.  
  2111.  
  2112. values.forEach(function(valor, clave) {
  2113.  
  2114. var elemento = document.getElementById(clave);
  2115. elemento.addEventListener('click', handleClickClash);
  2116.  
  2117. });
  2118. var nuevaCeldaEncabezado = document.createElement("th");
  2119. nuevaCeldaEncabezado.textContent = "Value";
  2120. nuevaCeldaEncabezado.style.textAlign = 'center';
  2121. var ser = document.getElementsByClassName("seriesHeader")
  2122. document.getElementsByClassName("nice_table")[0].querySelector('thead').querySelector('tr').appendChild(nuevaCeldaEncabezado);
  2123.  
  2124. nuevaCeldaEncabezado = document.createElement("th");
  2125. nuevaCeldaEncabezado.textContent = "Stats Xente";
  2126. nuevaCeldaEncabezado.style.textAlign = 'center';
  2127. ser = document.getElementsByClassName("seriesHeader")
  2128. document.getElementsByClassName("nice_table")[0].querySelector('thead').querySelector('tr').appendChild(nuevaCeldaEncabezado);
  2129.  
  2130.  
  2131. var contIds=0
  2132. var linkIds=""
  2133. var filasDatos = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  2134. for (var i = 0; i < filasDatos.length; i++) {
  2135. var celda = tabla.rows[i+1].cells[1];
  2136. var imagen = celda.querySelector('img');
  2137. var url = new URL(imagen.src);
  2138. var id = url.searchParams.get('fid');
  2139. linkIds+="&id"+contIds+"="+id
  2140. contIds++
  2141.  
  2142. }
  2143.  
  2144.  
  2145. GM_xmlhttpRequest({
  2146. method: "GET",
  2147. url: "https://statsxente.com/MZ1/Functions/tamper_federations.php?currency="+GM_getValue("currency")+"&sport="+window.sport+linkIds,
  2148. headers: {
  2149. "Content-Type": "application/json"
  2150. },
  2151. onload: function(response) {
  2152. var jsonResponse = JSON.parse(response.responseText);
  2153. teams_data=jsonResponse;
  2154. var filasDatos = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  2155. for (var i = 0; i < filasDatos.length; i++) {
  2156. var celda = tabla.rows[i+1].cells[1];
  2157. var imagen = celda.querySelector('img');
  2158. var url = new URL(imagen.src);
  2159. var id = url.searchParams.get('fid');
  2160.  
  2161. var nuevaColumna = document.createElement("td");
  2162. var valor=0
  2163.  
  2164. valor = new Intl.NumberFormat(window.userLocal).format(Math.round(jsonResponse[id]["value"]))
  2165. nuevaColumna.innerHTML=valor
  2166. nuevaColumna.style.textAlign = 'center';
  2167. filasDatos[i].appendChild(nuevaColumna);
  2168.  
  2169.  
  2170. nuevaColumna = document.createElement("td");
  2171. var iner = "<center><img src='https://statsxente.com/MZ1/View/Images/detail.png' width='20px' height='20px' id='but"+id+"' style='cursor:pointer;'/>";
  2172. iner +="</center>";
  2173. var cat = cats[urlParams.get('type')]
  2174. nuevaColumna.innerHTML=iner
  2175. filasDatos[i].appendChild(nuevaColumna);
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181. (function (currentId,currentSport,lang) {
  2182. document.getElementById("but" + currentId).addEventListener('click', function () {
  2183.  
  2184. var link = "https://statsxente.com/MZ1/Functions/loadClashFederationDetail.php?tamper=yes&idioma="+
  2185. lang+"&modal_to_close=myModal&divisa="+GM_getValue("currency")+"&fid="+currentId+"&sport="+currentSport+"&modal=yes";
  2186. openWindow(link,0.95,1.25);
  2187. });
  2188. })(id,window.sport,window.lang);
  2189.  
  2190.  
  2191.  
  2192. }
  2193. }
  2194. });
  2195.  
  2196.  
  2197.  
  2198.  
  2199.  
  2200.  
  2201.  
  2202. var thead=document.getElementsByClassName("nice_table")[0].querySelector('thead')
  2203. var ths = thead.querySelectorAll("th");
  2204. ths.forEach(function(th, index) {
  2205. th.addEventListener("click", function() {
  2206. ordenarTabla(index,true,"nice_table");
  2207. });
  2208. });
  2209.  
  2210.  
  2211.  
  2212. }, 3000);
  2213.  
  2214. }
  2215.  
  2216. function handleClickClash(event) {
  2217. var elems = document.getElementsByClassName("nice_table");
  2218. var tabla = elems[0]
  2219. var filas = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  2220. var thSegundo = tabla.querySelector("thead th:nth-child(2)");
  2221. thSegundo.style.width = "250px";
  2222. for (var i = 0; i < filas.length; i++) {
  2223. var celda = tabla.rows[i+1].cells[1];
  2224. var imagen = celda.querySelector('img');
  2225. var url = new URL(imagen.src);
  2226. var id = url.searchParams.get('fid');
  2227.  
  2228.  
  2229. var celdas = filas[i].getElementsByTagName("td");
  2230. var ultimaCelda = celdas[celdas.length - 2];
  2231.  
  2232. var valor=0;
  2233.  
  2234. if(teams_data[id]===undefined){
  2235. valor=0
  2236. }else{
  2237. if(event.target.id=="edad"){
  2238. valor=new Intl.NumberFormat(window.userLocal,{minimumFractionDigits: 2, maximumFractionDigits: 2 }).format(teams_data[id][event.target.id])
  2239. }else{
  2240. valor= new Intl.NumberFormat(window.userLocal).format(Math.round(teams_data[id][event.target.id]))
  2241. }
  2242.  
  2243. }
  2244.  
  2245. ultimaCelda.innerHTML = valor;
  2246. }
  2247. var checkboxes = document.querySelectorAll('.statsxente');
  2248. var thead = tabla.querySelector('thead');
  2249. var tr = thead.querySelectorAll('tr');
  2250. var td = tr[0].querySelectorAll('th');
  2251. td[td.length - 2].textContent = event.target.value;
  2252. checkboxes.forEach(function(checkbox) {
  2253. if (checkbox.id !== event.target.id) {
  2254. checkbox.checked = false;
  2255. }
  2256. });
  2257. var columna=12
  2258. }
  2259.  
  2260.  
  2261.  
  2262. var players=[]
  2263. var lines=[]
  2264. var gk_line=""
  2265. var skills_names=[]
  2266. var su_line="unsetted";
  2267.  
  2268. async function playersPageStats(){
  2269. var element = document.getElementById('thePlayers_0');
  2270. var elementos_ = element.getElementsByClassName('p_sublinks');
  2271. var subheaders = element.getElementsByClassName('subheader clearfix');
  2272. var enlace = subheaders[0].querySelector('.subheader a');
  2273. var urlObj = new URL("https://www.managerzone.com/"+enlace.getAttribute('href'));
  2274. var params = new URLSearchParams(urlObj.search);
  2275. var tid = params.get('tid');
  2276. var playerName = enlace.querySelector('.player_name').textContent
  2277. var ids = element.getElementsByClassName('player_id_span');
  2278. var txt = '<span id=but'+ids[0].textContent+' class="player_icon_placeholder"><a href="#" onclick="return false"'
  2279. txt += 'title="Stats Xente" class="player_icon"><span class="player_icon_wrapper">'
  2280. txt += '<span class="player_icon_image" style="background-image: url(\'https://www.statsxente.com/MZ1/View/Images/etiqueta_bota_mini.png\'); width: 21px; height: 20px; background-size: auto;'
  2281. txt += 'z-index: 0;"></span><span class="player_icon_text"></span></span></a></span>'
  2282. elementos_[0].innerHTML += txt;
  2283. (function (currentId, currentTeamId,currentSport,lang,team_name,player_name) {
  2284. document.getElementById("but" + currentId).addEventListener('click', function () {
  2285. var link = "http://statsxente.com/MZ1/Functions/tamper_player_stats.php?sport="+currentSport
  2286. +"&player_id="+currentId+"&team_id="+currentTeamId+"&idioma="+lang+"&divisa="+GM_getValue("currency")+
  2287. "&team_name="+encodeURIComponent(team_name)+"&player_name="+encodeURIComponent(player_name)
  2288. openWindow(link,0.95,1.25);
  2289. });
  2290. })(ids[0].textContent,tid,window.sport,window.lang,"[undefined]",playerName);
  2291. }
  2292.  
  2293.  
  2294. async function playersPage(){
  2295. setTimeout(function () {
  2296. var elementos = document.getElementsByClassName('playerContainer');
  2297.  
  2298. var player_values={}
  2299. var tactics_list=[]
  2300.  
  2301. var urlParams = new URLSearchParams(window.location.search);
  2302. var flagStats=true
  2303. if(urlParams.has('tid')){
  2304. flagStats=false
  2305. }
  2306.  
  2307. if(flagStats) {
  2308. var habil_container = elementos[0].getElementsByClassName("player_skills")
  2309. var habil = habil_container[0].getElementsByClassName("clippable")
  2310.  
  2311. if (window.sport == "hockey") {
  2312. for (var q = 1; q < habil.length; q++) {
  2313. skills_names.push(habil[q].textContent)
  2314. }
  2315. } else {
  2316.  
  2317. for (q = 0; q < habil.length - 1; q++) {
  2318. skills_names.push(habil[q].textContent)
  2319. }
  2320.  
  2321. var player_images = document.getElementsByClassName("player-image soccer")
  2322.  
  2323. }
  2324. }
  2325.  
  2326. var ids_=[]
  2327.  
  2328. for (var i = 0; i < elementos.length; i++) {
  2329. var ids = elementos[i].getElementsByClassName('player_id_span');
  2330.  
  2331. var elementos_ = elementos[i].getElementsByClassName('p_sublinks');
  2332.  
  2333. var subheaders = elementos[i].getElementsByClassName('subheader clearfix');
  2334.  
  2335.  
  2336. var enlace = subheaders[0].querySelector('.subheader a');
  2337. var urlObj = new URL("https://www.managerzone.com/"+enlace.getAttribute('href'));
  2338. var params = new URLSearchParams(urlObj.search);
  2339. var tid = params.get('tid');
  2340. var playerName = enlace.querySelector('.player_name').textContent
  2341.  
  2342. ids_.push({"id":ids[0].textContent,"name":playerName});
  2343.  
  2344.  
  2345. var txt = '<span id=but'+ids[0].textContent+' class="player_icon_placeholder"><a href="#" onclick="return false"'
  2346. txt += 'title="Stats Xente" class="player_icon"><span class="player_icon_wrapper">'
  2347. txt += '<span class="player_icon_image" style="background-image: url(\'https://www.statsxente.com/MZ1/View/Images/etiqueta_bota_mini.png\'); width: 21px; height: 20px; background-size: auto;'
  2348. txt += 'z-index: 0;"></span><span class="player_icon_text"></span></span></a></span>'
  2349.  
  2350. elementos_[0].innerHTML += txt;
  2351.  
  2352. if(flagStats) {
  2353. var flag_gk = false;
  2354. var age_div = elementos[i].getElementsByClassName('dg_playerview_info');
  2355. var age_table = age_div[0].getElementsByTagName('table')[0];
  2356.  
  2357. var ini_age = age_table.getElementsByTagName('td')[0].textContent.indexOf(":")
  2358. var age = age_table.getElementsByTagName('td')[0].textContent.substring(ini_age + 2, ini_age + 4);
  2359.  
  2360.  
  2361. if ((window.sport == "soccer") && (player_images[i].innerHTML.includes("gk=1"))) {
  2362. flag_gk = true
  2363. }
  2364.  
  2365. var tactics = elementos[i].getElementsByClassName('player_tactic gradientSunriseIcon');
  2366.  
  2367. player_values = {
  2368. "id": ids[0].textContent,
  2369. "skills": [],
  2370. "lines": [],
  2371. "tactics-position": {},
  2372. "tactics": [],
  2373. "age": parseInt(age)
  2374. }
  2375.  
  2376. for (var j = 0; j < tactics.length; j++) {
  2377. var fin = 0;
  2378. var line = ""
  2379. var ini = tactics[j].textContent.indexOf('(');
  2380. var tactic = tactics[j].textContent.substring(0, ini - 1);
  2381.  
  2382. if (window.sport == "hockey") {
  2383.  
  2384. if (!tactics[j].textContent.includes(":")) {
  2385. ini = tactics[j].textContent.indexOf('(');
  2386. fin = tactics[j].textContent.indexOf(')');
  2387. line = tactics[j].textContent.substring(ini + 2, fin - 1);
  2388. gk_line = line;
  2389. } else {
  2390. ini = tactics[j].textContent.indexOf('(');
  2391. fin = tactics[j].textContent.indexOf(':');
  2392. line = tactics[j].textContent.substring(ini + 2, fin);
  2393. }
  2394.  
  2395. } else {
  2396. ini = tactics[j].textContent.indexOf('(');
  2397. fin = tactics[j].textContent.indexOf(')');
  2398. line = tactics[j].textContent.substring(ini + 2, fin - 1);
  2399. if (flag_gk) {
  2400. gk_line = line;
  2401. }
  2402. if (tactics[j].textContent.includes(",")) {
  2403. ini = tactics[j].textContent.indexOf('(');
  2404. fin = tactics[j].textContent.indexOf(',');
  2405. su_line = tactics[j].textContent.substring(ini + 2, fin);
  2406. }
  2407. }
  2408.  
  2409. if (!player_values['lines'].includes(line)) {
  2410. player_values['lines'].push(line);
  2411. }
  2412. if (!player_values['tactics'].includes(tactic)) {
  2413. player_values['tactics'].push(tactic);
  2414. }
  2415.  
  2416. player_values['tactics-position'][tactic] = line
  2417.  
  2418. if ((!lines.includes(line))) {
  2419. lines.push(line);
  2420. }
  2421.  
  2422. if (!tactics_list.includes(tactic)) {
  2423. tactics_list.push(tactic);
  2424. }
  2425.  
  2426.  
  2427. }
  2428. var skills = elementos[i].getElementsByClassName('skillval');
  2429. if (window.sport == "hockey") {
  2430.  
  2431. for (j = 1; j < skills.length; j++) {
  2432. var cleanedText = skills[j].textContent.replace(')', '');
  2433. cleanedText = cleanedText.replace('(', '');
  2434. let number = parseInt(cleanedText, 10);
  2435. player_values['skills'].push(number);
  2436. }
  2437.  
  2438. } else {
  2439. for (j = 0; j < skills.length - 1; j++) {
  2440. cleanedText = skills[j].textContent.replace(')', '');
  2441. cleanedText = cleanedText.replace('(', '');
  2442. let number = parseInt(cleanedText, 10);
  2443. player_values['skills'].push(number);
  2444. }
  2445. }
  2446. players.push(player_values)
  2447. }
  2448. }
  2449.  
  2450. if(flagStats) {
  2451. const container = document.getElementById("squad_tabs")
  2452. var contenidoNuevo = "<div id='containerTactics' style='background-color: #e3e3e3;'></br><center>"
  2453. contenidoNuevo += "<div id=selectDiv>Choose Tactic: <select id=tactics_select>"
  2454. contenidoNuevo += "<option value='All Team'>All Team</option>"
  2455. for (var x = 0; x < tactics_list.length; x++) {
  2456. var selected = ""
  2457. if (x == 0) {
  2458. selected = "selected=''";
  2459. }
  2460. contenidoNuevo += "<option " + selected + " value='" + tactics_list[x] + "'>" + tactics_list[x] + "</option>"
  2461. }
  2462. contenidoNuevo += "</select></div></br><div id=divMenu></div></center></div>"
  2463. container.innerHTML = contenidoNuevo + container.innerHTML;
  2464. skillDistrib(tactics_list[0]);
  2465. document.getElementById("tactics_select").addEventListener('change', function () {
  2466. var select = document.getElementById('tactics_select');
  2467. var valorSeleccionado = select.value;
  2468. document.getElementById("divMenu").innerHTML = ""
  2469. skillDistrib(valorSeleccionado)
  2470. });
  2471. }
  2472.  
  2473.  
  2474.  
  2475.  
  2476. for (i = 0; i < ids_.length; i++) {
  2477. (function (currentId, currentTeamId,currentSport,lang,team_name,player_name) {
  2478. document.getElementById("but" + currentId).addEventListener('click', function () {
  2479. var link = "http://statsxente.com/MZ1/Functions/tamper_player_stats.php?sport="+currentSport
  2480. +"&player_id="+currentId+"&team_id="+currentTeamId+"&idioma="+lang+"&divisa="+GM_getValue("currency")+
  2481. "&team_name="+encodeURIComponent(team_name)+"&player_name="+encodeURIComponent(player_name)
  2482. openWindow(link,0.95,1.25);
  2483. });
  2484. })(ids_[i]['id'],tid,window.sport,window.lang,"[undefined]",ids_[i]['name'],);
  2485. }
  2486.  
  2487.  
  2488.  
  2489. }, 1000);
  2490. }
  2491.  
  2492.  
  2493. function skillDistrib(tactic){
  2494. var t=tactic
  2495. if(window.sport=="hockey"){
  2496. var l=[0,0,0,0,0,0,0,0,0,0,0]
  2497. }else{
  2498. l=[0,0,0,0,0,0,0,0,0,0,0,0,0]
  2499. }
  2500.  
  2501. var li_t={}
  2502. for (var i = 0; i < lines.length; i++) {
  2503. li_t[lines[i]]=[...l];
  2504. }
  2505.  
  2506. var no_gk_line="Tactic -("+gk_line+")"
  2507. li_t["Team"]=[...l];
  2508. li_t["U23"]=[...l];
  2509. li_t["U21"]=[...l];
  2510. li_t["U18"]=[...l];
  2511. li_t["Tactic"]=[...l];
  2512. li_t[no_gk_line]=[...l];
  2513.  
  2514.  
  2515.  
  2516. for (i = 0; i < players.length; i++) {
  2517. if(players[i]['tactics'].includes(t)){
  2518. for(var j=0;j<players[i]['skills'].length;j++){
  2519. li_t[players[i]['tactics-position'][t]][j]+=players[i]['skills'][j]
  2520. li_t['Tactic'][j]+=players[i]['skills'][j]
  2521. if(players[i]['tactics-position'][t]!="Po"){
  2522. li_t[no_gk_line][j]+=players[i]['skills'][j]
  2523. }
  2524. }
  2525. li_t[players[i]['tactics-position'][t]][j]+=1
  2526. li_t['Tactic'][j]+=1
  2527. if(players[i]['tactics-position'][t]!="Po"){
  2528. li_t[no_gk_line][j]+=1
  2529. }
  2530. }else{
  2531.  
  2532. for(j=0;j<players[i]['skills'].length;j++){
  2533. if(players[i]['age']<=23){
  2534. li_t['U23'][j]+=players[i]['skills'][j]
  2535. }
  2536. if(players[i]['age']<=23){
  2537. li_t['U21'][j]+=players[i]['skills'][j]
  2538. }
  2539. if(players[i]['age']<=23){
  2540. li_t['U18'][j]+=players[i]['skills'][j]
  2541. }
  2542. li_t['Team'][j]+=players[i]['skills'][j]
  2543. }
  2544.  
  2545. if(players[i]['age']<=23){
  2546. li_t['U23'][li_t["U23"].length-1]+=1
  2547. }
  2548.  
  2549. if(players[i]['age']<=21){
  2550. li_t['U21'][li_t["U21"].length-1]+=1
  2551. }
  2552. if(players[i]['age']<=18){
  2553. li_t['U18'][li_t["U18"].length-1]+=1
  2554. }
  2555. li_t['Team'][li_t["Team"].length-1]+=1
  2556. }
  2557. }
  2558.  
  2559.  
  2560.  
  2561. const container=document.getElementById("divMenu")
  2562. var contenidoNuevo="<center><table id=showMenu border=1 style='width:95%;font-size:13px;'><thead style='background-color:"+GM_getValue("bg_native")+"; color:"+GM_getValue("color_native")+";'><tr>";
  2563. contenidoNuevo+='<th align=center style="padding:4px;">Line</th>'
  2564. for(var q=0;q<skills_names.length;q++){
  2565. contenidoNuevo+='<th align=center style="padding:4px;">'+skills_names[q]+'</th>'
  2566. }
  2567. contenidoNuevo+='</tr></thead>';
  2568. var l_aux=lines
  2569. l_aux = l_aux.filter(item => item !== gk_line);
  2570. l_aux.sort((a, b) => {
  2571. let numA = parseInt(a.substring(1), 10);
  2572. let numB = parseInt(b.substring(1), 10);
  2573. return numA - numB;
  2574. });
  2575.  
  2576. l_aux.unshift(gk_line);
  2577. l_aux.push("Tactic");
  2578. l_aux.push(no_gk_line);
  2579.  
  2580. if(window.sport=="hockey"){
  2581. if (li_t["L4"][10]==0) {
  2582. let index = l_aux.indexOf('L4');
  2583. if (index !== -1) {
  2584. l_aux.splice(index, 1);
  2585. }
  2586. }
  2587. }
  2588.  
  2589. if(t=="All Team"){
  2590. l_aux=["Team","U23","U21","U18"]
  2591. }
  2592.  
  2593. l_aux = l_aux.filter(item => !item.includes(su_line));
  2594.  
  2595. for (var w=0;w<l_aux.length;w++) {
  2596. var key=l_aux[w]
  2597. if (li_t.hasOwnProperty(key)) {
  2598. contenidoNuevo+= "<tr>";
  2599. contenidoNuevo+= "<td align=center style='padding:2px;'><strong>"+key+"</strong></td>";
  2600. for(var x=0;x<li_t[key].length-1;x++){
  2601. contenidoNuevo+= "<td align=center style='padding:2px;'>"+ Math.round(li_t[key][x]/li_t[key][li_t[key].length-1] * 100) / 100+"</td>";
  2602. }
  2603. contenidoNuevo+= "</tr>";
  2604.  
  2605. }
  2606. }
  2607. container.innerHTML+=contenidoNuevo;
  2608. }
  2609.  
  2610.  
  2611. function countryRank(){
  2612. var table_values=["players","age","value","top11","salary","elo","elo21","lm","lmu21"]
  2613. var newContent = "<center><div>";
  2614. newContent+='<label><input class="statsxente" type="checkbox" checked id="value" value="Value">Value</label>';
  2615. if(window.sport=="soccer"){
  2616. newContent+='<label><input class="statsxente" type="checkbox" id="top11" value="TOP 11">TOP 11</label>';
  2617. }else{
  2618. newContent+='<label><input class="statsxente" type="checkbox" id="top11" value="TOP 21">TOP 21</label>';
  2619. }
  2620.  
  2621. newContent+='<label><input class="statsxente" type="checkbox" id="players" value="Players">Players</label>';
  2622. newContent+='<label><input class="statsxente" type="checkbox" id="salary" value="Salary">Salary</label>';
  2623. newContent+='<label><input class="statsxente" type="checkbox" id="age" value="Age">Age</label>';
  2624. newContent+='<label><input class="statsxente" type="checkbox" checked id="elo" value="Elo">ELO</label>';
  2625. newContent+='<label><input class="statsxente" type="checkbox" checked id="elo21" value="U21 ELO">U21 ELO</label>';
  2626. newContent+='<label><input class="statsxente" type="checkbox" checked id="lm" value="LM">LM</label>';
  2627. newContent+='<label><input class="statsxente" type="checkbox" checked id="lmu21" value="U21 LM">U21 LM</label>';
  2628.  
  2629. var contenedor = document.getElementById('countryRankTable');
  2630. contenedor.insertAdjacentHTML('beforebegin',newContent);
  2631.  
  2632. GM_xmlhttpRequest({
  2633. method: "GET",
  2634. url: "https://statsxente.com/MZ1/Functions/tamper_national_teams.php?currency="+GM_getValue("currency")+"&sport="+window.sport,
  2635. headers: {
  2636. "Content-Type": "application/json"
  2637. },
  2638. onload: function(response) {
  2639. var jsonResponse = JSON.parse(response.responseText);
  2640. var data=jsonResponse;
  2641.  
  2642. var type=1;
  2643. if(window.sport=="soccer"){
  2644. type=2
  2645. }
  2646. var table = document.getElementById('countryRankTable');
  2647. for (var i = 0; i < table.rows.length; i++) {
  2648. var row = table.rows[i];
  2649. var insertIndex = row.cells.length - 1;
  2650. var raw_str=row.cells[3].innerHTML
  2651. row.deleteCell(3);
  2652. var cell_name = row.cells[2]
  2653. if(i>0){
  2654. cell_name.innerHTML=raw_str+" "+cell_name.innerHTML
  2655. }
  2656. var index=0;
  2657. var cell0 = row.insertCell(insertIndex+index);
  2658. index++;
  2659. var cell1 = row.insertCell(insertIndex+index);
  2660. index++;
  2661. var cell2 = row.insertCell(insertIndex+index);
  2662. index++;
  2663. var cell3 = row.insertCell(insertIndex+index);
  2664. index++;
  2665. var cell4 = row.insertCell(insertIndex+index);
  2666. index++;
  2667. var cell5 = row.insertCell(insertIndex+index);
  2668. index++;
  2669. var cell6 = row.insertCell(insertIndex+index);
  2670. index++;
  2671. var cell7 = row.insertCell(insertIndex+index);
  2672. index++;
  2673. var cell8 = row.insertCell(insertIndex+index);
  2674. index++;
  2675. var cell9 = row.insertCell(insertIndex+index);
  2676.  
  2677.  
  2678.  
  2679. if (i === 0) {
  2680. cell0.outerHTML = "<th id='players_th' style='display:none;' class='header'><a href='#'>Players</a></th>";
  2681. cell1.outerHTML = "<th id='age_th' class='header' style='display:none;'><a href='#'>Age</a></th>";
  2682. cell2.outerHTML = "<th id='value_th' class='header' style='display:table-cell;'><a href='#'>Value</a></th>";
  2683. cell3.outerHTML = "<th id='top11_th' class='header' style='display:none;'><a href='#'>Top11</a></th>";
  2684. cell4.outerHTML = "<th id='salary_th' class='header' style='display:none;'><a href='#'>Salary</a></th>";
  2685. cell5.outerHTML = "<th id='elo_th' class='header' style='display:table-cell;'><a href='#'>ELO</a></th>";
  2686. cell6.outerHTML = "<th id='elo21_th' class='header' style='display:table-cell;'><a href='#'>U21 ELO</a></th>";
  2687. cell7.outerHTML = "<th id='lm_th' class='header' style='display:table-cell;'><a href='#'>LM</a></th>";
  2688. cell8.outerHTML = "<th id='lmu21_th' class='header' style='display:table-cell;'><a href='#'>U21 LM</a></th>";
  2689. cell9.outerHTML = "<th id='image' class='header' style='display:table-cell;'><a href='#'></a></th>";
  2690. } else {
  2691. var ini=raw_str.indexOf("s_");
  2692. var fin=raw_str.indexOf(".",ini+1);
  2693. var c_code=raw_str.substring(ini+2,fin)
  2694. cell0.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["numJugadores"]))
  2695. cell0.className="players"
  2696. cell0.style.display="none"
  2697.  
  2698. cell1.innerHTML = new Intl.NumberFormat(window.userLocal,{minimumFractionDigits: 2, maximumFractionDigits: 2 }).format(data[c_code]["edad"])
  2699. cell1.className="age"
  2700. cell1.style.display="none"
  2701.  
  2702. cell2.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["valor"]))
  2703. cell2.className="value"
  2704. cell2.style.display="table-cell"
  2705.  
  2706. cell3.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["valor11"]))
  2707. cell3.className="top11"
  2708. cell3.style.display="none"
  2709.  
  2710. cell4.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["salario"]))
  2711. cell4.className="salary"
  2712. cell4.style.display="none"
  2713.  
  2714. cell5.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["elo"]))
  2715. cell5.className="elo"
  2716. cell5.style.display="table-cell"
  2717.  
  2718. cell6.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["elo21"]))
  2719. cell6.className="elo21"
  2720. cell6.style.display="table-cell"
  2721.  
  2722. cell7.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["valorLM"]))
  2723. cell7.className="lm"
  2724. cell7.style.display="table-cell"
  2725.  
  2726. cell8.innerHTML = new Intl.NumberFormat(window.userLocal).format(Math.round(data[c_code]["valorLM21"]))
  2727. cell8.className="lmu21"
  2728. cell8.style.display="table-cell"
  2729.  
  2730. cell9.innerHTML = '<img style="cursor:pointer;" src="https://statsxente.com/MZ1/View/Images/calendar.png" width="20" height="20">'
  2731. var actual_id="image"+i
  2732. cell9.id=actual_id
  2733. cell9.style.display="table-cell";
  2734.  
  2735.  
  2736. (function(id, code,type_) {
  2737. document.getElementById(id).addEventListener('click', function() {
  2738. var link = "https://www.statsxente.com/MZ1/Graficos/graficoRachaEquipoELONT.php?tamper=yes&team_id=" + data[code]["idSenior"] +
  2739. "&team_id_u21=" + data[code]["idSub21"] + "&idioma=" + window.lang + "&type="+type_+"&cat=SENIOR&sport=" + window.sport;
  2740. openWindow(link, 0.95, 1.25);
  2741. });
  2742. })(actual_id, c_code,type);
  2743.  
  2744.  
  2745.  
  2746.  
  2747.  
  2748.  
  2749.  
  2750.  
  2751. }
  2752.  
  2753.  
  2754. }
  2755.  
  2756. setTimeout(function() {
  2757. for(var f=0;f<table_values.length;f++){
  2758.  
  2759. (function(actual_value,f) {
  2760.  
  2761. document.getElementById(actual_value+"_th").addEventListener('click', function () {
  2762. if(document.getElementById(actual_value+"_th").className=="header"){
  2763. document.getElementById(actual_value+"_th").className="header headerSortDown";
  2764. }else{
  2765.  
  2766. if(document.getElementById(actual_value+"_th").className=="header headerSortDown"){
  2767. document.getElementById(actual_value+"_th").className="header headerSortUp";
  2768. }else{
  2769. document.getElementById(actual_value+"_th").className="header headerSortDown";
  2770. }
  2771.  
  2772. }
  2773. var index_=3+f
  2774. ordenarTabla(index_,false,"countryRankTable")
  2775. });
  2776. document.getElementById(actual_value).addEventListener('click', function () {
  2777. var display="table-cell"
  2778. if( document.getElementById(actual_value+"_th").style.display=="table-cell"){
  2779. display="none"
  2780. }
  2781. var elementos = document.getElementsByClassName(actual_value)
  2782. Array.prototype.forEach.call(elementos, function(elemento) {
  2783. var aux_display="table-cell"
  2784. if( document.getElementById(actual_value+"_th").style.display=="table-cell"){
  2785. aux_display="none"
  2786. }
  2787. elemento.style.display = aux_display;
  2788. });
  2789. document.getElementById(actual_value+"_th").style.display=display
  2790. });
  2791. })(table_values[f],f);
  2792. }
  2793. }, 1000);
  2794. }
  2795. });
  2796. }
  2797.  
  2798.  
  2799.  
  2800. function nextMatchesClubhouse(){
  2801. var h1Elements = document.querySelectorAll('h1.box_dark');
  2802. var team_name=h1Elements[0].innerText
  2803. var team_id=document.getElementById("tid1").value;
  2804.  
  2805. GM_xmlhttpRequest({
  2806. method: "GET",
  2807. url: "https://statsxente.com/MZ1/Functions/tamper_user_next_matches.php?team_id="+team_id,
  2808. headers: {
  2809. "Content-Type": "application/json"
  2810. },
  2811. onload: function(response) {
  2812. var jsonResponse = JSON.parse(response.responseText);
  2813. var data=jsonResponse;
  2814. if(data.length>0){
  2815.  
  2816.  
  2817. GM_xmlhttpRequest({
  2818. method: "GET",
  2819. url: "http://www.managerzone.com/xml/team_matchlist.php?sport_id="+window.sport_id+"&team_id="+team_id+"&match_status=2&limit=100",
  2820. headers: {
  2821. "Content-Type": "application/json"
  2822. },
  2823. onload: function(response) {
  2824.  
  2825. var matchesDate=[]
  2826. var parser = new DOMParser();
  2827. var xmlDoc = parser.parseFromString(response.responseText, "text/xml");
  2828. var matches = xmlDoc.getElementsByTagName("Match");
  2829.  
  2830. var last_date=""
  2831.  
  2832.  
  2833. for (var i = 0; i < matches.length; i++) {
  2834. var dateOnly = matches[i].getAttribute("date").split(" ")[0];
  2835. last_date=dateOnly
  2836. var teams = matches[i].getElementsByTagName("Team");
  2837.  
  2838. for (var j = 0; j < teams.length; j++) {
  2839. if(teams[j].getAttribute("teamId")!=team_id){
  2840. matchesDate.push(teams[j].getAttribute("teamId")+"-"+dateOnly)
  2841.  
  2842. }
  2843. }
  2844.  
  2845.  
  2846. }
  2847.  
  2848.  
  2849.  
  2850.  
  2851. var newContent = `
  2852. <div id="tour-container" class="widgets-container">
  2853. <div class="flex-wrap hub-widget-container">
  2854. <div class="flex-grow-1 box_dark">
  2855. <div id="clubhouse-widget-tour" class="widget-content clearfix">
  2856. <i class="fa minimize-button fa-minus-square" aria-hidden="true" data-time="1722549599"></i>
  2857. <span class="fa fa-stack fa-2x floatRight">
  2858. <i class="fa fa-circle fa-stack-2x fa-inverse"></i>
  2859. <i class="fa fa-thumbs-up fa-stack-1x green" aria-hidden="true"></i>
  2860. </span>
  2861. <h3 style="background-image: url('https://www.statsxente.com/MZ1/View/Images/etiqueta_bota.png');">Stats Xente</h3>
  2862. <div class="widget-content-wrapper">
  2863. <div class="flex-wrap" style="margin-bottom: 35px;">
  2864. <div class="flex-grow-0" style="margin: 0 auto">
  2865. <img src="https://www.statsxente.com/MZ1/View/Images/etiqueta_bota.png" alt="" width="114" height="127">
  2866. </div>
  2867. <div class="flex-grow-1 textLeft">`
  2868.  
  2869. data.forEach(function(match_data) {
  2870.  
  2871. var dateObj1 = new Date(last_date);
  2872. var dateObj2 = new Date(match_data['fecha']);
  2873.  
  2874.  
  2875. var icon_="fa-check-square"
  2876. var style_=""
  2877. var flagFriendly=false;
  2878. if (dateObj1 < dateObj2) {
  2879. icon_="fa-calendar-minus-o"
  2880. style_="style='color:#e5ac00;'"
  2881. flagFriendly=true;
  2882. }else{
  2883.  
  2884. if(matchesDate.includes(match_data['rival_id']+"-"+match_data['fecha'])){
  2885. if(window.sport=="hockey"){
  2886. style_="style='color:#6d93fd;'"
  2887. }
  2888. }else{
  2889. icon_="fa-times-square"
  2890. style_="style='color:#AD4039;'"
  2891. flagFriendly=true;
  2892.  
  2893.  
  2894. }
  2895.  
  2896. }
  2897.  
  2898.  
  2899. var match='<img src="https://www.managerzone.com/dynimg/badge.php?team_id='+match_data['idEquipoLocal']+'&sport="'+window.sport+' width="15px" height="15px"/> '
  2900. +team_name+' - '+match_data['rival_name']+' <img src="https://www.managerzone.com/dynimg/badge.php?team_id='+match_data['idEquipoVisitante']+'&sport="'+window.sport+' width="15px" height="15px"/>'
  2901. if(match_data['field']=="away"){
  2902. match='<img src="https://www.managerzone.com/dynimg/badge.php?team_id='+match_data['idEquipoLocal']+'&sport="'+window.sport+' width="15px" height="15px"/> '
  2903. +match_data['rival_name']+' - '+team_name+' <img src="https://www.managerzone.com/dynimg/badge.php?team_id='+match_data['idEquipoVisitante']+'&sport="'+window.sport+' width="15px" height="15px"/>'
  2904. }
  2905.  
  2906.  
  2907. newContent+='<fieldset class="grouping self box_light_on_dark flex-nowrap" style="max-width: 555px; margin-left: 10px;">'
  2908. newContent+='<legend>'+match_data['clash_name']+'</legend>'
  2909. newContent+='<div class="flex-grow-0 mission-icon">'
  2910. newContent+='<i class="fa '+icon_+' green fa-2x t-checked" aria-hidden="true" '+style_+'></i>'
  2911. newContent+='</div>'
  2912. newContent+='<div class="flex-grow-1 mission">'
  2913.  
  2914. var link="CompAmis_CALENDAR_View.php?"+'id='+match_data['idComp']
  2915. if(match_data['comp']=="cup"){
  2916. link='CompAmis_Cup_CALENDAR_View.php?grupo='+match_data['grupo']+'&id='+match_data['idComp']
  2917. }
  2918.  
  2919.  
  2920. newContent+='<p><b><a href="https://www.statsxente.com/MZ1/View/'+link+'" target="_blank">'+match+'</a></b>'
  2921. newContent+="</br></p>"
  2922. newContent+='Date: '+match_data['fecha']
  2923. if(flagFriendly){
  2924. newContent+="<a href='https://www.managerzone.com/?p=challenges&challenge-tid="+match_data['rival_id']+"'><i class='fa fa-thumbs-up fa-lg challenge-thumb' aria-hidden='true'></i></a>"
  2925. }
  2926.  
  2927.  
  2928. newContent+='</p>'
  2929. newContent+='</div>'
  2930. newContent+='</fieldset>'
  2931. });
  2932.  
  2933.  
  2934.  
  2935.  
  2936. newContent+=`</div>
  2937. </div>
  2938. </div>
  2939. </div>
  2940. </div>
  2941. </div>
  2942. </div>`;
  2943.  
  2944.  
  2945.  
  2946.  
  2947. var contenedor = document.getElementById('tour-container');
  2948. if(data.length>0){
  2949. contenedor.insertAdjacentHTML('beforebegin',newContent);
  2950.  
  2951. }
  2952.  
  2953.  
  2954. }
  2955.  
  2956. });
  2957.  
  2958. }
  2959.  
  2960.  
  2961. }
  2962. });
  2963.  
  2964. }
  2965.  
  2966.  
  2967. function checkClassNameExists(element, className){
  2968.  
  2969. if(className==""){
  2970. return true;
  2971. }else{
  2972. return element.classList.contains(className);
  2973. }
  2974. return false;
  2975.  
  2976. }
  2977.  
  2978.  
  2979.  
  2980.  
  2981.  
  2982. function fetchAgeRestriction(url) {
  2983. return new Promise((resolve, reject) => {
  2984.  
  2985. GM_xmlhttpRequest({
  2986. method: "GET",
  2987. url: url,
  2988. headers: {
  2989. "Content-Type": "application/json"
  2990. },
  2991. onload: function(response) {
  2992. var parser = new DOMParser();
  2993. var doc = parser.parseFromString(response.responseText, "text/html");
  2994. var strongElements = doc.getElementsByTagName("b");
  2995. var nextElement = strongElements[1].nextElementSibling;
  2996. var nextSibling = strongElements[1].nextSibling;
  2997. try {
  2998. while (nextSibling && nextSibling.nodeName === "BR") {
  2999. nextSibling = nextSibling.nextSibling;
  3000. }
  3001.  
  3002. if (nextSibling && nextSibling.nodeType === Node.TEXT_NODE) {
  3003. var age_restriction = nextSibling.textContent.trim();
  3004. resolve(age_restriction);
  3005. } else {
  3006. resolve("none");
  3007. }
  3008. } catch (error) {
  3009. reject("none");
  3010. }
  3011. },
  3012. onerror: function(error) {
  3013. reject("none");
  3014. }
  3015. });
  3016. });
  3017. }
  3018.  
  3019.  
  3020.  
  3021. function fetchCupAgeRestriction(url) {
  3022. return new Promise((resolve, reject) => {
  3023.  
  3024. GM_xmlhttpRequest({
  3025. method: "GET",
  3026. url: url,
  3027. headers: {
  3028. "Content-Type": "application/json"
  3029. },
  3030. onload: function(response) {
  3031. var parser = new DOMParser();
  3032. try {
  3033. var doc = parser.parseFromString(response.responseText, "text/html")
  3034. var tables = doc.getElementsByTagName("table");
  3035. var table = tables[1]
  3036. var tds=table.getElementsByTagName("td");
  3037. resolve(tds[5].innerHTML)
  3038. } catch (error) {
  3039. reject("none");
  3040. }
  3041. },
  3042. onerror: function(error) {
  3043. reject("none");
  3044. }
  3045. });
  3046. });
  3047. }
  3048.  
  3049.  
  3050.  
  3051. async function friendlyCupsAndLeagues(){
  3052. var urlParams = new URLSearchParams(window.location.search);
  3053. var age_restriction="none"
  3054. var link="https://www.managerzone.com"+document.getElementById("ui-id-1").getAttribute('href')
  3055. if(urlParams.get('fsid')){
  3056. age_restriction =await fetchAgeRestriction(link);
  3057. }else{
  3058. age_restriction =await fetchCupAgeRestriction(link);
  3059. }
  3060.  
  3061. var detected_cat="senior"
  3062.  
  3063. if(age_restriction!=="none"){
  3064.  
  3065.  
  3066. switch(age_restriction){
  3067. case "U23":
  3068. detected_cat="u23"
  3069. break;
  3070. case "U21":
  3071. detected_cat="u21"
  3072. break;
  3073. case "U18":
  3074. detected_cat="u18"
  3075. break;
  3076. }
  3077.  
  3078. }
  3079.  
  3080.  
  3081.  
  3082. var initialValues = {};
  3083. initialValues["senior"] = GM_getValue("league_default_senior");
  3084. initialValues["world"] = GM_getValue("league_default_senior");
  3085. initialValues["u23"] = GM_getValue("league_default_u23");
  3086. initialValues["u21"] = GM_getValue("league_default_u21");
  3087. initialValues["u18"] = GM_getValue("league_default_u18");
  3088. initialValues["u23_world"] = GM_getValue("league_default_u23");
  3089. initialValues["u21_world"] = GM_getValue("league_default_u21");
  3090. initialValues["u18_world"] = GM_getValue("league_default_u18");;
  3091.  
  3092. var linkIds=""
  3093. setTimeout(function() {
  3094.  
  3095. var elems = document.getElementsByClassName("nice_table");
  3096. var tabla = elems[0]
  3097. var thSegundo = tabla.querySelector("thead th:nth-child(2)");
  3098. thSegundo.style.width = "250px";
  3099.  
  3100.  
  3101. var values = new Map();
  3102. values.set('valor23', 'U23 Value');
  3103. values.set('valor21', 'U21 Value');
  3104. values.set('valor18', 'U18 Value');
  3105. values.set('salario', 'Salary');
  3106. values.set('valorUPSenior', 'LM Value');
  3107. values.set('valorUPSUB23', 'U23 LM Value');
  3108. values.set('valorUPSUB21', 'U21 LM Value');
  3109. values.set('valorUPSUB18', 'U18 LM Value');
  3110. values.set('edad', 'Age');
  3111. if(window.sport=="soccer"){
  3112. values.set('valor11', 'TOP 11');
  3113. values.set('valor11_23', 'U23 TOP 11');
  3114. values.set('valor11_21', 'U21 TOP 11');
  3115. values.set('valor11_18', 'U18 TOP 11');
  3116. }else{
  3117. values.set('valor11', 'TOP 21');
  3118. values.set('valor11_23', 'U23 TOP 21');
  3119. values.set('valor11_21', 'U21 TOP 21');
  3120. values.set('valor11_18', 'U18 TOP 21');
  3121. }
  3122.  
  3123. values.set('noNac', 'Foreigners');
  3124. values.set('elo', 'ELO Score');
  3125. values.set('elo23', 'U23 ELO Score');
  3126. values.set('elo21', 'U21 ELO Score');
  3127. values.set('elo18', 'U18 ELO Score');
  3128. values.set('numJugadores', 'Number of players');
  3129. values.set('leagues', 'Leagues');
  3130. values.set('world_leagues_all', 'World Leagues');
  3131. values.set('youth_leagues_all', 'Youth Leagues');
  3132. values.set('world_youth_leagues_all', 'Youth World Leagues');
  3133. values.set('federation_leagues', 'Federation Leagues');
  3134. values.set('cup', 'Cups');
  3135. values.set('cup_u23', 'U23 Cups');
  3136. values.set('cup_u21', 'U21 Cups');
  3137. values.set('cup_u18', 'U18 Cups');
  3138. values.set('special_cup', 'Special Cups');
  3139.  
  3140. var contenidoNuevo = '<div id=testClick><center>'
  3141.  
  3142.  
  3143. getNativeTableStyles();
  3144.  
  3145. var idProgress="noProgress";
  3146. if(urlParams.get('type')=="senior"){
  3147. idProgress="divProgress"
  3148. }
  3149.  
  3150.  
  3151. var widthTable="1.5em"
  3152. ///MENU TABLE
  3153. contenidoNuevo+="<center><table id=showMenu border=0><thead style='background-color:"+GM_getValue("bg_native")+"; color:"+GM_getValue("color_native")+";'><tr>";
  3154. contenidoNuevo+='<th align=center style="padding:4px;" colspan="4">Stats Xente</th>';
  3155. contenidoNuevo+="</tr></thead>";
  3156. var styleTable=" style='display:none;'";
  3157. var styleIcon=""
  3158. var styleSep="style='padding-top:5px;'";
  3159.  
  3160. if(GM_getValue("show_league_selects")==true){
  3161. styleTable="";
  3162. styleIcon=" active"
  3163. styleSep=" style='display:none;'";
  3164.  
  3165. }
  3166.  
  3167.  
  3168. contenidoNuevo+= "<tr><td></td><td style='padding-top:5px' colspan='2'>";
  3169.  
  3170. contenidoNuevo+='<center><div id="moreInfo" class="expandable-icon'+styleIcon+'" style="cursor:pointer; background-color:'+GM_getValue("bg_native")+';"><div id="line1" class="line"></div><div id="line2" class="line"></div></div></center>';
  3171.  
  3172. contenidoNuevo+= "</td><td></td></tr>";
  3173.  
  3174. contenidoNuevo+= "<tr><td colspan='5' id='separatorTd'"+styleSep+"></td></tr>";
  3175.  
  3176.  
  3177.  
  3178. contenidoNuevo+= "</table></center>";
  3179.  
  3180.  
  3181.  
  3182. contenidoNuevo+='<table id=show3 border="0"'+styleTable+'><tr><td><label>';
  3183.  
  3184. if((urlParams.get('type')=='senior')||(urlParams.get('type')=='world')){
  3185. if("valor"==initialValues[detected_cat]){
  3186. contenidoNuevo+='<input class="statsxente" type="checkbox" checked id="valor" value="Value">Value</label></td>';
  3187. }else{
  3188. contenidoNuevo+='<input class="statsxente" type="checkbox" id="valor" value="Value">Value</label></td>';
  3189. }
  3190. }else{
  3191. contenidoNuevo+='<input class="statsxente" type="checkbox" id="valor" value="Value">Value</label></td>';
  3192. }
  3193.  
  3194. values.forEach(function(valor, clave) {
  3195.  
  3196. if(clave=="valorUPSenior"){
  3197. contenidoNuevo+="</tr><tr>";
  3198. }
  3199.  
  3200. if(clave=="valor11"){
  3201. contenidoNuevo+="</tr><tr>";
  3202. }
  3203. if(clave=="elo"){
  3204. contenidoNuevo+="</tr><tr>";
  3205. }
  3206.  
  3207. if(clave=="leagues"){
  3208. contenidoNuevo+="</tr><tr>";
  3209. }
  3210.  
  3211. if(clave=="leagues_all"){
  3212. contenidoNuevo+="</tr><tr>";
  3213. }
  3214.  
  3215. if(clave=="cup"){
  3216. contenidoNuevo+="</tr><tr>";
  3217. }
  3218.  
  3219. if(clave==initialValues[detected_cat]){
  3220. contenidoNuevo+='<td><label><input class="statsxente" type="checkbox" checked value="'+valor+'" id="'+clave+'">'+valor+'</label></td>';
  3221. }else{
  3222. contenidoNuevo+='<td><label><input class="statsxente" type="checkbox" value="'+valor+'" id="'+clave+'">'+valor+'</label></td>';
  3223. }
  3224. });
  3225. contenidoNuevo+="</tr></table></center>"
  3226. contenidoNuevo+="</div></br>";
  3227.  
  3228.  
  3229. values.set('valor', 'Value');
  3230.  
  3231. elems = document.getElementsByClassName("nice_table");
  3232. tabla = elems[0]
  3233.  
  3234.  
  3235. tabla.insertAdjacentHTML('beforebegin', contenidoNuevo);
  3236.  
  3237. if(GM_getValue("show_league_selects")==true){
  3238.  
  3239. document.getElementById("line2").style.transform = 'rotateZ(0deg)';
  3240. document.getElementById("line1").style.transform = 'rotateZ(180deg)';
  3241. document.getElementById("moreInfo").style.transform = 'rotateZ(0deg)';
  3242. }
  3243.  
  3244.  
  3245. values.forEach(function(valor, clave) {
  3246.  
  3247. var elemento = document.getElementById(clave);
  3248. elemento.addEventListener('click', handleClick);
  3249.  
  3250. });
  3251. var nuevaCeldaEncabezado = document.createElement("th");
  3252. nuevaCeldaEncabezado.textContent = values.get(initialValues[detected_cat]);
  3253. nuevaCeldaEncabezado.style.textAlign = 'center';
  3254. nuevaCeldaEncabezado.style.maxWidth = '7.5em';
  3255. nuevaCeldaEncabezado.style.width = '7.5em';
  3256. nuevaCeldaEncabezado.style.whiteSpace = 'nowrap';
  3257. nuevaCeldaEncabezado.style.overflow = 'hidden';
  3258. nuevaCeldaEncabezado.style.textOverflow = 'ellipsis';
  3259.  
  3260. var ser = document.getElementsByClassName("seriesHeader")
  3261.  
  3262.  
  3263. var table_index=0;
  3264. for(var kl=0;kl<ser.length;kl++){
  3265. if(document.getElementsByClassName("seriesHeader")[kl].parentNode.parentNode.className=="nice_table"){
  3266. table_index=kl
  3267. }
  3268.  
  3269.  
  3270. }
  3271.  
  3272. document.getElementsByClassName("seriesHeader")[table_index].cells[1].style.width="180px"
  3273. document.getElementsByClassName("seriesHeader")[table_index].appendChild(nuevaCeldaEncabezado);
  3274.  
  3275. nuevaCeldaEncabezado = document.createElement("th");
  3276. nuevaCeldaEncabezado.textContent = "Stats Xente";
  3277. nuevaCeldaEncabezado.style.textAlign = 'center';
  3278. ser = document.getElementsByClassName("seriesHeader")
  3279. document.getElementsByClassName("seriesHeader")[table_index].appendChild(nuevaCeldaEncabezado);
  3280.  
  3281.  
  3282. if(tabla.getElementsByTagName("tbody")[0].innerHTML.includes("mazyar")){
  3283. searchClassName="responsive-hide"
  3284. }
  3285.  
  3286. var contIds=0
  3287. var filasDatos = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  3288. for (var i = 0; i < filasDatos.length; i++) {
  3289. if(checkClassNameExists(tabla.rows[i+1], searchClassName)){
  3290. var celda = tabla.rows[i+1].cells[1];
  3291. var equipo=celda.textContent.trim()
  3292. var iniIndex = celda.innerHTML.indexOf("tid=");
  3293. var lastIndex = celda.innerHTML.indexOf("\">", iniIndex+4);
  3294. var data=String(celda.innerHTML)
  3295. var id=data.substring(iniIndex+4,lastIndex)
  3296. linkIds+="&idEquipo"+contIds+"="+id
  3297. contIds++
  3298. celda.innerHTML+="<input type='hidden' id='team_"+id+"' value='"+equipo+"'/>"
  3299. }
  3300.  
  3301. }
  3302.  
  3303.  
  3304.  
  3305. ///DIV PROGRESS
  3306. setTimeout(function() {
  3307.  
  3308.  
  3309. (function () {
  3310. document.getElementById("moreInfo").addEventListener('click', function () {
  3311. document.getElementById("moreInfo").classList.toggle('active');
  3312.  
  3313. if(document.getElementById("moreInfo").classList.contains("active")){
  3314. document.getElementById("line2").style.transform = 'rotateZ(0deg)';
  3315. document.getElementById("line1").style.transform = 'rotateZ(180deg)';
  3316. document.getElementById("moreInfo").style.transform = 'rotateZ(0deg)';
  3317. $('#separatorTd').fadeOut(1);
  3318. document.getElementById("separatorTd").style.paddingTop = "5px";
  3319. $('#show3').fadeIn('slow');
  3320. }else{
  3321. document.getElementById("line2").style.transform = 'rotateZ(45deg)';
  3322. document.getElementById("line1").style.transform = 'rotateZ(-45deg)';
  3323. document.getElementById("moreInfo").style.transform = 'rotateZ(45deg)';
  3324. $('#separatorTd').fadeIn(1);
  3325. $('#show3').fadeOut('slow');
  3326. }
  3327.  
  3328.  
  3329.  
  3330. });
  3331. })();
  3332.  
  3333. }, 200);
  3334.  
  3335. GM_xmlhttpRequest({
  3336. method: "GET",
  3337. url: "https://statsxente.com/MZ1/Functions/tamper_teams.php?currency="+GM_getValue("currency")+"&sport="+window.sport+linkIds,
  3338. headers: {
  3339. "Content-Type": "application/json"
  3340. },
  3341. onload: function(response) {
  3342. var jsonResponse = JSON.parse(response.responseText);
  3343. teams_data=jsonResponse;
  3344. var filasDatos = tabla.getElementsByTagName("tbody")[0].getElementsByTagName("tr");
  3345. for (var i = 0; i < filasDatos.length; i++) {
  3346. if(checkClassNameExists(filasDatos[i], searchClassName)){
  3347. var celda = filasDatos[i].cells[1]
  3348. var equipo=celda.textContent.trim()
  3349. var iniIndex = celda.innerHTML.indexOf("tid=");
  3350. var lastIndex = celda.innerHTML.indexOf("\">", iniIndex+4);
  3351. var data=String(celda.innerHTML)
  3352. var id=data.substring(iniIndex+4,lastIndex)
  3353. var nuevaColumna = document.createElement("td");
  3354. var valor=0;
  3355.  
  3356. if (jsonResponse[id] && jsonResponse[id][initialValues[detected_cat]] !== undefined) {
  3357. valor = new Intl.NumberFormat(window.userLocal).format(Math.round(jsonResponse[id][initialValues[detected_cat]]))
  3358. }
  3359. nuevaColumna.innerHTML=valor
  3360. nuevaColumna.style.textAlign = 'center';
  3361. filasDatos[i].appendChild(nuevaColumna);
  3362.  
  3363. var eloType=1
  3364. if(window.sport=="soccer"){eloType=2}
  3365. var cats_elo={}
  3366. cats_elo["senior"] = "SENIOR";
  3367. cats_elo["seniorw"] = "SENIOR";
  3368. cats_elo["SUB23"] = "U23";
  3369. cats_elo["SUB21"] = "U21";
  3370. cats_elo["SUB18"] = "U18";
  3371. cats_elo["SUB23w"] = "U23";
  3372. cats_elo["SUB21w"] = "U21";
  3373. cats_elo["SUB18w"] = "U18";
  3374.  
  3375. var cat = cats[detected_cat]
  3376.  
  3377.  
  3378. var flagSenior=0,flagSub23=0,flagSub21=0,flagSub18=0;
  3379. if(jsonResponse[id]["elo"]>0){flagSenior=1}
  3380. if(jsonResponse[id]["elo23"]>0){flagSub23=1}
  3381. if(jsonResponse[id]["elo21"]>0){flagSub21=1}
  3382. if(jsonResponse[id]["elo18"]>0){flagSub18=1}
  3383.  
  3384. var buttonDisplay="display:block;";
  3385. nuevaColumna = document.createElement("td");
  3386. var iner = "<center><img src='https://statsxente.com/MZ1/View/Images/detail.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but"+id+"' style='cursor:pointer;'/>";
  3387. if(GM_getValue("league_graph_button")=="checked"){
  3388. buttonDisplay=""
  3389. }else{
  3390. buttonDisplay="display:none;";
  3391. }
  3392. iner += "<img src='https://statsxente.com/MZ1/View/Images/graph.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but1"+id+"' style='cursor:pointer; "+buttonDisplay+"'/>";
  3393.  
  3394. if(GM_getValue("league_report_button")=="checked"){
  3395. buttonDisplay=""
  3396. }else{
  3397. buttonDisplay="display:none;";
  3398. }
  3399. iner += "<img src='https://statsxente.com/MZ1/View/Images/report.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but2"+id+"' style='cursor:pointer; "+buttonDisplay+"'/>";
  3400.  
  3401. if(GM_getValue("league_calendar_button")=="checked"){
  3402. buttonDisplay=""
  3403. }else{
  3404. buttonDisplay="display:none;";
  3405. }
  3406. iner += " <img src='https://statsxente.com/MZ1/View/Images/calendar.png' width='"+GM_getValue("league_image_size")+"px' height='"+GM_getValue("league_image_size")+"px' id='but3"+id+"' style='cursor:pointer; "+buttonDisplay+"'/>";
  3407. iner +="</center>";
  3408.  
  3409. nuevaColumna.innerHTML=iner
  3410. filasDatos[i].appendChild(nuevaColumna);
  3411. nuevaColumna = document.createElement("td");
  3412. (function (currentId,currentLSport,lang) {
  3413. document.getElementById("but1" + currentId).addEventListener('click', function () {
  3414. var link = "https://statsxente.com/MZ1/Graficos/graficoProgresoEquipo.php?idEquipo="+currentId+"&idioma="+lang+"&divisa="+GM_getValue("currency")+"&deporte="+currentLSport;
  3415. openWindow(link,0.95,1.25);
  3416. });
  3417. })(id,window.lsport,window.lang);
  3418.  
  3419.  
  3420. (function (currentId,currentLSport,lang,currentCat) {
  3421. document.getElementById("but2" + currentId).addEventListener('click', function () {
  3422. var src="filtroGraficoEquiposHistoricoHockey";
  3423. if(currentLSport=="F"){
  3424. src="filtroGraficoLinealEquiposHistorico";
  3425. }
  3426.  
  3427. var link="https://statsxente.com/MZ1/View/"+src+".php?tamper=yes&categoria="+currentCat+"&idEquipo="+currentId+"&idioma="+lang+"&modal=yes&valor=nota&season=75&season_actual=75&equipo=-"
  3428. openWindow(link,0.95,1.25);
  3429. });
  3430. })(id,window.lsport,window.lang,cat);
  3431.  
  3432.  
  3433. (function (currentId, currentEquipo,currentCat,currentSport,lang) {
  3434. document.getElementById("but" + currentId).addEventListener('click', function () {
  3435. var link = "https://statsxente.com/MZ1/View/filtroStatsEquiposHistorico.php?tamper=no&idEquipo=" + currentId + "&idioma="+lang+"&modal=yes&deporte="+currentSport+"&season=77&season_actual=77&categoria="+currentCat+"&equipo=" + currentEquipo + "&cerrar=no";
  3436. openWindow(link,0.95,1.25);
  3437. });
  3438. })(id, equipo,cat,window.sport,window.lang);
  3439.  
  3440.  
  3441.  
  3442.  
  3443. (function (currentId, type,currentCat,currentSport,lang,flagS,flagS23,flagS21,flagS18) {
  3444. document.getElementById("but3" + currentId).addEventListener('click', function () {
  3445. var link = "https://statsxente.com/MZ1/Graficos/graficoRachaEquipoELO.php?tamper=yes&team_id="+currentId+"&idioma="+lang+"&deporte="+currentSport+"&type="+type+"&cat="+currentCat+"&flagSenior="+
  3446. flagS+"&flagSub23="+flagS23+"&flagSub21="+flagS21+"&flagSub18="+flagS18;
  3447. openWindow(link,0.95,1.25);
  3448. });
  3449. })(id, eloType,cats_elo[cat],window.sport,window.lang,flagSenior,flagSub23,flagSub21,flagSub18);
  3450.  
  3451. }
  3452.  
  3453. }
  3454. var thead=document.getElementsByClassName("seriesHeader")[table_index]
  3455. var ths = thead.querySelectorAll("th");
  3456. ths.forEach(function(th, index) {
  3457. th.addEventListener("click", function() {
  3458. ordenarTabla(index,true,"nice_table");
  3459. });
  3460. });
  3461. }
  3462. });
  3463. }, 2500);
  3464.  
  3465. }
  3466.  
  3467.  
  3468.  
  3469.  
  3470.  
  3471. })();