Con_Explorer hat geschrieben:Mahlzeit,
ich möchte gerne im Terminteaser die Kategorie ausgeben lassen.
Wie muss ich den output anpassen?
Danke schon mal
Das ist viel Arbeit.
Zunächst musst Du für die Kategorien Namen vergeben, da in den Datenbankfeldern nur die Kurzbezeichnungen a - j stehen. Das machst Du am besten im Modulinput (siehe Modul Terminliste).
Alle Kategorien sind für jeden Artikel in einem Datenbankfeld hinterlegt: Kategorien A in Feld [13], Kategorien B in Feld [21]. Diese Felder musst Du auswerten: (siehe Modul Terminliste).
Code: Alles auswählen
case 13: // Terminkategorien A
if ($MOD_TL_linktyp == '3') // Text
$MOD_TL_termine["kategoriea"][$MOD_TL_zaehler] = $db->f("value");
break;
Die zyklischen Terminen nicht vergessen: (siehe Modul Terminliste).
Code: Alles auswählen
$MOD_TL_termine["kategoriea"][$MOD_TL_zaehler2] = $MOD_TL_termine["kategoriea"][$MOD_TL_durchlauf];
und auch nicht das array_multisort ();
Nun musst Du noch für jeden Termin die Kategorienamen auswerten: (siehe Terminein/ausgabe)
Code: Alles auswählen
$MOD_TE_kategoriea = '';
$MOD_TE_kategoriea_desc = '';
if (stristr($MOD_TE_termin[13], 'a'))
$MOD_TE_kategoriea .= $MOD_TE_kata1.', ';
if (stristr($MOD_TE_termin[13], 'b'))
$MOD_TE_kategoriea .= $MOD_TE_kata2.', ';
if (stristr($MOD_TE_termin[13], 'c'))
$MOD_TE_kategoriea .= $MOD_TE_kata3.', ';
if (stristr($MOD_TE_termin[13], 'd'))
$MOD_TE_kategoriea .= $MOD_TE_kata4.', ';
if (stristr($MOD_TE_termin[13], 'e'))
$MOD_TE_kategoriea .= $MOD_TE_kata5.', ';
if (stristr($MOD_TE_termin[13], 'f'))
$MOD_TE_kategoriea .= $MOD_TE_kata6.', ';
if (stristr($MOD_TE_termin[13], 'g'))
$MOD_TE_kategoriea .= $MOD_TE_kata7.', ';
if (stristr($MOD_TE_termin[13], 'h'))
$MOD_TE_kategoriea .= $MOD_TE_kata8.', ';
if (stristr($MOD_TE_termin[13], 'i'))
$MOD_TE_kategoriea .= $MOD_TE_kata9.', ';
if (stristr($MOD_TE_termin[13], 'j'))
$MOD_TE_kategoriea .= $MOD_TE_kata10.', ';
if (strlen($MOD_TE_kategoriea) > 1)
{
$MOD_TE_kategoriea = substr($MOD_TE_kategoriea, 0, strlen($MOD_TE_kategoriea)-2); // letzten beiden Zeichen werden abgeschnitten
$MOD_TE_kategoriea_desc = mi18n("Kategorie A: ");
}
und zum Schluss das ganze an das HTML Template übergeben. Dort muss natürlich ein Platzhalter definiert sein. (siehe Terminein/ausgabe)
Code: Alles auswählen
$tpl->set('s', 'KATA', $MOD_TE_kategoriea);
$tpl->set('s', 'KATADESC', $MOD_TE_kategoriea_desc);
Achtung! Die Codauszüge sind nur Beispiele. Die müssen natürlich an das Modul angepasst werden. Nur reinkopieren funktioniert nicht!!!
Kräftig Testen, das wars
Gruß
schlaucher