svennickel 1a111b792f Je Satz in allen drei Punkteskalen, systematisch kodiert
Sven 2026-09-09: „Bei ‚Spielpunkt' ‚Für jeden Satz einzeln': hier wuerde ich
analog zu den Auswahlen oben ergaenzend noch ‚Sieg: 1 Punkt' und ‚Sieg: 3 Punkte,
Unentschieden: 1 Punkt' noch mit vorsehen wollen in geeigneter Reihenfolge." Und:
„solange es kompatibel zu dem Stand vor #304/#306 ist" — der Wert des Modus war
also frei gestaltbar.

Statt weitere Einzelwerte anzuhaengen (4, dann 5, dann 6) traegt der Wert die
Bedeutung jetzt selbst:

    Wert % 10  = die Punkteskala   (0 = Sieg 2/Remis 1, 1 = Sieg 3/Remis 1,
                                    2 = ohne Umrechnung, 3 = Sieg 1)
    Wert >= 10 = je SATZ statt je Spiel

    je Spiel:  3   0   1   2        je Satz:  13  10  11
                                              ^^  ^^  ^^ dieselbe Skala, +10

Die ueberlieferten Werte 0 bis 3 behalten damit ihre Bedeutung unveraendert —
das ist die geforderte Kompatibilitaet zum Stand vor #304. Und jede der drei
Rechenstellen leitet Siegwert und Remiswert aus demselben Grundwert ab, statt
einen Sonderfall je Wert zu fuehren: aus einer Fallunterscheidung mit vier
Zweigen wurden zwei Zeilen.

Der Entwicklungswert 4 (nur in #306, nie ausgeliefert) entfaellt ersatzlos; er
existierte allein auf dem Testserver und ist dort auf 10 gesetzt. Deshalb auch
keine Migration dafuer — in keiner Installation steht er.

Der Server nimmt nur noch die sieben gueltigen Werte an; alles andere faellt auf
0 zurueck. Fehlt die Satzerfassung, faellt eine Je-Satz-Wertung auf IHRE EIGENE
Skala je Spiel zurueck (13 -> 3, nicht mehr pauschal auf 0): die gewaehlte
Punkteskala ist eine andere Aussage als die Bezugsebene und bleibt erhalten.

VERIFIZIERT, alles gemessen statt angenommen:

1. Bestand unveraendert: Ausgangsstand gesichert, alle sieben Pruefmodi ueber die
   echten Formulare neu gespeichert, 784-Zeilen-Dump aller wertungsrelevanten
   Tabellen — IDENTISCH. Am Ende, nach dem Durchlauf aller drei neuen Skalen und
   Ruecksetzen auf 10, erneut identisch.
2. Spielpunkte je Skala gegen eine UNABHAENGIGE Nachrechnung in Python (parst
   ergebnis_detailliert selbst, kein PHP beteiligt): 8 Spiele + 3 Begegnungen,
   je Skala 0 Abweichungen. Darunter der Faelligkeitsfall, dass „Sieg 1 Punkt"
   fuer Unentschieden NICHTS gibt (Spiel mit 1 Sieg, 1 Niederlage, 2 Remis:
   1:1 statt 2:2) und der Rueckfall ohne Satzdetails (Skala x Satzsiege).
3. Spielerstatistik je Skala gegen dieselbe Art Nachrechnung: 7 Spieler, je
   Skala 0 Abweichungen. Siege/Unentschieden/Niederlagen sind ueber alle Skalen
   gleich (die Skala aendert nur Spielpunkte, nicht wer einen Satz gewann), die
   Spielpunkte skalieren mit 1/2/3.
4. Das erzeugte JavaScript traegt je Skala die passenden Faktoren
   (1*/0*, 2*/1*, 3*/1*) — aus der gerenderten Seite gelesen.
5. Die Auswahl zeigt drei Je-Satz-Eintraege in derselben Reihenfolge wie oben
   (Sieg 1, Sieg 2/Remis 1, Sieg 3/Remis 1); ohne Satzerfassung bleibt die ganze
   Gruppe verborgen.

Der Warnhinweis spricht nicht mehr von „2 Punkten je gewonnenem Satz", sondern
vom vollen Siegwert — mit drei Skalen waere die Zahl falsch gewesen.
2026-09-09 22:52:18 +02:00
2020-12-04 11:11:35 +01:00
2020-12-04 11:11:35 +01:00
2020-12-04 11:11:35 +01:00
2020-12-04 11:11:35 +01:00
2020-12-04 11:11:35 +01:00
2026-09-02 11:33:38 +02:00

SportsManager

DEV/STAGE environments

LV HOSTER DOMAIN BRANCH
DTFB Kicktemp stage.dtfb.de dev
TFVHH Kicktemp stage.kickern-hamburg.de dev
STFVH DTFB stage.stfv.de sportsmanager2-stage
MTFV DTFB stage.mtfv.de ?
TFVSH DTFB relaunch.tfvsh.de ?

PROD environments

LV HOSTER DOMAIN BRANCH
DTFB Kicktemp dtfb.de production
TFVHH Kicktemp kickern-hamburg.de production
MTFV DTFB mtfv.de sportsmanager2-prod
TFVSH DTFB tfvsh.de sportsmanager2-prod
STFVH DTFB stfv.de sportsmanager2-prod

Test setup

Installation

To start joomla and the database, run

   docker-compose up -d

Release creation

To create a release execute

    npm run release

Deployment

Deployment can only be done manually right now (sad)
To do this go to Testserver Extension Installer Site and upload the zip file found in ./package/packages

Development Tools

If you are using Intellij, there is a plugin named Joomla! which helps with resolving joomla specific database prefixes like #__
To set it up, insert into the configuration popup which follows after you enable the framework support:
Joomla install path: ./data/joomla_data
JConfig: ./data/joomla_data/configuration.php

This works only with mounted volumes. However, mounted volumes will slow down the joomla instance significantly.
The current setup does not use mounted volumes. An alternative would be to download joomla and use that installation

Debugging (with Docker/Intellij)

  1. Start Docker Container (see above)

  2. Create a terminal for that container

      docker exec -it <container_name> bash
    
  3. install xdebug within the container since joomla does not come with xdebug preinstalled

      pecl install xdebug
    
  4. restart the container

  5. In Intellij Go to File | Settings | Languages & Frameworks | PHP | Servers and setup your server

    name anything
    host localhost
    port 8080
    debugger xdebug

    use the path mapping and map the repo structure to the container content

    File/Directory path on server
    <path>/com_sportsmanager/src/structure/administrator/components /var/www/html/administrator/components
    <path>/com_sportsmanager/src/structure/components /var/www/html/components
  6. Click on "Start Listening for PHP Debug Connections" in the top row of intellij

  7. (Not sure if optional) Install a browser extension by Jetbrains
    https://chromewebstore.google.com/detail/xdebug-helper-by-jetbrain/aoelhdemabeimdhedkidlnbkfhnhgnhm

How to release

Hint: for technical details regarding the release process have a look into .github/...
To create a release these steps need to be followed

  1. make sure all needed code changes are merged from dev -> stage -> prod, since releases may only be build on prod branch
  2. give pull requests meaningful names and label them enhancement/bug/chore since labels and names are used for release note generation Hint: if a specific pull request should be ignored, add the label changelog-ignore
  3. tag a commit (recommended is the latest merge on prod). The pipeline is listening for any tag fitting v[0-9]+.[0-9]+.[0-9]+
      git tag -a v1.2.3 1a2b3c4 -m "Release version 1.2.3"
    
  4. push the tag
      git push origin --tags
    
  5. the tag push will trigger the pipeline, and it will create the release and store in GitHub

A release can be created again anytime by deleting the release from GitHub, deleting the tag (from GitHub and additionally from git) and repeating step 3 and 4

Further: merges from dev to stage and from stage to prod can only be done by creating pull requests. These pull requests will be automatically labeled as changelog-ignore

S
Description
No description provided
Readme
14 MiB
Languages
PHP 99.2%
JavaScript 0.7%