Charazay training extension

try to take over the world!

  1. // ==UserScript==
  2. // @name Charazay training extension
  3. // @namespace http://charazay.com/
  4. // @version 0.1
  5. // @locale en-US
  6. // @description try to take over the world!
  7. // @author Lewy (adjusted to the new design from AlbaCats)
  8. // @include http://*charazay.com/*
  9. // @grant none
  10. // ==/UserScript==
  11.  
  12.  
  13.  
  14.  
  15. (function() {
  16. 'use strict';
  17.  
  18.  
  19.  
  20. var slownik = [];
  21.  
  22. /*slownik["pl"]["Obrona"] = "Obrona";
  23. slownik["pl"]["Rzuty Wolne"] = "Rzuty Wolne";
  24. slownik["pl"]["Rzut za 2"] = "Rzut za 2";
  25. slownik["pl"]["Rzut za 3"] = "Rzut za 3";
  26. slownik["pl"]["Drybling"] = "Drybling";
  27. slownik["pl"]["Podanie"] = "Podanie";
  28. slownik["pl"]["Szybkość"] = "Szybkość";
  29. slownik["pl"]["Praca Nóg"] = "Praca Nóg";
  30. slownik["pl"]["Zbiórki"] = "Zbiórki";*/
  31.  
  32. /*slownik["en"]["Obrona"] = "Defence";
  33. slownik["en"]["Rzuty Wolne"] = "Free Throws";
  34. slownik["en"]["Rzut za 2"] = "Two Point";
  35. slownik["en"]["Rzut za 3"] = "Three Point";
  36. slownik["en"]["Drybling"] = "Dribbling";
  37. slownik["en"]["Podanie"] = "Passing";
  38. slownik["en"]["Szybkość"] = "Speed";
  39. slownik["en"]["Praca Nóg"] = "Footwork";
  40. slownik["en"]["Zbiórki"] = "Rebounds";*/
  41.  
  42. slownik["pl"] = [];
  43. slownik["pl"]["Plan Treningowy"] = "Plan Treningowy";
  44. slownik["pl"]["Plany treningowe"] = "Plany treningowe";
  45. slownik["pl"]["Rodzaj treningu"] = "Rodzaj treningu";
  46. slownik["pl"]["Umiejetność trenera"] = "Umiejetność trenera";
  47. slownik["pl"]["Długość treningu"] = "Długość treningu";
  48. slownik["pl"]["Usuń"] = "Usuń";
  49. slownik["pl"]["Dodaj"] = "Dodaj";
  50. slownik["pl"]["Zapisz"] = "Zapisz";
  51. slownik["pl"]["Wyczyść"] = "Wyczyść";
  52. slownik["pl"]["Podaj umiejętność trenera"] = "Podaj umiejętność trenera";
  53. slownik["pl"]["to nie jest liczba z przedziału"] = "to nie jest liczba z przedziału";
  54.  
  55. slownik["en"] = [];
  56. slownik["en"]["Plan Treningowy"] = "Training Plan";
  57. slownik["en"]["Plany treningowe"] = "Training Plans";
  58. slownik["en"]["Rodzaj treningu"] = "Training";
  59. slownik["en"]["Umiejetność trenera"] = "Coach Skill";
  60. slownik["en"]["Długość treningu"] = "Number of trainings";
  61. slownik["en"]["Usuń"] = "Remove";
  62. slownik["en"]["Dodaj"] = "Add";
  63. slownik["en"]["Zapisz"] = "Save";
  64. slownik["en"]["Wyczyść"] = "Clear";
  65. slownik["en"]["Podaj umiejętność trenera"] = "Enter your Coach Skill";
  66. slownik["en"]["to nie jest liczba z przedziału"] = "it's not a number from range";
  67.  
  68. slownik["fr"] = [];
  69. slownik["fr"]["Plan Treningowy"] = "Entraînement";//"Plan d'entraînement"; // or Plan de formation
  70. slownik["fr"]["Plany treningowe"] = "Plan d'entraînement"; //Similar to the first...
  71. slownik["fr"]["Rodzaj treningu"] = "Entraînement"; // or Formation
  72. slownik["fr"]["Umiejetność trenera"] = "Carac. du coach"; //CBM: Caractéristique entraîneur; Carac. du coach (It's too long otherwise), caractéristiques du coach
  73. slownik["fr"]["Długość treningu"] = "Nombre d'entraînement";
  74. slownik["fr"]["Usuń"] = "Effacer";
  75. slownik["fr"]["Dodaj"] = "Ajouter";
  76. slownik["fr"]["Zapisz"] = "Sauvegarder";
  77. slownik["fr"]["Wyczyść"] = "Retour";
  78. slownik["fr"]["Podaj umiejętność trenera"] = "Entrer les caractéristiques du coach";
  79. slownik["fr"]["to nie jest liczba z przedziału"] = "Le numéro doit être compris entre"; // DO PRZETLUMACZENIA
  80.  
  81.  
  82.  
  83. var nazwyskili = [];
  84. nazwyskili["pl"] = ["Obrona", "Rzuty Wolne", "Rzut za 2", "Rzut za 3", "Drybling", "Podanie", "Szybkość", "Praca Nóg", "Zbiórki"];
  85. nazwyskili["en"] = ["Defence", "Free Throws", "Two Point", "Three Point", "Dribbling", "Passing", "Speed", "Footwork", "Rebounds"];
  86. nazwyskili["fr"] = ["Défense", "Lancers francs", "2 points", "3 points", "Dribble", "Passe", "Vitesse", "Jeu de jambes", "Rebonds"];
  87.  
  88. var language = "en";
  89. var ciastka = document.cookie.split(/; /g);
  90. for(var i = 0; i < ciastka.length; i++){
  91. var ciastko = ciastka[i];
  92. if(ciastko.indexOf("=") == -1)
  93. continue;
  94. var nazwa = ciastko.substring(0, ciastko.indexOf("="));
  95. if(nazwa == "language"){
  96. var jezyk = ciastko.substring(ciastko.indexOf("=") + 1);
  97. if(jezyk == "pl") language = "pl";
  98. else if(jezyk == "fr") language = "fr";
  99. break;
  100. }
  101. }
  102.  
  103. var X= [ 0.1580,
  104. 0.1578,
  105. 0.1575,
  106. 0.1425,
  107. 0.1400,
  108. 0.1350,
  109. 0.1320,
  110. 0.1180,
  111. 0.1150,
  112. 0.1000,
  113. 0.0900,
  114. 0.0860,
  115. 0.0830,
  116. 0.0700,
  117. 0.0660,
  118. 0.0500,
  119. 0.0450];
  120.  
  121. var skills =[0]; //stala
  122. var skillstd =[];
  123. var trenerskills = [0,0,0,0,0,0,0,0,0];
  124. var wiek; //stala
  125. var wiektd;
  126. var sezon; //stala
  127. var tydzien; //stala
  128. var dzien; //stala
  129. var S; //zmienne, uzywane przy planach
  130. var T;
  131.  
  132. function extraTrening(co){
  133.  
  134. if(trenerskills[co] == 0 && sezon == S && tydzien == T){
  135. var skilt = window.prompt(slownik[language]["Podaj umiejętność trenera"] + ": ", "30");
  136. if(skilt){
  137. var skilint = parseInt(skilt);
  138. if(isNaN(skilint) || skilint <1 || skilint > 30){
  139. window.alert(skilt + " - " + slownik[language]["to nie jest liczba z przedziału"] + " 1 - 30");
  140. }
  141. else{
  142. trenerskills[co] = skilint;
  143. }
  144. }
  145.  
  146. }
  147. if(trenerskills[co] != 0){
  148.  
  149. if(skills[0] == 0 || skillstd === "undefined" || skillstd.length===0 || wiektd === "undefined"){
  150. inicjalizuj();
  151. }
  152. if(sezon == S && tydzien == T){
  153. var skil = skills[co];
  154. var x = (wiek - 15) >= X.length ? 0 : X[wiek-15];
  155. var iledodac = x*(1 +(trenerskills[co] > Math.floor(skil) ? trenerskills[co] - Math.floor(skil) : 0) *0.03 );
  156. if(Math.floor(skil + iledodac) == Math.floor(skil)){
  157. skills[co] += iledodac;
  158. skillstd[co].innerHTML = parseInt(skills[co]*100)/100;
  159. aktualizujGSy();
  160. }
  161. }
  162. }
  163. }
  164.  
  165. function wyczysc(){
  166. if(skills[0] != 0){
  167. for(var i= 0; i< skills.length; i++){
  168. skillstd[i].innerHTML = parseInt(skills[i]*100)/100;
  169. }
  170. wiektd.innerHTML =wiek;
  171. S = sezon;
  172. T = tydzien;
  173. aktualizujGSy();
  174. }
  175. }
  176.  
  177. function inicjalizuj(){
  178. var tablica = document.getElementById("mc").getElementsByClassName("mc-ls")[0].getElementsByTagName("table")[1];
  179. var td = tablica.getElementsByTagName("td");
  180. var indeks = 9;
  181. var i;
  182. for(i = td.length-1; indeks >= 0; i-= 2, indeks--){
  183. skills[indeks] = parseInt(td[i].innerHTML);
  184. skillstd[indeks] = td[i];
  185. i -= 3;
  186. indeks -= 1;
  187. skills[indeks] = parseInt(td[i].innerHTML);
  188. skillstd[indeks] = td[i];
  189. }
  190. wiek = parseInt(td[i-14].innerHTML);
  191. wiektd = td[i-14];
  192.  
  193. var infoblocks = document.getElementsByTagName("footer")[0].getElementsByClassName("menufooter")[0];
  194. var tekst = infoblocks.getElementsByTagName("p")[0].innerHTML;
  195. var indexOf = tekst.indexOf("</span>");
  196. tekst = tekst.substring(indexOf+7, tekst.length).trim();
  197. var dane = tekst.split(",");
  198. sezon = parseInt(dane[0].substring(dane[0].lastIndexOf(" ")+1));
  199. tydzien = parseInt(dane[1].substring(dane[1].lastIndexOf(" ")+1));
  200. dzien = parseInt(dane[2].substring(dane[2].lastIndexOf(" ")+1));
  201. S = sezon;
  202. T = tydzien;
  203. }
  204.  
  205. function klikPlan(nazwa){
  206. if(skills[0] == 0 || skillstd === "undefined" || skillstd.length===0 || wiektd === "undefined"){
  207. inicjalizuj();
  208. }
  209. //////////////////////kierwa//////////////////////////////
  210. /*if(tydzien == 17 && dzien == 7 && parseInt(wiektd.innerHTML) == wiek){ //jezeli jest ostatni dzien tygodnia
  211. if(!czybylopytanie){ //jezeli uzytkownik nie byl jeszcze pytany o to, czy bylo dorastanie
  212. var odp = window.confirm("Dziś jest ostatni dzień sezonu. Czy dorastanie już się odbyło? Błędna odpowiedź spowoduje, że obliczenia będą niepoprawne.");
  213. czybylodorastanie = odp;
  214. czybylopytanie = true;
  215. if(czybylodorastanie){
  216. wiektd.innerHTML = wiek-1;
  217. }
  218. }
  219. }*/
  220.  
  221.  
  222. var pos = document.cookie.indexOf("plan=");
  223. if(pos != -1){
  224. var pos2 =document.cookie.indexOf(";", pos);
  225. var ciastko;
  226. if(pos2 == -1) ciastko = document.cookie.substring(pos+5);
  227. else ciastko = document.cookie.substring(pos+5, pos2);
  228.  
  229. var plany = ciastko.split("&");
  230. for(var i= 0; i< plany.length; i++){
  231. var tab = plany[i].split(".");
  232. if(tab[0] == nazwa){
  233. for(var j= 1; j< tab.length; j+= 3){
  234. var um =tab[j]; //jaka umiejetnosc
  235. var trener =tab[j+1]; // umiejetnosc trenera
  236. var ileTyg =tab[j+2]; // ile tygodni trening
  237. var trenerWolne = 0;
  238. if(um == 2 || um == 3){
  239. trenerWolne = tab[j+4];
  240. j+=2;
  241. }
  242.  
  243. while(ileTyg >0){
  244. var skil =parseFloat(skillstd[um].innerHTML);
  245. var wieknow = parseInt(wiektd.innerHTML);
  246. wieknow = isNaN(wieknow) ? 39 : wieknow;
  247. var x= (wieknow -15) >= X.length ?0 :X[wieknow-15];
  248. skil += x*(1 +(trener > Math.floor(skil) ? trener - Math.floor(skil) : 0) *0.03 );
  249. skillstd[um].innerHTML =skil;
  250. if(trenerWolne != 0){
  251. skil =parseFloat(skillstd[1].innerHTML);
  252. skil += x*(1 +(trenerWolne > Math.floor(skil) ? trenerWolne - Math.floor(skil) : 0) *0.03 );
  253. skillstd[1].innerHTML = skil;
  254. }
  255. ileTyg--;
  256. T++;
  257. if(T > 17){
  258. S++;
  259. wiektd.innerHTML = wieknow+1;
  260. T = 1;
  261. }
  262. }
  263.  
  264. }
  265. for(var j= 0; j < 9; j++){
  266. skillstd[j].innerHTML =(parseInt(parseFloat(skillstd[j].innerHTML)*100))/100;
  267. if(parseFloat(skillstd[j].innerHTML) > 30.0) skillstd[j].innerHTML = 30;
  268. }
  269. if(parseInt(wiektd.innerHTML) > 39) wiektd.innerHTML = "R.I.P.";
  270. aktualizujGSy();
  271. break;
  272. }
  273. }
  274. }
  275. }
  276.  
  277. function aktualizujGSy(){
  278. var AS = 0.0;
  279. for(var j= 0; j < 9; j++)
  280. AS += parseFloat(skillstd[j].innerHTML);
  281. var GS = parseFloat(skillstd[0].innerHTML) +parseFloat(skillstd[4].innerHTML) +parseFloat(skillstd[5].innerHTML) +parseFloat(skillstd[6].innerHTML);
  282. var CS = parseFloat(skillstd[0].innerHTML) +parseFloat(skillstd[6].innerHTML) +parseFloat(skillstd[7].innerHTML) +parseFloat(skillstd[8].innerHTML);
  283. AS = (parseInt(AS*100))/100;
  284. GS = (parseInt(GS*100))/100;
  285. CS = (parseInt(CS*100))/100;
  286.  
  287. var y = document.getElementById("geesy");
  288. y.innerHTML ="GS: "+ GS +"&nbsp;&nbsp;&nbsp;&nbsp;CS: "+ CS +"&nbsp;&nbsp;&nbsp;&nbsp;AS: "+ AS;
  289. }
  290.  
  291. function zapiszPlan(idPlanu){
  292. var tds =document.getElementById(idPlanu).getElementsByTagName("td");
  293. var blad = false;
  294.  
  295. for(var i= 5; i< tds.length-3; i+= 4){
  296. var value = parseInt(tds[i].childNodes[0].value);
  297. if(isNaN(value) || value <1 || value >30){
  298. window.alert(tds[i].childNodes[0].value + " - " + slownik[language]["to nie jest liczba z przedziału"] + " 1 - 30");
  299. blad = true;
  300. break;
  301. }
  302. }
  303. if(blad == false){
  304. for(var i = 6; i < tds.length-2; i += 4){
  305. if(tds[i].hasChildNodes()){
  306. var value = parseInt(tds[i].childNodes[0].value);
  307. if(isNaN(value) || value < 1 || value > 425){
  308. window.alert(tds[i].childNodes[0].value + " - " + slownik[language]["to nie jest liczba z przedziału"] + " 1 - 425");
  309. blad = true;
  310. break;
  311. }
  312. }
  313. }
  314. }
  315. if(blad == false){
  316. var poz = idPlanu.indexOf("-");
  317. var nazwa = idPlanu.substring(poz+1);
  318. var plan = nazwa;
  319. for(var i = 4; i < tds.length-4; i += 4){
  320. var lista = tds[i].childNodes[0];
  321. plan += "." + lista.options[lista.selectedIndex].value;
  322. plan += "." + parseInt(tds[i+1].childNodes[0].value);
  323. if(tds[i+2].hasChildNodes())plan += "." + parseInt(tds[i+2].childNodes[0].value);
  324. }
  325.  
  326. var pos = document.cookie.indexOf("plan=");
  327. if(pos != -1){
  328. var pos2 = document.cookie.indexOf(";", pos);
  329. var ciastko;
  330. if(pos2 == -1) ciastko = document.cookie.substring(pos+5);
  331. else ciastko = document.cookie.substring(pos+5, pos2);
  332.  
  333. var plany = ciastko.split("&");
  334. for(var i= 0; i< plany.length; i++){
  335. var tab = plany[i].split(".");
  336. if(tab[0] == nazwa){
  337. plany[i] = plan;
  338. break;
  339. }
  340. }
  341. ciastko = plany.join("&");
  342. var data =new Date();
  343. data.setFullYear(data.getFullYear() +1);
  344. document.cookie = "plan=" + ciastko + "; expires=" + data.toUTCString();
  345. }
  346. }
  347. }
  348.  
  349. function usun(idPlanu){
  350. var tds =document.getElementById(idPlanu).getElementsByTagName("td");
  351. if(tds.length >12){
  352. var teery = document.getElementById(idPlanu).getElementsByTagName("tr");
  353. if(teery[teery.length-2].id == "wolne" && tds.length > 16){ //jezeli ostatni to rzuty wolne, to usun tez wczesniejszy trening
  354. if(teery[teery.length-4].id == "wolne"){
  355. tds[tds.length-17].innerHTML =tds[tds.length-9].innerHTML;
  356. }
  357. else{
  358. tds[tds.length-13].innerHTML =tds[tds.length-9].innerHTML;
  359. }
  360. teery[teery.length-3].parentNode.removeChild(teery[teery.length-2]);
  361. teery[teery.length-2].parentNode.removeChild(teery[teery.length-2]);
  362. }
  363. else if(teery[teery.length-2].id != "wolne"){
  364. if(teery[teery.length-3].id == "wolne"){
  365. tds[tds.length-13].innerHTML =tds[tds.length-5].innerHTML;
  366. }
  367. else{
  368. tds[tds.length-9].innerHTML =tds[tds.length-5].innerHTML;
  369. }
  370. teery[teery.length-2].parentNode.removeChild(teery[teery.length-2]);
  371. }
  372. }
  373. addClickEventTP();
  374. }
  375.  
  376. function dodaj(idPlanu){
  377.  
  378. var tds =document.getElementById(idPlanu).getElementsByTagName("td");
  379. if(tds.length <68){
  380. var teery =document.getElementById(idPlanu).getElementsByTagName("tr");
  381. /*********************To jest kopiowanie ostatniego elementu, które oficjalnie pierdole -> padłem przy opcji, gdzie ostatni zapisany element
  382. to rzuty, ale zamieniam ten rzut na np obrone; po dodaj kopiuje rzut, bez wolnych, bo nie mam ich kurwa skad kopiowac. Pierdole!!!
  383. var kopiatr;
  384. if(teery[teery.length-2].id != "wolne"){ //jezeli to nie sa wolne, to kopiuj ostatni trening
  385. kopiatr = teery[teery.length-2].cloneNode(true);
  386. tds[tds.length-5].innerHTML ="";
  387. teery[teery.length-1].parentNode.insertBefore(kopiatr, teery[teery.length-1]);
  388. }
  389. else{ //a jezeli sa wolne, to skopiuj albo tylko przedostatni (jezeli nie jest rzutem) albo obydwa ostatnie
  390. kopiatr = teery[teery.length-3].cloneNode(true);
  391. tds[tds.length-9].innerHTML ="";
  392. teery[teery.length-1].parentNode.insertBefore(kopiatr, teery[teery.length-1]);
  393. if(kopiatr.firstChild.firstChild.selectedIndex == 1 || kopiatr.firstChild.firstChild.selectedIndex == 2){
  394. teery[teery.length-1].parentNode.insertBefore(teery[teery.length-3].cloneNode(true), teery[teery.length-1]);
  395. }
  396. }
  397. /********************************************************/
  398. //Zdrowe, normalne, dodanie nowego gówna:
  399. if(teery[teery.length-2].id != "wolne")
  400. tds[tds.length-5].innerHTML ="";
  401. else
  402. tds[tds.length-9].innerHTML ="";
  403. var nowy = document.createElement("tr");
  404. nowy.innerHTML = "<td><select class='skillslistselect' ><option value='0' selected='selected'>" + nazwyskili[language][0] + "</option><option value='2'>" + nazwyskili[language][2] + "</option><option value='3'>" + nazwyskili[language][3] + "</option><option value='4'>" + nazwyskili[language][4] + "</option><option value='5'>" + nazwyskili[language][5] + "</option><option value='6'>" + nazwyskili[language][6] + "</option><option value='7'>" + nazwyskili[language][7] + "</option><option value='8'>" + nazwyskili[language][8] + "</option></select></td><td><input type='text' size='2' value='30'></td><td><input type='text' size='2' value='17'></td><td><a class='remlinktrainingplan' remlinkvalue='" + idPlanu +"' >" + slownik[language]["Usuń"] + "</a> <a class='addlinktrainingplan' addlinkvalue='"+idPlanu+"'>" + slownik[language]["Dodaj"] + "</a></td>";
  405. teery[teery.length-1].parentNode.insertBefore(nowy, teery[teery.length-1]);
  406. }
  407. addClickEventTP();
  408. }
  409.  
  410. function wybor(co){
  411. var nexttr = co.parentNode.parentNode.nextSibling;
  412. if(co.value == 2 || co.value == 3){
  413. if(nexttr.id != "wolne"){
  414. var nowy = document.createElement("tr");
  415. nowy.setAttribute("id", "wolne");
  416. nowy.innerHTML = "<td><select><option value='1' selected='selected'>" + nazwyskili[language][1] + "</option></select></td><td><input type='text' size='2' value='30'></td><td></td><td></td>";
  417. nexttr.parentNode.insertBefore(nowy, nexttr);
  418. }
  419. }
  420. else{
  421. if(nexttr.id == "wolne"){
  422. nexttr.parentNode.removeChild(nexttr);
  423. }
  424. }
  425. }
  426. function addClickEventTP(){
  427. var removelinks = document.getElementsByClassName("remlinktrainingplan");
  428. for(var i = 0; i< removelinks.length; i++){
  429. var link = removelinks[i];
  430. link.addEventListener("click", function(){
  431. usun(this.getAttribute("remlinkvalue"));
  432. },false);
  433. }
  434. var addlinks = document.getElementsByClassName("addlinktrainingplan");
  435. for(var i = 0; i< addlinks.length; i++){
  436. var link = addlinks[i];
  437. link.addEventListener("click", function(){
  438. dodaj(this.getAttribute("addlinkvalue"));
  439. },false);
  440. }
  441. var saveButtons = document.getElementsByClassName("saveplanbutton");
  442. for(var i = 0; i< saveButtons.length; i++){
  443. var link = saveButtons[i];
  444. link.addEventListener("click", function(){
  445. zapiszPlan(this.getAttribute("saveplanvalue"));
  446. },false);
  447. }
  448. var skillslists = document.getElementsByClassName("skillslistselect");
  449. for(var i = 0; i< skillslists.length; i++){
  450. var skillslist = skillslists[i];
  451. link.addEventListener("click", function(){
  452. wybor(this);
  453. },false);
  454. }
  455. }
  456. /**
  457. var script = document.createElement("script");
  458. script.setAttribute("type", "text/javascript");
  459. script.setAttribute("language", "JavaScript");
  460. script.appendChild(document.createTextNode(scriptToHead));
  461. var head = document.getElementsByTagName('head')[0];
  462. document.head.appendChild(script);
  463. **/
  464.  
  465.  
  466.  
  467.  
  468. /**
  469. LOOOK AT HERE
  470. var charurl = $(location).attr('href');
  471. var path = charurl.substr(charurl.indexOf("?"),charurl.length);
  472.  
  473. if (typeof String.prototype.endsWith !== 'function') {
  474. String.prototype.endsWith = function(suffix) {
  475. return this.indexOf(suffix, this.length - suffix.length) !== -1;
  476. };
  477. }
  478.  
  479. console.log($(location).attr('href'));
  480. if( $(location).attr('href').endsWith('?act=team'))
  481. $("#Spry ul").append('<li class="TabbedPanelsTab" >SmthElse</li>');
  482.  
  483.  
  484. **/
  485. var url1 ="http://www.charazay.com/?act=team";
  486. var url2 ="http://www.charazay.com/index.php?act=team";
  487. var url3 ="https://www.charazay.com/?act=team";
  488. var url4 ="https://www.charazay.com/index.php?act=team";
  489.  
  490. var url5 ="http://www.charazay.com/?act=player&code=1&id=";
  491. var url6 ="http://www.charazay.com/index.php?act=player&code=1&id=";
  492. var url7 ="https://www.charazay.com/?act=player&code=1&id=";
  493. var url8 ="https://www.charazay.com/index.php?act=player&code=1&id=";
  494.  
  495.  
  496. if(document.cookie.indexOf("plan=") != -1){
  497. var pos = document.cookie.indexOf("plan=");
  498. var pos2 =document.cookie.indexOf(";", pos);
  499. var ciastko;
  500. if(pos2 == -1) ciastko = document.cookie.substring(pos+5);
  501. else ciastko = document.cookie.substring(pos+5, pos2);
  502. if(ciastko.indexOf("Center2") == -1){
  503. document.cookie = "plan=Guard1.0.30.17&Guard2.0.30.17&Center1.0.30.17&Center2.0.30.17";
  504. }
  505. }
  506. else{
  507. document.cookie="plan=Guard1.0.30.17&Guard2.0.30.17&Center1.0.30.17&Center2.0.30.17";
  508. }
  509.  
  510. if(location.href.indexOf(url1) != -1 || location.href.indexOf(url2) != -1 || location.href.indexOf(url3) != -1 || location.href.indexOf(url4) != -1){
  511.  
  512. var li =document.createElement("li");
  513. li.setAttribute("id", "plant");
  514. li.setAttribute("tabindex", "0");
  515. li.setAttribute("class","TabbedPanelsTab");
  516. li.addEventListener("click", function(){
  517. var tabs = document.getElementsByClassName('TabbedPanelsTab');
  518. for (var i = 0; i < tabs.length; i++){
  519. tabs[i].setAttribute("class","TabbedPanelsTab");
  520. }
  521. var tabbedContents = document.getElementsByClassName('TabbedPanelsContent');
  522.  
  523. for (var i = 0; i < tabbedContents.length; i++){
  524. tabbedContents[i].setAttribute("class","TabbedPanelsContent");
  525. tabbedContents[i].setAttribute("style","display: none;");
  526. }
  527. document.getElementById("plant-content").setAttribute("style","display: block;");
  528. document.getElementById("plant-content").setAttribute("class","TabbedPanelsContent TabbedPanelsContentVisible");
  529.  
  530. this.setAttribute("class","TabbedPanelsTab TabbedPanelsTabSelected");
  531. },false);
  532. li.innerHTML = slownik[language]["Plan Treningowy"];
  533.  
  534.  
  535. document.getElementById("Spry").getElementsByClassName("TabbedPanelsTabGroup")[0].appendChild(li);
  536.  
  537. var plan =document.createElement("div");
  538. plan.setAttribute("class", "TabbedPanelsContent");
  539.  
  540. plan.setAttribute("id", "plant-content");
  541.  
  542. document.getElementsByClassName("TabbedPanelsContentGroup")[0].appendChild(plan);
  543.  
  544.  
  545. plan.innerHTML ="<h2>" + slownik[language]["Plany treningowe"] + "</h2>";
  546.  
  547. var pos = document.cookie.indexOf("plan=");
  548. if(pos == -1){
  549. plan.innerHTML += "<br>Brak zdefiniowanego planu treningowego"; //brak tłumaczenia, bo ten komunikat nigdy nie jest wyświetlany
  550. }
  551. else{
  552. var pos2 =document.cookie.indexOf(";", pos);
  553. var ciastko;
  554. if(pos2 == -1) ciastko = document.cookie.substring(pos+5);
  555. else ciastko = document.cookie.substring(pos+5, pos2);
  556.  
  557. var plany = ciastko.split("&");
  558.  
  559. for(var i = 0; i < plany.length; i++){
  560. var tab =plany[i].split(".");
  561.  
  562. var e1 =document.createElement("div");
  563. e1.setAttribute("class", "rc-s");
  564. var e2 =document.createElement("div");
  565. e2.setAttribute("class", "rc-t");
  566. e2.innerHTML =tab[0];
  567. var e3 =document.createElement("div");
  568. var iner = "<table id='plan-" + tab[0] + "'><tr><td>" + slownik[language]["Rodzaj treningu"] + "</td><td>" + slownik[language]["Umiejetność trenera"] + "</td><td>" + slownik[language]["Długość treningu"] + "</td><td></td></tr>";
  569. for(var j = 1; j < tab.length; j+=3){
  570. var co = tab[j];
  571. var trener = tab[j+1];
  572. var ile;
  573. if(co != 1) ile = tab[j+2];
  574. iner += "<tr";
  575. if(co == 1) iner += " id='wolne'";
  576. iner += "><td><select class='skillslistselect' >";
  577. for(var k = 0; k < 9; k++){
  578. if(k != 1 && co != 1){
  579. iner += "<option value='" + k + "'";
  580. if(co == k) iner += " selected='selected'";
  581. iner += ">" + nazwyskili[language][k] + "</option>";
  582. }
  583. }
  584. if(co == 1) iner += "<option value='1' selected='selected'>" + nazwyskili[language][1] + "</option>";
  585. iner += "</select></td><td><input type='text' size='2' value='" + trener + "' /></td><td>";
  586. if(co != 1) iner += "<input type='text' size='2' value='" + ile + "' />";
  587. iner += "</td><td>";
  588. //warunek ponizej: jezeli to jest ostatni normalny trening lub przd ostatni, jezeli ostatnim sa wolne, to wtedy dodaj opcje "usun" i "dodaj":
  589. if(co != 1 && (j+3 >= tab.length || j+5 == tab.length)) iner += "<a class='remlinktrainingplan' remlinkvalue='plan-" + tab[0] +"' >" + slownik[language]["Usuń"] + "</a> <a class='addlinktrainingplan' addlinkvalue='plan-" + tab[0] +"'>" + slownik[language]["Dodaj"] + "</a>";
  590. iner += "</td></tr>";
  591. if(co == 1) j--;
  592. }
  593. iner += "<tr><td><button class='button white saveplanbutton' saveplanvalue='plan-" + tab[0] +"' >" + slownik[language]["Zapisz"] + "</button></td><td></td><td></td><td></td></tr></table>";
  594. e3.innerHTML = iner;
  595.  
  596. plan.appendChild(e1);
  597. e1.appendChild(e2);
  598. e1.appendChild(e3);
  599. }
  600.  
  601.  
  602. }
  603. addClickEventTP();
  604.  
  605. }
  606.  
  607. else if(location.href.indexOf(url5) != -1 || location.href.indexOf(url6) != -1 || location.href.indexOf(url7) != -1 || location.href.indexOf(url8) != -1){
  608. var e= document.getElementsByClassName("mc-ls")[0];
  609. var table =e.getElementsByTagName("table")[1];
  610. var tr =table.getElementsByTagName("tr");
  611. var skills =new Array(10);
  612. var istart =tr.length -5;
  613. for(var i= istart; i< istart +5; i++){
  614. var td =tr[i].getElementsByTagName("td");
  615. skills[(i-istart)*2] =td[1].innerHTML;
  616. skills[(i-istart)*2+1] =td[4].innerHTML;
  617. td[0].setAttribute("extratraining",((i-istart)*2)+'');
  618. td[0].addEventListener("click", function(){
  619. extraTrening( this.getAttribute("extratraining")+ '');
  620. },false);
  621. td[0].setAttribute("onmouseover", "this.style.textDecoration=\"underline\";");
  622. td[0].setAttribute("onmouseout", "this.style.textDecoration=\"none\";");
  623. if((i-istart)*2+1 != 9){
  624. td[3].setAttribute("extratraining",((i-istart)*2+1)+'');
  625. td[3].addEventListener("click", function(){
  626. extraTrening( this.getAttribute("extratraining")+ '');
  627. },false);
  628. td[3].setAttribute("onmouseover", "this.style.textDecoration=\"underline\";");
  629. td[3].setAttribute("onmouseout", "this.style.textDecoration=\"none\";");
  630. }
  631. }
  632.  
  633. var AS =0;
  634. var GS =parseInt(skills[0]) +parseInt(skills[4]) +parseInt(skills[5]) +parseInt(skills[6]);
  635. var CS =parseInt(skills[0]) +parseInt(skills[6]) +parseInt(skills[7]) +parseInt(skills[8]);
  636. for(var i= 0; i< 9; i++)
  637. AS += parseInt(skills[i]);
  638.  
  639. var y = tr[0].getElementsByTagName("td")[0];
  640. y.removeAttribute("height");
  641. y.setAttribute("style", "text-align: center;");
  642. y.setAttribute("id", "geesy");
  643. y.innerHTML ="GS: "+ GS +"&nbsp;&nbsp;&nbsp;&nbsp;CS: "+ CS +"&nbsp;&nbsp;&nbsp;&nbsp;AS: "+ AS;
  644.  
  645. var nowy = document.createElement("div");
  646. document.getElementById("mc").getElementsByClassName("mc-ls")[0].insertBefore(nowy, document.getElementById("mc").getElementsByClassName("mc-ls")[0].childNodes[6]);
  647. var pos = document.cookie.indexOf("plan=");
  648. if(pos != -1){
  649. var pos2 =document.cookie.indexOf(";", pos);
  650. var ciastko;
  651. if(pos2 == -1) ciastko = document.cookie.substring(pos+5);
  652. else ciastko = document.cookie.substring(pos+5, pos2);
  653.  
  654. var plany = ciastko.split("&");
  655.  
  656. for(i=0; i<plany.length;i++){
  657. var tab =plany[i].split(".");
  658. var testbutton = document.createElement("button");
  659. testbutton.setAttribute("class","button white small");
  660. testbutton.innerHTML = tab[0];
  661.  
  662.  
  663. testbutton.addEventListener('click', function() {
  664. //alert("Working");
  665. klikPlan(this.innerHTML);
  666. }, false);
  667.  
  668.  
  669. nowy.appendChild(testbutton);
  670. }
  671.  
  672. var testbutton = document.createElement("button");
  673. testbutton.setAttribute("class","button white small");
  674. testbutton.innerHTML =slownik[language]["Wyczyść"];
  675.  
  676. testbutton.addEventListener('click', function() {
  677. //alert("Working");
  678. wyczysc();
  679. }, false);
  680.  
  681.  
  682. nowy.appendChild(testbutton);
  683.  
  684. //nowy.innerHTML += "<button type='button' class='button white' onclick='wyczysc();'>" + slownik[language]["Wyczyść"] + "</button>";
  685.  
  686. }
  687.  
  688.  
  689.  
  690. }
  691.  
  692. else{
  693. var e= document.getElementsByClassName("mc-ls")[0];
  694. var table =e.getElementsByTagName("table")[1];
  695. var tr = table.getElementsByTagName("tr");
  696. var skills =new Array(10);
  697. var istart =tr.length -5;
  698. for(var i= istart; i< istart +5; i++){
  699. var td =tr[i].getElementsByTagName("td");
  700. skills[(i-istart)*2] =td[1].innerHTML;
  701. skills[(i-istart)*2+1] =td[4].innerHTML;
  702. td[0].setAttribute("onclick", "extraTrening('" + ((i-istart)*2) + "');");
  703. td[0].setAttribute("onmouseover", "this.style.textDecoration=\"underline\";");
  704. td[0].setAttribute("onmouseout", "this.style.textDecoration=\"none\";");
  705. if((i-istart)*2+1 != 9){
  706. td[3].setAttribute("onclick", "extraTrening('" + ((i-istart)*2+1) + "');");
  707. td[3].setAttribute("onmouseover", "this.style.textDecoration=\"underline\";");
  708. td[3].setAttribute("onmouseout", "this.style.textDecoration=\"none\";");
  709. }
  710. }
  711.  
  712. var AS =0;
  713. var GS =parseInt(skills[0]) +parseInt(skills[4]) +parseInt(skills[5]) +parseInt(skills[6]);
  714. var CS =parseInt(skills[0]) +parseInt(skills[6]) +parseInt(skills[7]) +parseInt(skills[8]);
  715. for(var i= 0; i< 9; i++)
  716. AS += parseInt(skills[i]);
  717.  
  718. var y = tr[0].getElementsByTagName("td")[0];
  719. y.removeAttribute("height");
  720. y.setAttribute("style", "text-align: center;");
  721. y.setAttribute("id", "geesy");
  722. y.innerHTML ="GS: "+ GS +"&nbsp;&nbsp;&nbsp;&nbsp;CS: "+ CS +"&nbsp;&nbsp;&nbsp;&nbsp;AS: "+ AS;
  723.  
  724. var nowy = document.createElement("div");
  725. var pos = document.cookie.indexOf("plan=");
  726. if(pos != -1){
  727. var pos2 =document.cookie.indexOf(";", pos);
  728. var ciastko;
  729. if(pos2 == -1) ciastko = document.cookie.substring(pos+5);
  730. else ciastko = document.cookie.substring(pos+5, pos2);
  731.  
  732. var plany = ciastko.split("&");
  733. for(i in plany){
  734. var tab =plany[i].split(".");
  735. nowy.innerHTML += "<button type='button' class='button white' onclick='klikPlan(\"" + tab[0] + "\");'>" + tab[0] + "</button>";
  736. }
  737. nowy.innerHTML += "<button type='button' class='button white' onclick='wyczysc();'>" + slownik[language]["Wyczyść"] + "</button>";
  738. }
  739. document.getElementById("mc").getElementsByClassName("mc-ls")[0].insertBefore(nowy, document.getElementById("mc").getElementsByClassName("mc-ls")[0].childNodes[4]);
  740. }
  741.  
  742.  
  743. })();
  744.  
  745.