OS2.haupt: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
SLC (Diskussion | Beiträge) (OS2.haupt, Version 0.1) |
SLC (Diskussion | Beiträge) (Update Version 0.11 (@include erweitert)) |
||
| Zeile 7: | Zeile 7: | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Version''' | | '''Version''' | ||
| '''0. | | '''0.2''' | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Autor''' | | '''Autor''' | ||
| Zeile 29: | Zeile 29: | ||
// @name OS2.haupt | // @name OS2.haupt | ||
// @namespace http://os.ongapo.com/ | // @namespace http://os.ongapo.com/ | ||
// @version 0. | // @version 0.11 | ||
// @copyright 2016+, Sven Loges (SLC) | // @copyright 2016+, Sven Loges (SLC) | ||
// @description Managerbuero-Abschnitt aus dem Master-Script fuer Online Soccer 2.0 | // @description Managerbuero-Abschnitt aus dem Master-Script fuer Online Soccer 2.0 | ||
// @include http://os.ongapo.com/haupt.php | // @include http://os.ongapo.com/haupt.php | ||
// @include http://os.ongapo.com/haupt.php?changetosecond=* | |||
// @include http://www.online-soccer.eu/haupt.php | // @include http://www.online-soccer.eu/haupt.php | ||
// @include http://www.online-soccer.eu/haupt.php?changetosecond=* | |||
// @include http://online-soccer.eu/haupt.php | |||
// @include http://online-soccer.eu/haupt.php?changetosecond=* | |||
// @grant none | // @grant none | ||
// ==/UserScript== | // ==/UserScript== | ||
Version vom 29. Mai 2016, 01:06 Uhr
| OS2.haupt | |
| Dateiname | os2.haupt.user.js |
| Version | 0.2 |
| Autor | Sven Loges (SLC), Choromonets Odessa |
| Beschreibung | Strukturiert und erweitert das Managerbüro eines OS2-Teams |
| Webseiten | haupt.php Managerbüro |
| Funktionalität | Vorschau für das letzte Spiel: Bilanz |
| Letzte Änderung | 29.05.2016 |
// ==UserScript==
// @name OS2.haupt
// @namespace http://os.ongapo.com/
// @version 0.11
// @copyright 2016+, Sven Loges (SLC)
// @description Managerbuero-Abschnitt aus dem Master-Script fuer Online Soccer 2.0
// @include http://os.ongapo.com/haupt.php
// @include http://os.ongapo.com/haupt.php?changetosecond=*
// @include http://www.online-soccer.eu/haupt.php
// @include http://www.online-soccer.eu/haupt.php?changetosecond=*
// @include http://online-soccer.eu/haupt.php
// @include http://online-soccer.eu/haupt.php?changetosecond=*
// @grant none
// ==/UserScript==
// Ermittelt die Spielart aus einer Tabellenzelle, etwa "Liga : Heim" und liefert zwei Werte zurueck
// cell Tabellenzelle mit Eintrag "Liga : Heim" oder "Liga Heim"
// return { "Liga", "Heim" } im Beispiel
function getSpielArtFromCell(cell) {
var ret = cell.textContent.split(" ", 2);
if (ret.length > 1) {
// Alle ":" und " " raus...
ret[1] = ret[1].replace(":", "").replace(" ", "");
}
return ret;
}
// Gibt die ID fuer den Namen eines Wettbewerbs zurueck
// gameType Name des Wettbewerbs eines Spiels
// return OS2-ID für den Spieltyp (1 bis 7)
function getGameTypeID(gameType) {
var ID = -1;
switch (gameType) {
case "Friendly": ID = 1; break;
case "Liga": ID = 2; break;
case "LP": ID = 3; break;
case "OSEQ": ID = 4; break;
case "OSE": ID = 5; break;
case "OSCQ": ID = 6; break;
case "OSC": ID = 7; break;
default: ID = 0; break;
}
return ID;
}
// Gibt die ID fuer den Namen eines Wettbewerbs zurueck
// cell Tabellenzelle mit Link auf den Spielberichts-Link
// gameType Name des Wettbewerbs eines Spiels
// label Anzuklickender Text des neuen Links
// return HTML-Link auf die Preview-Seite für diesen Spielbericht
function getBilanzLinkFromCell(cell, gameType, label) {
var bericht = cell.textContent;
var gameTypeID = getGameTypeID(gameType);
var ret = "";
if (bericht != "Vorschau") { // Nur falls Link nicht bereits vorhanden
if (gameTypeID > 1) { // nicht möglich für "Friendly" bzw. "spielfrei"
var searchFun = "javascript:os_bericht(";
var paarung = cell.innerHTML.substr(cell.innerHTML.indexOf(searchFun) + searchFun.length);
paarung = paarung.substr(0, paarung.indexOf(")"));
paarung = paarung.substr(0, paarung.lastIndexOf(","));
paarung = paarung.substr(0, paarung.lastIndexOf(","));
ret = " <a href=\"javascript:spielpreview(" + paarung + "," + gameTypeID + ")\">" + label + "</a>";
}
}
return ret;
}
// Addiert einen Link auf die Bilanz hinter den Spielberichts-Link
// cell Tabellenzelle mit Link auf den Spielberichts-Link
// gameType Name des Wettbewerbs eines Spiels
// label Anzuklickender Text des neuen Links
function addBilanzLinkToCell(cell, gameType, label) {
var bilanzLink = getBilanzLinkFromCell(cell, gameType, label);
if (bilanzLink != "") {
cell.innerHTML += bilanzLink;
}
}
// Verarbeitet Ansicht "Haupt" (Managerbuero)
function procHaupt() {
var table = document.getElementsByTagName("table")[2];
var columnIndexArt = 1;
var columnIndexBer = 2;
var spielart = getSpielArtFromCell(table.rows[0].cells[columnIndexArt]);
var gameType = spielart[0];
addBilanzLinkToCell(table.rows[0].cells[columnIndexBer], gameType, "(Bilanz)");
}
procHaupt();
// *** EOF ***