If you appreciate what the Tesseract project does for you, consider donating to it.
The main goals of the FIM web site relaunch were to:
All the racing-related data comes from an external database and is imported into TYPO3. Tesseract is then used to produce displays of that data.
The web site also receives document from Alfresco, which are stored in the DAM. Tesseract is used to produce both public and private lists of these documents.
All the racing-related information is highly contextual. Indeed races are organized in various championships and much of the information must be related to these championships. The data coming from the external database obviously contains this information, but it must also be defined for information defined inside TYPO3, such as news items.
This is achieved using tags (from Tag Pack) on the one hand and contexts on the other hand. Contexts are simply TypoScript key-value pairs, that can be picked up by Data Filters or other tools that use expressions. Here's an example context:
config.tx_context {
tagpack_uids = 9
}
This value can be retrieved inside a tagpackprovider record:
Tag Pack provider for a selection of news based on a tag id defined as a context
The Display Controller with secondary Data Provider
The highlighted, contextual news items
Some data selections required complex filtering, with values coming from different sources. Here is an example of such complex Data Filter. It uses both values coming from GET/POST variables and explicity set values. It also makes use of alternative expressions to define default values.
A complex Data Filter
The list of official documents
The FIM web site makes intensive use of contexts to gather different pieces of information related to the same topic, i.e. a particular championship.
On top of the contexts are many specialized views based on various filter values. This led to some very complex Data Filters, but all needs could be fullfilled thanks to the power of "expressions".
The FIM web site needs to interact with many third-party applications.
First and foremost all information concerning the races (pilots, manufacturers, championships, results, etc.) are imported from a custom, external database. This proved to be quite a challenge as the application is rather old and runs on a distant Microsoft SQL Server. All data is imported using "external_import" and an ODBC connector (to be released).
The site also presents a lot of official documents which are managed in an Alfresco database. When documents are "published to the web" from within Alfresco, they are sent to a TYPO3 web service and stored into the DAM, with appropriate user access rights based on a LDAP server.
Once all the data is safely stored on the TYPO3-side any piece of it can be fetched using the Tesseract tools.