Bearbeiten von „OS2.spielplan“
Zur Navigation springen
Zur Suche springen
Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.
Aktuelle Version | Dein Text | ||
Zeile 1: | Zeile 1: | ||
[[Kategorie: | [[Kategorie:GreaseMonkey]] | ||
{| style="background-color:white; font-size:11px; float: right; margin:3px 3px 3px 10px; border:1px solid #999; border-color: #9C1818; border-collapse:collapse;" width=500 cellpadding=3 cellspacing=0 | {| style="background-color:white; font-size:11px; float: right; margin:3px 3px 3px 10px; border:1px solid #999; border-color: #9C1818; border-collapse:collapse;" width=500 cellpadding=3 cellspacing=0 | ||
| colspan="2" style="padding:0.3em; background-color:#9C1818; font-size: 18px; color:#FFFFFF" align=center| '''OS2.spielplan''' | | colspan="2" style="padding:0.3em; background-color:#9C1818; font-size: 18px; color:#FFFFFF" align=center| '''OS2.spielplan''' | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Dateiname''' | | '''Dateiname''' | ||
| ''' | | '''os2.spielplan.user.js''' | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Version''' | | '''Version''' | ||
| '''0. | | '''0.1''' | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Autor''' | | '''Autor''' | ||
Zeile 20: | Zeile 19: | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Funktionalität''' | | '''Funktionalität''' | ||
| '''Trennstriche zwischen den Abrechnungsmonaten'''<br> '''Verkürzung von "Vorbericht(e)" und "Kommentar(e)"'''<br> '''Details zu den Spielen | | '''Trennstriche zwischen den Abrechnungsmonaten'''<br> '''Verkürzung von "Vorbericht(e)" und "Kommentar(e)"'''<br> '''Details zu den Spielen''' | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Letzte Änderung''' | | '''Letzte Änderung''' | ||
Zeile 26: | Zeile 25: | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
|} | |} | ||
<pre> | <pre> | ||
// ==UserScript== | // ==UserScript== | ||
// @name | // @name OS2.spielplan | ||
// @namespace | // @namespace http://os.ongapo.com/ | ||
// @version | // @version 0.1 | ||
// @copyright | // @copyright 2013+, Sven Loges (SLC) | ||
// @description Spielplan-Abschnitt aus dem Master-Script fuer Online Soccer 2.0 | |||
// @description | // @include http://os.ongapo.com/st.php?s=* | ||
// @include | // @include http://os.ongapo.com/showteam.php?s=* | ||
// @ | // @include http://www.os.ongapo.com/st.php?s=* | ||
// @ | // @include http://www.os.ongapo.com/showteam.php?s=* | ||
// @ | // @include http://online-soccer.eu/st.php?s=* | ||
// | // @include http://online-soccer.eu/showteam.php?s=* | ||
/ | // @include http://www.online-soccer.eu/st.php?s=* | ||
// @ | // @include http://www.online-soccer.eu/showteam.php?s=* | ||
// @ | |||
// | |||
// @ | |||
// | |||
/ | |||
// ==/UserScript== | // ==/UserScript== | ||
// | // URL-Legende: | ||
// s=0Teamübersicht | |||
// s=1Vertragsdaten | |||
// s=2Einzelwerte | |||
// s=3Statistik Saison | |||
// s=4Statistik Gesamt | |||
// s=5Teaminfo | |||
// s=6Saisonplan | |||
// s=7Vereinshistorie | |||
// s=8Transferhistorie | |||
// s=9Leihhistorie | |||
// | |||
// | |||
// = | |||
// | |||
// | |||
// | |||
// | |||
// Optionen (hier editieren): | |||
sepMonths = true; // Im Spielplan Striche zwischen den Monaten | |||
shortKom = true; // Vorbericht(e) & Kommentar(e) nicht ausschreiben | |||
// | // Variablen zur Identifikation der Seite | ||
var st = false; // Teamansicht Popupfenster | |||
var showteam = false; // Teamansicht Hauptfenster | |||
var s = -1; // Seitenindex | |||
url = window.location.href; | |||
borderString = "solid white 1px"; | |||
// Seite ermitteln | |||
if (url.match(/st\.php/)) { st = true; } | |||
if (url.match(/showteam\.php/)) { showteam = true; } | |||
// Wenn nicht Spielerprofil, dann Wert von s (Seitenindex) ermitteln | |||
// Annahme: Entscheidend ist jeweils das letzte Vorkommnis von "s=" und ggf. von "&" | |||
indexS = url.lastIndexOf("s="); | |||
if (indexS < 0) { | |||
s = 0; | |||
} else if (showteam) { | |||
// Wert von s setzt sich aus allen Zeichen hinter "s=" zusammen | |||
s = parseInt(url.substring(indexS + 2, url.length)); | |||
} else { | |||
// Wert von s setzt sich aus allen Zeichen zwischen "s=" und "&" zusammen | |||
indexAmpersand = url.lastIndexOf("&"); | |||
s = parseInt(url.substring(indexS + 2, indexAmpersand)); | |||
} | } | ||
// | // Verzweige in unterschiedliche Verarbeitungen je nach Wert von s: | ||
switch (s) { | |||
case 6: procSpielplan(sepMonths, shortKom); break; | |||
} | } | ||
// Verarbeitet Ansicht "Saisonplan" | // Verarbeitet Ansicht "Saisonplan" | ||
function procSpielplan() { | // sepMonths Im Spielplan Striche zwischen den Monaten | ||
// shortKom Vorbericht(e) & Kommentar(e) nicht ausschreiben | |||
function procSpielplan(sepMonths, shortKom) { | |||
table = document.getElementsByTagName("table")[1]; | |||
saisons = document.getElementsByTagName("option"); | |||
var saison = 0; | |||
for (var i = 0; i < saisons.length; i++) { | |||
if (saisons[i].outerHTML.indexOf("selected") > -1) { | |||
saison = saisons[i].textContent; | |||
} | |||
} | |||
anzZATperMonth = (saison < 2) ? 7 : 6; | |||
rowOffsetUpper = 1; | |||
rowOffsetLower = 0; | |||
columnIndexArt = 1; | |||
columnIndexZus = 5; | |||
columnIndexKom = 6; | |||
pokalRunden = new Array("1. Runde", "2. Runde", "3. Runde", "Achtelfinale", "Viertelfinale", "Halbfinale", "Finale"); | |||
qualiRunden = new Array("Quali 1", "Quali 2", "Quali 3"); | |||
oscRunden = new Array("Viertelfinale", "Halbfinale", "Finale"); | |||
oseRunden = new Array("Runde 1", "Runde 2", "Runde 3", "Runde 4", "Achtelfinale", "Viertelfinale", "Halbfinale", "Finale"); | |||
hinrueck = new Array(" Hin", " Rück", ""); | |||
var ligaSpieltag = 0; | |||
var pokalRunde = 0; | |||
var euroRunde = -1; | |||
var hinrueckspiel = 0; | |||
var ZATrueck = 0; | |||
var ZATkorr = 0; | |||
var ZAT = 1; | |||
for (var i = rowOffsetUpper; i < table.rows.length - rowOffsetLower; i++, ZAT++) { | |||
if ((ZAT > 12) && (ZAT % 10 == 5)) { // paßt für alle Saisons: 12, 20, 30, 40, 48, 58, 68 / 3, 15, 27, 39, 51, 63, 69 | |||
pokalRunde++; | |||
} | |||
if ((ZAT + ZATkorr) % 6 == 4) { | |||
if (ZAT < 63) { | |||
ZATrueck = ZAT + 2; | |||
euroRunde++; | |||
hinrueckspiel = 0; | |||
} else { | |||
euroRunde = 10; // Finale | |||
hinrueckspiel = 2; | |||
} | |||
} | |||
if (ZAT == ZATrueck) { | |||
hinrueckspiel = 1; // 5, 7; 11, 13; (17, 19) / 23, 25; 29, 31; 35, 37; 41, 43; 47, 49; 53, 55; 59, 61; 69 | |||
if (saison < 3) { // 4, 6; 10, 14*; (16, 22*) / 24**, 26; 34, 36; 38*, 42; 44*, 50; 52, 54; 56*, 60; 62*, 66; 70 | |||
if ((ZAT < 18) || (ZAT == 26) || (ZAT == 46)) { | |||
ZATkorr = 0; | |||
} else if (ZAT == 22) { | |||
ZATkorr = 4; | |||
} else { | |||
ZATkorr = 2; | |||
} | |||
if ((ZAT == 22) || (ZAT == 30)) { | |||
euroRunde--; // Früher: 3. Quali-Rückspiel erst knapp vor 1. Hauptrunde | |||
} | |||
} | |||
} | |||
if (shortKom) { | |||
kommentar = table.rows[i].cells[columnIndexKom].innerHTML; | |||
table.rows[i].cells[columnIndexKom].innerHTML = kommentar.replace("Vorbericht(e)", "V").replace("Kommentar(e)", "K").replace("&", "/"); | |||
} | |||
spielart = table.rows[i].cells[columnIndexArt].textContent.split(" : ", 2); | |||
table.rows[i].cells[columnIndexZus].className = table.rows[i].cells[columnIndexArt].className; | |||
if (table.rows[i].cells[columnIndexZus].textContent == "") { | |||
var zusatz = spielart[0]; | |||
if (zusatz == "Liga") { | |||
if (ZAT < 70) { | |||
zusatz = ++ligaSpieltag + ". Spieltag"; | |||
} else { | |||
zusatz = "Relegation"; | |||
} | |||
} else if (zusatz == "LP") { | |||
zusatz = pokalRunden[pokalRunde]; | |||
} else if ((zusatz == "OSCQ") || (zusatz == "OSEQ")) { | |||
zusatz = qualiRunden[euroRunde] + hinrueck[hinrueckspiel]; | |||
} else if (zusatz == "OSC") { | |||
if (euroRunde < 8) { | |||
gruppenPhase = (euroRunde < 5) ? "HR-Grp. " : "ZR-Grp. "; | |||
zusatz = gruppenPhase + "Spiel " + (((euroRunde - 2) % 3) * 2 + 1 + hinrueckspiel); | |||
} else { | |||
zusatz = oscRunden[euroRunde - 8] + hinrueck[hinrueckspiel]; | |||
} | |||
} else if (zusatz == "OSE") { | |||
zusatz = oseRunden[euroRunde - 3] + hinrueck[hinrueckspiel]; | |||
} else if (zusatz == "Friendly") { | |||
zusatz = ""; // irgendwie besser lesbar! | |||
} | |||
table.rows[i].cells[columnIndexZus].textContent = zusatz; | |||
} | |||
if (sepMonths && (ZAT % anzZATperMonth == 0) && (i < table.rows.length - rowOffsetLower - 1)) { | |||
for (var j = 0; j < table.rows[i].cells.length; j++) { | |||
table.rows[i].cells[j].style.borderBottom = borderString; | |||
} | |||
} | |||
} | |||
} | } | ||
// *** EOF *** | // *** EOF *** | ||
</pre> | </pre> |