DEPRECATION WARNING

This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.

EXT: Betgame for T3sports

Author:Kasper Skårhøj
Created:2002-11-01T00:32:00
Changed by:digedag
Changed:2010-06-03T22:03:10
Author:Rene Nitzsche
Email:rene@system25.de
Info 3:
Info 4:

EXT: Betgame for T3sports

Extension Key: t3sportsbet

Copyright 2008-2010, Rene Nitzsche, <rene@system25.de>

This document is published under the Open Content License

available from http://www.opencontent.org/opl.shtml

The content of this document is related to TYPO3

- a GNU/GPL CMS/Framework available from www.typo3.com

Table of Contents

EXT: Betgame for T3sports 1

Introduction 1

What does it do? 1

Screenshots 2

Users manual 3

How to create a betgame 3

Team bets 6

The frontend tasks 6

After the matches 7

FAQ 8

Administration 8

Installation 8

Configuration 9

HTML-Templates 9

FAQ 9

Known problems 10

To-Do list 10

Changelog 10

Introduction

What does it do?

This is an extension to create bet games for T3sports. ` *T3sports* <http://typo3.org/extensions/repository/?tx_terfe_pi1[ view]=search&no_cache=1&tx_terfe_pi1[sword]=t3sports>`_ is an extension to manage clubs and competitions. Each betgame consists of several bet rounds containing a list of matches to bet for. Results can be summarized for the whole game or round by round. There are also special bets on teams possible.

Mit dieser Extension können Tipsspiele auf Basis der Extension ` T3sports <http://typo3.org/extensions/repository/?tx_terfe_pi1[vi ew]=search&no_cache=1&tx_terfe_pi1[sword]=t3sports>`_ veranstaltet werden. Jedes Tipspiel besteht aus verschiedenen Tiprunden, denen individuell Begegnungen zugeordnet werden können. Die Auswertung erfolgt entweder auf das gesamte Tipspiel oder auf einzelne Tiprunden. Zusätzlich können Sondertips auf bestimmte Teams abgegeben werden.

Screenshots

img-1 Abbildung 1: Das Backendmodul

img-2 Abbildung 2: Tipabgabe im Frontend

img-3 Abbildung 3: Highscoreliste

Users manual

How to create a betgame

The first step is to create a competition with some matches to bet for. This is done with T3sports as usual.

Der erste Schritt ist die Erstellung einiger Spiele, die man für das Tipspiel verwenden möchte. Dies geschieht über die normalen Funktionen von T3sports.

img-4 Abbildung 4: Einige Spiele anlegen. Hier die Vorrundengruppen A und B der EM 2008

Now it is possible to create a new bet game. Switch to module **T3sports->T3sports betgame* and select a SysFolder. This SysFolder will store all data for betgame.*

img-5 Abbildung 5: Im Modul T3sports befindet sich ein neues Submodul.

Jetzt können wir ein Tipspiel anlegen. Dafür wechseln wir in das Modul T3sports->T3sports Tipspiel und wählen im Seitenbaum den SysFolder, in dem alle Daten abgelegt werden sollen.

Create the betgame and fill out all fields. You have to select all competitions you want to bet for. Save and close the record and switch back to the module.

Bei der Erstellung des Tipspiel sollten alle Felder ausgefüllt werden. Bei den Wettbwerben müssen alle Wettbewerbe ausgewählt werden, für die später Tips abgegeben werden sollen. Der Datensatz kann nach der Bearbeitung gespeichert und geschlossen werden. Wir gelangen wieder zurück ins Modul.

img-6 Abbildung 6: In diesem Tipspiel können die Vorrunden der EM getippt werden.

Since version 0.3.x it is possible to create all betsets for a complete competition with one click. The wizard creates a betset for each round in competition. This wizard is available only, if no betset is found in the betgame .

Ab Version 0.3.x enthält die Extension einen Wizard, um ein Tipspiel aus einem kompletten Wettbewerb automatisch zu erstellen. Für jeden Spieltag werden einzelne Tiprunden angelegt. Der Wizard wird nur angeboten, wenn dem Tipspiel noch keine Tiprunden zugeordnet wurden.

Now we have a betgame, but still no bet round/bet set. So create one by clicking the marked button.

img-7 Wir haben nun ein Tipspiel, aber noch keine Tiprunde. Diese kann man aber einfach durch Klick auf den markierten Button erstellen.

Of course you have to select a betgame for the new round. It is also possible to set a name. Assure that you set a unique round number. The bet sets are order by this number. There are three possible states for a bet round:

  • preparation – the round is not visible in frontend
  • Open – Bets are possible in frontend
  • Closed – The whole round is closed. No more bets can be made!

It is not necessary the select matches here. The is a better way in next step.

In der Tiprunde muss natürlich das Tipspiel zugeordnet werden. Außerdem können wir einen Namen vergeben. Es gibt drei Stati:

  • Vorbereitung - Spiele im FE nicht sichtbar
  • Offen - Spiele der Runde können im FE getippt werden
  • Beendet – die gesamte Tiprunde ist beendet. Keine Tips mehr möglich

img-8 Abbildung 7: Die Spiele werden über das Modul zugeordnet

Die Spiele müssen hier noch nicht zugeordnet werden, daß geschieht einfacher im nächsten Schritt. Save and close this record. Now we want to set the matches for this round. Press the button **Add matches to betset* . The new screen comes up with a competition selector. Do you remember the bet game record? Here is your selected competition again. So you can join all matches from different competitions into one betgame. Simply mark the matches and press Join matches .*

If your bet round is complete you can finally change the state to **Open* . Of course you can add more match round if you wish.*

img-9 Abbildung 8: Die Zuordnung der Spiele erfolgt mit dem Backendmodul.

Nachdem die Tiprunde gespeichert und geschlossen wurde, kann man im Modul auf den Button Der Tiprunde Spiele hinzufügen klicken. Jetzt finden wir auch die vorhin ausgewählten Wettbewerbe wieder. Wie man sieht, kann man somit Spiele aus beliebigen Wettbewerben in einem Tipspiel kombinieren. Nun einfach die gewünschten Spiele markieren und in die Tiprunde übernehmen.

Wenn alle gewünschten Spiele zugeordnet sind, kann der Status auf Offen geändert werden. Die FE-Nutzer können dann ihre Tips abgeben.

Team bets

Starting with version 0.4.0 it is possible to create special team bets. So you can ask questions like “Which team will be winning the cup?”. The possible points for a bet can be changed over the time. The players will always get the points available at the time of betting.

Ab Version 0.4.0 können Sondertips zu Teams erstellt werden. So kann man im Vorfeld nach dem kommenden Meister fragen. Die möglichen Punkte können dabei im Laufe der Zeit verändert werden. Die Spieler erhalten am Ende immer die Punkte für den richtigen Tip, die zum Zeitpunkt der Tipabgabe eingestellt waren.

The frontend tasks

To enable our users to bet for matches, we need to setup the frontend pages. Normally you need three pages: one for the upcoming bets, one for finished bets and a highscore list. The highscore page can be accessible by anyone, for the other pages a logged on user is needed.

img-10 Abbildung 9: Drei FE-Seiten für das Tipspiel

Damit die Nutzer im Frontend Tips abgeben können, müssen wir natürlich die entsprechenden Seiten einrichten. Üblicherweise benötigen wir dafür drei Seiten: eine für die aktuellen Tips, eine für die beendeten Tiprunden und eine Highscoreliste. Letztere kann öffentlich zugänglich gemacht werden. Die anderen beiden Seiten benötigen einen angemeldeten FE-User.

The plugin has two possible views: **List of bet sets* and Highscore list . Put one plugin at each page. At the highscore page select the view Highscore list , at the other page select view List of bet sets . With the tab dividers you can set additional information. To select the betgame to show. In List of bet sets you can also defined the state of betsets to show. In page for upcoming bets select Open and Finished for finished bets page.*

img-11 Abbildung 10: Die Detailangaben zu den Views werden in den entsprechenden Tabs gesetzt.

img-12 Abbildung 11: Die Tiprunden werden nach ihrem Status angezeigt

Das Plugin hat zwei mögliche Views: Liste der Tiprunden und die Bestenliste. Die Liste der Tiprunden verwenden wir sowohl für die aktuellen Tips als auch für die Tip-Historie. Der Status muss entsprechend ausgewählt werden. Und natürlich muss immer auch das gewünschte Tipspiel ausgesucht werden.

img-13 Abbildung 12: Mögliche Ausgabe im Frontend

Since version 0.3.0 it is possible to show finished bets from other users. This is done from highscore list with a link for each user. This link targets to another page with a betlist. In plugins flexform of this betlist enable the option Allow user from request . You should also use a special HTML template for this view without any form elements. Have a look at ext:t3sportsbet/templates/userbetlist.html .

Mit der Version 0.3.0 ist es möglich beendete Tips anderer User anzuzeigen. In der Bestenliste wird dafür ein Link für die Nutzer gesetzt, der auf eine weitere, neue verweist. Auf dieser Seite muss wiederum ein Plugin mit der Liste der Tiprunden angelegt werden. Im Flexform muss die Option Nutzer aus Request erlauben gesetzt werden. Zusätzlich sollte ein modifiziertes HTML-Template ohne Formular-Elemente verwendet werden. Als Vorlage kann das Template ext:t3sportsbet/templates/userbetlist.html dienen.

After the matches

When some matches are over and all bets are done, it is time to score the results. At first you need to set the match results with module **T3sports->Edit matches* . Don't forget to set the match status to finished! If this is done, switch back to module T3sports->Bet game . You will see the finished matches and the results. Now you can press the button Analyze bets and all available bets are scored.*

It is not necessary the wait for all matches to be finished. You can score the results as often as you want. The system takes care about which bets to score. If all matches of a bet set are finished and scored, you should set the state to Finished. This will move that bet set in frontend to bet history page.

img-14

Nachdem die Spiele vorbei sind und hoffentlich zahlreiche Tips abgegeben wurden, kann die Auswertung erfolgen. Dafür müssen zunächst über das Modul T3sports->Spiele bearbeiten die Spielergebnisse eingetragen werden. Ist das geschehen, wechselt man wieder zum Modul des Tipspiels. Hier sieht man nun in der Tiprunde die beendeten Spiele. Mit dem Button Tips auswerten, startet man die Auswertung.

Es ist nicht notwendig auf die Beendigung alles Spiele zu warten. Das System erkennt selbstständig welche Spiele noch ausgewertet werden müssen. Ist eine Tiprunde komplett beendet, sollte der Status auf Beendet gesetzt werden. Dadurch wandern die Spiele im Frontend in die Tiphistorie.

FAQ

How to sort matches within a betset?

You can do it by typoscript. This will sort by date ascending:

plugin.tx_t3sportsbet_main {

betlist.betset.match {

options.orderby.MATCH.DATE = asc

}

}

And now the same sort order as in BE:

plugin.tx_t3sportsbet_main {

betlist.betset.match {

options.orderby.BETSETMM.SORTING = asc

}

}

Administration

Installation

You can install this extension as usual with extension manager from TER. Please install all required extensions too. Otherwise you will maybe crash your TYPO3 system!

After install add the static template to your Typoscript Template. The CSS template is optionally and not more then an example.

img-15

Die Extension wird wie üblich mit dem Extension-Manager installiert. Es müssen alle abhängigen Extensions mit installiert werden, da sonst unter Umständen TYPO3 nicht mehr richtig funktioniert!

Für die FE-Ausgabe muss das Static-Template der Extension in das Typoscript-Template der Seite eingebunden werden. Das CSS-Template ist optional und soll nur als Beispiel dienen.

Configuration

HTML-Templates

The default HTML template should be copied to a folder under fileadmin. Then you can link to either in the plugin or with TS- Constant-Editor.

img-16 Abbildung 13: Templatezuordnung über den TS-Contant-Editor

Die mitgelieferten HTML-Vorlagen sollten unter den Fileadmin kopiert werden. Die Zuordnung erfolgt dann entweder direkt im Plugin oder über den TS-Contant-Editor.

FAQ

How to add more marker?

As always in T3sports there is a marker for each database column. Lets have a look at the highscore template:

###FEUSERS###

<tablecellspacing="0">

<tr><th>###LABEL_RANK###</th><th>###LABEL_NAME###</th><th>###LABEL_ POINTS###</th></tr>

###FEUSER###

<trclass="t3sbet-user###FEUSER_BETMARK### t3sbet- row###FEUSER_ROLL###">

<td>###FEUSER_BETRANK###.</td><td> ###FEUSER_USERNAME### </td><td>###FEUSER_BETPOINTS###</td>

</tr>

###FEUSER###

Now you maybe don't want to output the username, but the realname instead. Look at the database and find out the column names in table **fe_user* :*

img-17

Okay, it is simply “name”. So the right marker is called ###FEUSER_NAME###. The prefix FEUSER defines the database table followed by column name in uppercase letters. That's it!

Of course all markers are stdWrapped. So for our example you can do this to highlight the name:

plugin.tx_t3sportsbet_main {

highscore {

feuser {

name.wrap = <b>|</b>

}

}

}

Known problems

- Use this section for important warnings about bugs, problems or performance issues. This is where you should explain shortcomings of the extension, so people are properly warned. Be honest.

- Target group: Mostly Developers

To-Do list

- A wish list of things you want to add or fix. This includes smaller problems/bugs which are best described as a todo item.

- Visions for what the extension could become with more development.

Changelog

- Use this sections to document all the changes through the versions.

img-18 EXT: Betgame for T3sports - 10