TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

[T3Sports] cfc_league_fe nextmatch Teaser


Autor Nachricht
Verfasst am: 10. 10. 2010 [22:49]
Hopertoper
Themenersteller
Dabei seit: 27.10.2009
Beiträge: 2
Hallo allerseits,

ich glaube ich hab hier schon fast alles durch gelesen was zum Theam cfc_league nextmatch Teaser geschrieben wurde nur irgendwie hat nix der Dinge hier geholfen.
Mein Problem ist das die Ausgabe meines Teaser nicht richtig funktioniert und ich irgendwie auch auf dem Schlauch stehe.
Hier mal mein TS dazu
TYPOSCRIPT
temp.nextMatch < plugin.tx_cfcleaguefe_competition
temp.nextMatch {
  action = tx_cfcleaguefe_actions_MatchTable
   saisonSelection = 1
   groupSelection = 1
   clubSelection = 1
#  matchTableTimeRangeFuture = 20
#  matchTableTimeRangePast = 1
 
  matchtableTemplate = fileadmin/templates/cfc_league_fe/nextmatch_teaser.html
  matchtable {
    #limit = 1
    options.limit = 1
    # angesetzte und laufende Spiele holen
    # status = 0,1
    fields.MATCH.STATUS.OP_IN_INT = 0,1
    timeRangeFuture = 20
    timeRangePast = 1
  }
}


Hier auch noch die HTML dazu für den Teaser

HTML
<html>
<head>
<title>Template für nächstes Spiel teaser</title>
</head>
<body>
 
<!-- ###MATCHTABLE### start -->
###MATCHS###
<div class="cfcleague-next-matchtable-next">nächstes Spiel am:</div>
 
###MATCH###
<div class="cfcleague-next-matchtable-date">###MATCH_DATE###</div>
 
<table cellspacing="0" cellpadding="0" class="cfcleague-next-matchtable-table">
<tr>
<td colspan="2">(###MATCH_ROUND_NAME###)</td>
</tr>
<tr>
<td>###MATCH_HOME_LOGO###</td><td class="cfcleague-next-matchtable-row">###MATCH_HOME_SHOWTEAMLINK######MATCH_HOME_NAME######MATCH_HOME_SHOWTEAMLINK###</td>
</tr>
<tr>
<td>vs.</td>
</tr>
<tr>
<td>###MATCH_GUEST_LOGO###</td><td class="cfcleague-next-matchtable-row">###MATCH_GUEST_SHOWTEAMLINK######MATCH_GUEST_NAME######MATCH_GUEST_SHOWTEAMLINK###</td>
</tr>
</table> 
###MATCH###
 
 
###MATCHS###
 
<!-- ###MATCHTABLE### end -->
</body>
</html>


Problem ist dabei, dass er mir bei der Ausgabe nicht das Spiel meiner Mannschaft ausgibt, sondern das erste Spiel, was an dem Tag stattfindet. Dabei will ich ja nur die Spiele meiner Mannschaft sehen in dem Teaser.

Würde mich über Hilfe freuen.
Profil
Verfasst am: 11. 10. 2010 [09:52]
digedag
Dabei seit: 13.04.2007
Beiträge: 578
Schau dir mal die Teams des falschen Spiels an. Sind da die richtigen Vereine gesetzt? Hat dein Verein wirklich die UID 1?
Wenn das stimmt, dann probier mal bissl rum:

Mehr Spiele anzeigen lassen:

TYPOSCRIPT
temp.nextMatch {
  matchtable {
    options.limit = 5
    # Und mal das SQL anzeigen lassen
    options.debug = 1
  }
}


Das SQL kannst du im Fehlerfall mal bitte mit einstellen. Dann kann ich sehen, welche Filter genau greifen. icon_smile.gif

ProfilWWW
Verfasst am: 11. 10. 2010 [14:26]
Hopertoper
Themenersteller
Dabei seit: 27.10.2009
Beiträge: 2
Die anderen Teams sind keinen Vereinen zugeordnet. Meine Mannschaft ist, die einzige die einen Verein zugeordnet ist. Was ich auch merkwürdig finde, ist wenn ich saisonSelection, groupSelection und clubSelection auskommentiere das Selbst, da die Spiele noch angezeigt werden.

Hier mal die Ausgabe der SQL
SQL
|SELECT DISTINCT tx_cfcleague_games.* FROM tx_cfcleague_games WHERE 1=1 AND tx_cfcleague_games.STATUS IN (0,1) AND tx_cfcleague_games.competition IN (1) AND tx_cfcleague_games.date >= 1286661600 AND tx_cfcleague_games.date < 1288476000 AND tx_cfcleague_games.deleted=0 AND tx_cfcleague_games.hidden=0 ORDER BY tx_cfcleague_games.date ASC LIMIT 1|


Hier mal noch das Bild dazu
http://img412.imageshack.us/img412/1387/sqlt.th.png
Profil
Verfasst am: 11. 10. 2010 [15:06]
digedag
Dabei seit: 13.04.2007
Beiträge: 578
Also das SQL-Statement passt nicht zu dem Typoscript, das du oben angegeben hast.
Die Einschränkungen auf Saison, Altersklasse und Verein fehlen komplett. Dafür wird auf den Wettbewerb mit der UID 1 gefiltert, was im TS nicht angegeben ist.

Verwende mal den TS-Objectbrowser (Modul Templates) und klick eine Seite an, auf der der Teaser gezeigt wird. Schau dir dann mal den TS-Code in diesem Browser an. Prüfe, ob da noch mehr Angaben drin sind, und wo die herkommen (mit der Maus über dem Eintrag stehen bleiben, der Tooltip verrät die Quelle).
Das temp-Objekt wirst du nicht finden, sondern du musst vermutlich irgendwo innerhalb des page-Objektes deinen Teaser suchen.
Alternativ kannst du auch lib verwenden:

TYPOSCRIPT
lib.nextMatch =< plugin.tx_cfcleaguefe_competition
lib.nextMatch {

Dann kannst du auch mit einer Referenz arbeiten, was den Speicherverbrauch senkt. Natürlich musst du dann bei der Einbindung des Teasers in der Seite auch von temp auf lib umstellen... icon_smile.gif

Der TS-Objectbrowser zeigt dir auch immer an, ob es Fehler im TS-Code auf der Seite gibt. Wenn er sowas anzeigt (Ist nicht zu übersehen), dann solltest du diese Fehler unbedingt beheben!

Was ich auch merkwürdig finde, ist wenn ich saisonSelection, groupSelection und clubSelection auskommentiere das Selbst, da die Spiele noch angezeigt werden.

Das ist normal. Je weniger du Einschränkungen machst, um so größer wird die Liste. Wenn du gar keine Einschränkungen mehr drin hast, werden alle Spiele verwendet. Angezeigt werden natürlich nur soviele, wie im Limit definiert sind.

ProfilWWW
Verfasst am: 09. 01. 2011 [09:09]
maggo
Dabei seit: 28.01.2008
Beiträge: 60
Ich hatte das selbe Problem. Der Grund war, dass ich bereits VORHER auf der selben Seite die Mini-Tabelle eingebunden hatte:

temp.wasauchimmer = COA
temp.wasauchimmer.1 < plugin.tx_cfcleaguefe_competition
temp.wasauchimmer.1.action = tx_cfcleaguefe_actions_LeagueTableShow
...

meine lösung:

temp.wasauchuimmer = COA_INT
temp.wasauchimmer.1 < plugin.tx_cfcleaguefe_competition
temp.wasauchimmer.1.action = tx_cfcleaguefe_actions_LeagueTableShow
...


hinweis: wenn ich den nextmatch teaser VOR die minitabelle setze, funktioniert beides wunderbar

[Dieser Beitrag wurde 3mal bearbeitet, zuletzt am 09.01.2011 um 16:19.]
Profil
Verfasst am: 11. 04. 2012 [13:50]
schittl
Dabei seit: 15.08.2005
Beiträge: 90
@maggo: Wenn du in der Minitabelle folgendes einträgst ist die Unterscheidung in COA & COA_INT überflüssig.

TYPOSCRIPT
temp.wasauchimmer = COA
temp.wasauchimmer.1 < tx_cfcleaguefe_actions_LeagueTableShow
temp.wasauchimmer.1.scope.noCache = 1


So hat es bei mir geholfen mit Next/Last-Matchteaser + Minitabelle auf der selben Seite.

>>>> TYPO3 4.2.x - 4.7.x <<<<
ProfilWWW