BoRep, Bowling Reports
Startseite Übersicht Impressum





Das Werkzeug borep dient der Erstellung und Verwaltung einer Internet-Seite für Bowling Ergebnisse. Die generierten Seiten basieren auf PHP und nutzen zur Speicherung der Daten eine MYSQL Datenbank. Zusätzlich kann mit dem Programm borep eine statische Webseite erstellt werden. Ein Beispiel für eine aktive Installation von borep ist hier zu finden.

Die erstellten Seiten umfassen aktuell:
  • Titelseite, Impressum und Übersicht der Spieltage,
  • Zusammenfassung incl. Strikes, Spares, bestes Spiel und beste Runde,
  • Detailansicht der Ergebnisse des Spieltages und
  • eine Hall of Fame für bestes Spiel und bester Spieltag.

Das Werkzeug ist für die Darstellung von Ergebnissen eines Liga-artigen Spielbetriebs konzipiert. Hierbei spielen jeweils 1 bis 5 Spieler in einer Liga an verschiedenen Spieltagen. An jedem Spieltag werden von 1 bis 2 Ligen jeweils 4 Runden gespielt. Wobei der Erste der zweiten Liga auf- und der Letzte der ersten Liga absteigt.

Die Verwendung des Programmes in einem anderen Spielmodus ist prinzipiell möglich, jedoch müssen hierzu mit unter Änderungen am Programmtext vorgenommen werden, da z.B. die maximale Anzahl der Spieler (5), die Rundenanzahl (4) und die Ligenanzahl (2) nicht konfigurierbar sind.



 Installation

Das Software-Paket borep besteht aus zwei Teilen: einem Programm zum Einlesen der Daten bzw. zum Erstellen der statischen Web-Seite und einem PHP-Framework für eine MYSQL-basierte Darstellung der Ergebnisse.

Installation borep

Die Installation des Programmes zum Einlesen der Daten erfolgt mittels des klassischen Dreisatzes. Zuvor ist in das Verzeichnis csrc zu wechseln.

> cd csrc
> ./configure
> make
> make install

Zum Übersetzen des Programmes sind die MYSQL-Header notwendig. Unter Ubuntu ist hierzu das Paket libmysqlclient-dev zu installieren. Sind die Header nicht verfügbar, wird das Programme ohne Datenbank-Support erstellt.

Initialisierung der Datenbank

Für die Nutzung des PHP-Frameworks ist das Aufsetzen einer MYSQL-Datenbank notwendig. Hierzu muss zunächst eine Datenbank mit dem Namen borep angelegt werden. Anschließend kann die Datenbank mit dem Skript tables.sql initalisiert werden. Der Aufruf kann hierzu wie folgt aussehen:

> mysql -p -u <admin> -h <server> < mysql/tables.sql

Nach dem Einrichten der Tabellen müssen die Zugriffsrechte gesetzt werden. Für eine sichere Nutzung von borep sollten zwei unabhängige Profile angelegt werden: ein Admin-Profil boadmin zum Verwalten der Daten und ein Web-Profil boweb für den Zugriff durch den Web-Server. Die beiden Profile können auf der MYSQL-Shell wie folgt angelegt werden.

> mysql -u root mysql
mysql> GRANT ALL PRIVILEGES ON *.borep TO 'boadmin'@'%' IDENTIFIED BY 'admin_pass';
mysql> GRANT SELECT *.borep TO 'boweb'@'<ip-address>' IDENTIFIED BY 'web_pass';

Das Admin-Profil erhält Vollzugriff auf die Datenbank. Der Zugang kann hierbei über jeden beliebigen Rechner erfolgen. Das Web-Profil benötigt aktuell nur das Recht SELECT. Außerdem kann hier der Zugriff auf den Web-Server durch Angabe der IP-Adress begrenzt werden.

Die gesetzten Informationen für Nutzername und Passwort des Web-Profils sind anschließend in die Konfigurationsdatei des PHP-Frameworks zu übernehmen.

PHP-Framework

Zur Installation des PHP-Frameworks sind die Dateien aus dem Verzeichnis php auf den Web-Server zu kopieren. Zu Personalisierung der Installation ist die Datei class.config.php anzupassen. Hier können der Titel der Webseite, die Informationen für das Impressum und die Zugangsdaten für die Datenbank angegeben werden.



 Kurzanleitung borep

Das Programm borep kann zum Einpflegen der Datenbankdaten oder zur Erstellung einer statischen Webseite verwendet werden.

Format der Eingabedatei

Die zuverarbeitenden Daten werden dem Programm als Textdatei übergeben. Jede Zeile der Datei beschreibt eine Runde eines Spieler. Die Zeile beginnt jeweils mit dem Namen des Spielers, es gefolgen die einzelnen Frames der Runde. Hierbei wird ein Strike mittels x, ein Spare mittels / und eine Ratte mittels - angegeben. Die Gliederung der Datei ist wie folgt:


Beispiele sind in dem Verzeichnis examples zu finden.

Prüfen der Eingabedatei

Da das Erstellen der Eingabedatei meist ein manueller Prozess ist, kurz Entippen, kann mittels borep eine Überprüfung der Datei vorgenommen werden. Der Aufruf kann wie folgt aussehen:

> ./csrc/borep -T example/04-02-25.txt
   Player (league 1): ost
      Round: 1, sum: 106, kumulus: 106
      Round: 2, sum: 164, kumulus: 270
      Round: 3, sum: 159, kumulus: 429
      Round: 4, sum: 134, kumulus: 563
      strikes: 10, spares 1
      best: 164, worst 10
  <snip>

Ist die Eingabedatei syntaktisch fehlerfrei, gibt das Programm eine textuelle Zusammenfassung aus.

Achtung! Auch syntaktisch korrekte Dateien können inhaltlich falsch sein, eine manuelle Überprüfung ist in jedem Fall sinnvoll.

Erzeugen der HTML-Seite

Das Programm borep erstellt aus der Eingabedatei eine Verzeichnis mit drei statischen HTML-Seiten. Hierzu ist das Programm wie folgt aufzurufen:

> borep -n examples/navi_table.html -H examples/04-02-25.txt

Das Programm erzeugt in dem aktuellen Verzeichnis ein Unterverzeichnis mit dem Namen der Datei ohne Erweiterung. In diesem Verzeichnis befinden sich die statischen HTML-Dateien:

zusammenfassung.htmlGesamtergebnisse, die Anzahl der Spares und Strikes sowie die jeweils besten Runden des Spieltages
1-liga.htmlRundenübersicht der 1. Liga und
2-liga.htmlRundenübersicht der 2. Liga.

Die Angabe einer Navigationleiste mittels -n ist optional. Der Inhalt der Datei wird in die Dateien eingebettet und dient dem Einbinden einer eigenen Navigationsleiste.

Datenbank aktualisieren

Neben dem Erzeugen der statischen HTML-Seite kann das Programm borep zum Aktualisieren der Datenbank verwendet werden. Hierzu ist das Programm wie folgt aufzurufen:

> borep -M examples/mysql.conf examples/04-02-25.txt

Die Zugangsdaten zur Datenbank werden dem Programm mit dem Parameter -M als Datei übergeben. In der Datei müssen die Parameter aus der Initialisierung der Datenbank angegeben werden. Die Angaben werden über die folgenden Schlüsselwörter spezifiziert:

serverMYSQL-Datenbank Rechnername / IP-Adresse,
userNutzername,
dbDatenbankname und
pwdPasswort.

Für das Aktualisieren der Datenbank muss das zuvor angelegte Admin-Profil verwendet werden. Vor dem Aufruf sollte zudem kontrolliert werden, dass die Daten der Eingabedatei korrekt sind. Ein nachträgliches Korregieren bzw. Überschreiben ist aber auch mittels des Programmparameters -r möglich.



 Download
DateiMD5
borep-0.3.2.tar.bz22451966f619cdebcff2a86dc01d52115

oben
09.05.2013