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 8: | Zeile 8: | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Version''' | | '''Version''' | ||
| '''0. | | '''0.72 (WebExtensions)''' | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Autor''' | | '''Autor''' | ||
Zeile 20: | Zeile 20: | ||
|- 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'''<br> '''Ergebnisse aufaddieren'''<br> '''Nachträgliche Vorschau: Bilanz'''<br> '''Benutzermenü für Optionen'''<br> '''Erweiterte Optionen auch auf der Seite'''<br> '''Link auf den jeweiligen Spieltag bzw. die jeweilige Runde'''<br> '''Interaktive Menü-Optionen'''<br> '''Gemeinsame Code- und Datenbasis | | '''Trennstriche zwischen den Abrechnungsmonaten'''<br> '''Verkürzung von "Vorbericht(e)" und "Kommentar(e)"'''<br> '''Details zu den Spielen'''<br> '''Ergebnisse aufaddieren'''<br> '''Nachträgliche Vorschau: Bilanz'''<br> '''Benutzermenü für Optionen'''<br> '''Erweiterte Optionen auch auf der Seite'''<br> '''Link auf den jeweiligen Spieltag bzw. die jeweilige Runde'''<br> '''Interaktive Menü-Optionen'''<br> '''Gemeinsame Code- und Datenbasis''' | ||
|- bgcolor="#FFCC00" | |- bgcolor="#FFCC00" | ||
| '''Letzte Änderung''' | | '''Letzte Änderung''' | ||
Zeile 32: | Zeile 32: | ||
// @name OS2.spielplan | // @name OS2.spielplan | ||
// @namespace http://os.ongapo.com/ | // @namespace http://os.ongapo.com/ | ||
// @version 0. | // @version 0.72+WE+ | ||
// @copyright 2013+ | // @copyright 2013+ | ||
// @author Sven Loges (SLC) | // @author Sven Loges (SLC) | ||
// @description Spielplan-Abschnitt aus dem Master-Script fuer Online Soccer 2.0 | // @description Spielplan-Abschnitt aus dem Master-Script fuer Online Soccer 2.0 | ||
// @include /^https?://(www\.)?(os\.ongapo\.com|online-soccer\.eu|os-zeitungen\.com)/(st|showteam)\.php\?s=6(&\ | // @include /^https?://(www\.)?(os\.ongapo\.com|online-soccer\.eu|os-zeitungen\.com)/(st|showteam)\.php\?s=6(&\S+)*$/ | ||
// @grant GM.getValue | // @grant GM.getValue | ||
// @grant GM.setValue | // @grant GM.setValue | ||
Zeile 176: | Zeile 176: | ||
'FormLabel' : "Dicke:|$" | 'FormLabel' : "Dicke:|$" | ||
}, | }, | ||
'saison' : { // | 'saison' : { // Laufende Saison | ||
'Name' : "saison", | 'Name' : "saison", | ||
'Type' : __OPTTYPES.MC, | 'Type' : __OPTTYPES.MC, | ||
Zeile 182: | Zeile 182: | ||
'FreeValue' : true, | 'FreeValue' : true, | ||
'SelValue' : false, | 'SelValue' : false, | ||
'Choice' : [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 | 'Choice' : [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 ], | ||
'Default' : | 'Default' : 12, | ||
'Action' : __OPTACTION.NXT, | 'Action' : __OPTACTION.NXT, | ||
'Label' : "Saison: $", | 'Label' : "Saison: $", | ||
'Hotkey' : ' | 'Hotkey' : 'a', | ||
'FormLabel' : "Saison:|$" | 'FormLabel' : "Saison:|$" | ||
}, | }, | ||
Zeile 206: | Zeile 206: | ||
'Serial' : true, | 'Serial' : true, | ||
'Permanent' : true, | 'Permanent' : true, | ||
'Default' : undefined, // new Team() // { 'Team' : undefined, 'Liga' : undefined, 'Land' : undefined | 'Default' : undefined, // new Team() // { 'Team' : undefined, 'Liga' : undefined, 'Land' : undefined, 'LdNr' : 0, 'LgNr' : 0 } | ||
'Submit' : undefined, | 'Submit' : undefined, | ||
'Cols' : 36, | 'Cols' : 36, | ||
Zeile 3.249: | Zeile 3.249: | ||
// Klasse fuer Teamdaten | // Klasse fuer Teamdaten | ||
function Team(team, land, liga) { | |||
'use strict'; | |||
this.Team = team; | |||
this.Land = land; | |||
this.Liga = liga; | |||
this.LdNr = getLandNr(land); | |||
this.LgNr = getLigaNr(liga); | |||
} | |||
Class.define(Team, Object, { | Class.define(Team, Object, { | ||
Zeile 3.268: | Zeile 3.264: | ||
'Liga' : true, | 'Liga' : true, | ||
'Land' : true, | 'Land' : true, | ||
'LdNr' : true, | 'LdNr' : true, | ||
'LgNr' : true | 'LgNr' : true | ||
Zeile 3.279: | Zeile 3.274: | ||
// Klasse fuer Vereinsdaten | // Klasse fuer Vereinsdaten | ||
function Verein(team, land, liga, id, manager, flags) { | |||
'use strict'; | |||
Team.call(this, team, land, liga); | |||
this.ID = id; | |||
this.Manager = manager; | |||
this.Flags = (flags || []); | |||
} | |||
Class.define(Verein, Team, { | Class.define(Verein, Team, { | ||
Zeile 3.296: | Zeile 3.289: | ||
'Liga' : true, | 'Liga' : true, | ||
'Land' : true, | 'Land' : true, | ||
'LdNr' : true, | 'LdNr' : true, | ||
'LgNr' : true, | 'LgNr' : true, | ||
'ID' : true, | |||
'Manager' : true, | 'Manager' : true, | ||
'Flags' : true | 'Flags' : true | ||
Zeile 3.321: | Zeile 3.314: | ||
// Gibt die Teamdaten zurueck und aktualisiert sie ggfs. in der Option | // Gibt die Teamdaten zurueck und aktualisiert sie ggfs. in der Option | ||
// optSet: Platz fuer die gesetzten Optionen | // optSet: Platz fuer die gesetzten Optionen | ||
// teamParams: Dynamisch ermittelte Teamdaten ('Team', 'Liga', 'Land | // teamParams: Dynamisch ermittelte Teamdaten ('Team', 'Liga', 'Land', 'LdNr' und 'LgNr') | ||
// myTeam: Objekt fuer die Teamdaten | // myTeam: Objekt fuer die Teamdaten | ||
// return Die Teamdaten oder undefined bei Fehler | // return Die Teamdaten oder undefined bei Fehler | ||
Zeile 3.416: | Zeile 3.409: | ||
this.uri.setQueryPar('landauswahl', team.LdNr); | this.uri.setQueryPar('landauswahl', team.LdNr); | ||
this.uri.setQueryPar('ligaauswahl', team.LgNr); | this.uri.setQueryPar('ligaauswahl', team.LgNr); | ||
}, | |||
'setPage' : function(page, label) { | 'setPage' : function(page, label) { | ||
this.uri.home(); | this.uri.home(); | ||
Zeile 4.093: | Zeile 4.086: | ||
const __TEAMSEARCHHAUPT = { // Parameter zum Team "<b>Willkommen im Managerbüro von TEAM</b><br>LIGA LAND<a href=..." | const __TEAMSEARCHHAUPT = { // Parameter zum Team "<b>Willkommen im Managerbüro von TEAM</b><br>LIGA LAND<a href=..." | ||
'Zeile' : 0, | |||
'Zeile' | 'Spalte' : 1, | ||
'Spalte' | 'start' : " von ", | ||
'start' | 'middle' : "</b><br>", | ||
'middle' | 'liga' : ". Liga", | ||
'liga' | 'land' : ' ', | ||
'land' | 'end' : "<a href=" | ||
'end' | |||
}; | }; | ||
const __TEAMSEARCHTEAM = { // Parameter zum Team "<b>TEAM - LIGA <a href=...>LAND</a></b>" | const __TEAMSEARCHTEAM = { // Parameter zum Team "<b>TEAM - LIGA <a href=...>LAND</a></b>" | ||
'Zeile' : 0, | |||
'Zeile' | 'Spalte' : 0, | ||
'Spalte' | 'start' : "<b>", | ||
'start' | 'middle' : " - ", | ||
'middle' | 'liga' : ". Liga", | ||
'liga' | 'land' : 'target="_blank">', | ||
'land' | 'end' : "</a></b>" | ||
'end | |||
}; | }; | ||
// Ermittelt, wie das eigene Team heisst und aus welchem Land bzw. Liga es kommt (zur Unterscheidung von Erst- und Zweitteam) | // Ermittelt, wie das eigene Team heisst und aus welchem Land bzw. Liga es kommt (zur Unterscheidung von Erst- und Zweitteam) | ||
// | // cell: Tabellenzelle mit den Parametern zum Team "startTEAMmiddleLIGA...landLANDend", LIGA = "#liga[ (A|B|C|D)]" | ||
// teamSeach: Muster fuer die Suche, die Eintraege fuer 'start', 'middle', 'liga', 'land' und 'end' enthaelt | |||
// | // return Im Beispiel { 'Team' : "TEAM", 'Liga' : "LIGA", 'Land' : "LAND", 'LdNr' : LAND-NUMMER, 'LgNr' : LIGA-NUMMER }, | ||
// z.B. { 'Team' : "Choromonets Odessa", 'Liga' : "1. Liga", 'Land' : "Ukraine", 'LdNr' : 20, 'LgNr' : 1 } | |||
function getTeamParamsFromTable(table, teamSearch = undefined) { | |||
// return Im Beispiel { 'Team' : "TEAM", 'Liga' : "LIGA", 'Land' : "LAND" | |||
// z.B. { 'Team' : "Choromonets Odessa", 'Liga' : "1. Liga", 'Land' : "Ukraine" | |||
function getTeamParamsFromTable(teamSearch | |||
const __TEAMSEARCH = getValue(teamSearch, __TEAMSEARCHHAUPT); | const __TEAMSEARCH = getValue(teamSearch, __TEAMSEARCHHAUPT); | ||
const __TEAMCELLROW = getValue(__TEAMSEARCH.Zeile, 0); | const __TEAMCELLROW = getValue(__TEAMSEARCH.Zeile, 0); | ||
const __TEAMCELLCOL = getValue(__TEAMSEARCH.Spalte, 0); | const __TEAMCELLCOL = getValue(__TEAMSEARCH.Spalte, 0); | ||
const __TEAMCELLSTR = ( | const __TEAMCELLSTR = (table === undefined) ? "" : table.rows[__TEAMCELLROW].cells[__TEAMCELLCOL].innerHTML; | ||
const __SEARCHSTART = __TEAMSEARCH.start; | const __SEARCHSTART = __TEAMSEARCH.start; | ||
const __SEARCHMIDDLE = __TEAMSEARCH.middle; | const __SEARCHMIDDLE = __TEAMSEARCH.middle; | ||
Zeile 4.174: | Zeile 4.144: | ||
} | } | ||
const __TEAM = new Team(__TEAMNAME, land, liga); | |||
const __TEAM = new Team(__TEAMNAME, land, liga | |||
return __TEAM; | return __TEAM; | ||
Zeile 4.254: | Zeile 4.211: | ||
}; | }; | ||
const __TEAMPARAMS = getTeamParamsFromTable(__TEAMSEARCHTEAM | const __TEAMPARAMS = getTeamParamsFromTable(getTable(1), __TEAMSEARCHTEAM); // Link mit Team, Liga, Land... | ||
return buildOptions(__OPTCONFIG, __OPTSET, { | return buildOptions(__OPTCONFIG, __OPTSET, { |