Moin,
Ich bastel hier grad an einem kleinen Plugin.
Es soll an einer Stelle eine Liste der Raids und der Belohnungen angezeigt werden.
Bei jedem neu angezeigten Raid soll ein Header angezeigt werden... ungefähr so:
HTML-Teil
Code:
<!-- BEGIN verlauf -->
<!-- IF NEW_RAID -->
<tr>
<th colspan="2" align="center" height="20px">{verlauf.RAID} {verlauf.DATUM}</th>
</tr>
<tr>
<th align="center" height="20px">{verlauf.TRSPIELER}</th>
<th align="center" height="20px">{verlauf.TRITEM}</th>
</tr>
<!-- ENDIF -->
<tr class="{verlauf.ROW}">
<td>{verlauf.USER}</td>
<td>{verlauf.ITEM}</td>
</tr>
<!-- END verlauf -->
'BEGIN verlauf' -> 'END verlauf' ist die Schleife zur Ausgabe der Datensätze.
'IF NEW_RAID' -> 'ENDIF' ist die Bedingung, die sich bei jedem Schleifendurchlauf ändern kann und den Header ausgibt.
PHP-Code
Code:
$num = 0;
$i = 0;
while ($row = $db->fetch_record($result)) {
$verlauf = 'verlauf';
$tabrow = 'row1';
if ($num != $row['raid_id']) {
$i = 1;
$num = $row['raid_id'];
$tpl->assign_block_vars($verlauf, array(
'NEW_RAID' => true,
'RAID' => $row['raid_name'],
'DATUM' => $row['datum'],
'TRSPIELER' => $user->lang['tr_spieler'],
'TRITEM' => $user->lang['tr_item'],
)
);
}
if ($i%2 == 0)
$tabrow = 'row2';
$tpl->assign_block_vars($verlauf, array(
'ROW' => $tabrow,
'USER' => $row['item'],
'ITEM' => $row['user_name']
)
);
$i++;
}
Hab ich irgendwo nen Denkfehler drin, oder geht das so mit dem Template-System einfach nicht?
Ich würde nur sehr ungerne, den NEW_RAID-Part in den PHP-Teil verbannen.