agon-Termine: Mehrtagestermin erscheint nur am ersten Tag
-
- Beiträge: 57
- Registriert: Mo 3. Mai 2004, 08:19
- Kontaktdaten:
agon-Termine: Mehrtagestermin erscheint nur am ersten Tag
Ist das so vorgesehen, dass ein Termin mit Anfangsdatum X und Enddatum Y in der Terminübersicht nur am Datum X erscheint? Eigentlich unsinnig, da dieser Termin auch für die Tage nach X gültig ist und daher angezeigt werden sollte.
Aber vielleicht habe ich ja etwas übersehen. Klärt mich auf!
Guido
Aber vielleicht habe ich ja etwas übersehen. Klärt mich auf!
Guido
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: agon-Termine: Mehrtagestermin erscheint nur am ersten Ta
Hallo Guido,
Vielleicht komme ich in den naechsten Tagen dazu, mir das anzuschauen.
Gruss
Christa
ich glaube nicht, dass Du etwas uebersehen hast, zumindest ist mir Dein Problem auch aufgefallen. Ich wollte mal die Ausgabe aendern, so dass der Endtermin mit ausgegeben wird (bzw. nachschauen, ob das so sein sollte und warum das ggf. nicht klappt), bin aber noch nicht dazu gekommen. Der Termin wird auch fuer die Tage X+1, X+2 ... Y angezeigt, nur mit dem Termin X, und das ist genauso verwirrend.pinkernell hat geschrieben:Ist das so vorgesehen, dass ein Termin mit Anfangsdatum X und Enddatum Y in der Terminübersicht nur am Datum X erscheint? Eigentlich unsinnig, da dieser Termin auch für die Tage nach X gültig ist und daher angezeigt werden sollte.
Aber vielleicht habe ich ja etwas übersehen. Klärt mich auf!
Vielleicht komme ich in den naechsten Tagen dazu, mir das anzuschauen.
Gruss
Christa
-
- Beiträge: 57
- Registriert: Mo 3. Mai 2004, 08:19
- Kontaktdaten:
Re: agon-Termine: Mehrtagestermin erscheint nur am ersten Ta
Hast Du das so schon realisiert? So verwirrend wäre das nicht, wenn man für solche Mehrtagestermine, deren Anfangsdatum X vor dem aktuellen Datum liegen, wie folgt gelistet werden: "_Seit_ Datum X ..." anstelle "Datum X"Halchteranerin hat geschrieben:Ich wollte mal die Ausgabe aendern, so dass der Endtermin mit ausgegeben wird (bzw. nachschauen, ob das so sein sollte und warum das ggf. nicht klappt), bin aber noch nicht dazu gekommen. Der Termin wird auch fuer die Tage X+1, X+2 ... Y angezeigt, nur mit dem Termin X, und das ist genauso verwirrend
Finde ich sogar deshalb besser, da ein solcher Mehrtagestermin jederzeit als solcher kenntlich werden sollte. Damit man am Datum X+5 auch sieht, dass dieser Termin schon lange läuft.
Bin gespannt auf Deine Lösung (ich kenne mich mit PHP leider nicht so aus, dass ich etwas dazu beitragen könnte)
Guido
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: agon-Termine: Mehrtagestermin erscheint nur am ersten Ta
Ja ok, 'seit Datum X' waere die andere Moeglichkeit. Bei mir ist das zur Zeit so (wobei ich dachte, dass es beim urspruenglichen Modul auch so war, ist es denn nicht?), dass ja nur die aktuellen Termine angezeigt werden. Heute ist der 10.6. Wenn der erste Termin vom 8.-11.6 laeuft und der zweite am 25.7. stattfindet, dann steht in meiner Uebersicht:pinkernell hat geschrieben: Hast Du das so schon realisiert? So verwirrend wäre das nicht, wenn man für solche Mehrtagestermine, deren Anfangsdatum X vor dem aktuellen Datum liegen, wie folgt gelistet werden: "_Seit_ Datum X ..." anstelle "Datum X"
Finde ich sogar deshalb besser, da ein solcher Mehrtagestermin jederzeit als solcher kenntlich werden sollte. Damit man am Datum X+5 auch sieht, dass dieser Termin schon lange läuft.
8.6.2004 Termin 1
25.7.2004 Termin 2.
Ich finde das deshalb verwirrend, weil derjenige, der am 10.6. auf die Seite guckt und den Termin mit dem 8.6. sieht, denken koennte, der Termin ist aus Versehen drin geblieben, und er rechnet nicht zwingend damit, dass es ein mehrtaegiger Termin ist.
Ich rede aber wohlgemerkt von der Uebersicht auf der Startseite. Bei der anderen Terminuebersicht werden bei meiner Version (auch hier weiss ich nicht, ob die sich vom Original unterscheidet, denn mit agons Hilfe habe ich damals einiges geaendert, wobei ich nicht mehr genau weiss, was das alles war) sowohl Anfangs- als auch Enddatum ausgegeben. Die Uebersicht fuer die Startseite habe ich die Tage schon gepostet, evtl. habe ich auch die normale Uebersicht gepostet ... such mal nach 'Uebersicht' oder Terminverwaltung o.ae.
-
- Beiträge: 57
- Registriert: Mo 3. Mai 2004, 08:19
- Kontaktdaten:
Re: agon-Termine: Mehrtagestermin erscheint nur am ersten Ta
Bei mir wird auch das Enddatum mit angegeben: "8.6. bis 11.6.". Wenn bei aktuellem Datum 10.6. dann "Seit dem 8.6. bis 11.6." stehen würde, dann dürfte das "Seit" auf den ersten Blick signalisieren, dass dieses Datum älter ist.Halchteranerin hat geschrieben: Ja ok, 'seit Datum X' waere die andere Moeglichkeit. Bei mir ist das zur Zeit so (wobei ich dachte, dass es beim urspruenglichen Modul auch so war, ist es denn nicht?), dass ja nur die aktuellen Termine angezeigt werden. Heute ist der 10.6. Wenn der erste Termin vom 8.-11.6 laeuft und der zweite am 25.7. stattfindet, dann steht in meiner Uebersicht:
8.6.2004 Termin 1
25.7.2004 Termin 2.
Ich überlege auch, an den Anfang meiner Übersichtstabelle das aktuelle Datum einzublenden: "Heute ist der 10.06.2004"
Stimmt. Da aber bei mir - und auch bei Deiner anderen Terminübersicht - auch das Enddatum angegeben wird, wäre die von mir oben skizzierte Lösung wohl sinnvoll (und mir am liebsten )Halchteranerin hat geschrieben: Ich finde das deshalb verwirrend, weil derjenige, der am 10.6. auf die Seite guckt und den Termin mit dem 8.6. sieht, denken koennte, der Termin ist aus Versehen drin geblieben, und er rechnet nicht zwingend damit, dass es ein mehrtaegiger Termin ist.
Guido
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: agon-Termine: Mehrtagestermin erscheint nur am ersten Ta
Ach so ... wenn das Enddatum schon mit angegeben wird, dann sollte das doch ausreichen, oder? Wenn Du zusaetzlich noch ...pinkernell hat geschrieben: Bei mir wird auch das Enddatum mit angegeben: "8.6. bis 11.6.". Wenn bei aktuellem Datum 10.6. dann "Seit dem 8.6. bis 11.6." stehen würde, dann dürfte das "Seit" auf den ersten Blick signalisieren, dass dieses Datum älter ist.
... das aktuelle Datum mit ausgibst, dann allemal!pinkernell hat geschrieben:Ich überlege auch, an den Anfang meiner Übersichtstabelle das aktuelle Datum einzublenden: "Heute ist der 10.06.2004"
Hier ein Modul dafuer (allerdings mit meinen Formatierungen):
Code: Alles auswählen
<?php echo "<span class="small">Heutiges Datum:</span> "; echo "<span class="small">".date("d.m.Y")."</span>" ?>
Wenn Du das unbedingt mit dem Text 'seit dem ...' haben willst, schick mir den von Dir benutzen Quelltext per PM, ich kann mal gucken, ob ich das hingebogen kriege.pinkernell hat geschrieben: Stimmt. Da aber bei mir - und auch bei Deiner anderen Terminübersicht - auch das Enddatum angegeben wird, wäre die von mir oben skizzierte Lösung wohl sinnvoll (und mir am liebsten )
Gruss
Christa
-
- Beiträge: 57
- Registriert: Mo 3. Mai 2004, 08:19
- Kontaktdaten:
Re: agon-Termine: Mehrtagestermin erscheint nur am ersten Ta
Nee. Das Problem ist ja, das der mehrtägige Termin (dessen Enddatum in der Übersicht immer dabei ist) aus der Übersicht verschwindet, sobald das Startdatum vorbei ist. Und zwar auch dann, wenn das Enddatum noch nicht erreicht ist.Halchteranerin hat geschrieben: Ach so ... wenn das Enddatum schon mit angegeben wird, dann sollte das doch ausreichen, oder?
Aber egal. Ich schicke Dir den Code per PM. Kannste den ja mal anschauen und vielleicht sogar verbessern ...
Guido
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: agon-Termine: Mehrtagestermin erscheint nur am ersten Ta
Ach so, jetzt verstehe ich das! Ich muss das mal eben bei mir testen. In der Terminuebersicht fuer die Startseite bleibt bei mir der Termin bis zum letzten Tag drin, und bei der anderen (ausfuehrlichen) Terminuebersicht habe ich nicht darauf geachtet. Ich werde mal jetzt einen mehrtaegigen Termin eingeben und gucken, ob er noch in der Terminuebersicht auftaucht ...pinkernell hat geschrieben:Nee. Das Problem ist ja, das der mehrtägige Termin (dessen Enddatum in der Übersicht immer dabei ist) aus der Übersicht verschwindet, sobald das Startdatum vorbei ist. Und zwar auch dann, wenn das Enddatum noch nicht erreicht ist.
-
- Beiträge: 57
- Registriert: Mo 3. Mai 2004, 08:19
- Kontaktdaten:
Problem gelöst!
Danke, Christa, für den Code. In dem Code meiner Terminübersicht war ein "Dreher" drin, so dass die Bedingung "Enddatum >= heutiges Datum" nicht gelesen wurde.
Übrigens habe ich jetzt den Code der Übersicht so geändert, dass Mehrtagestermine, die schon begonnen haben, vor dem Beginndatum ein "Seit" eingefügt bekommen. So soll auf dem ersten Blick deutlich werden, dass dieser Termin schon am Laufen ist.
Bsp. Heute ist der 12.06.
----------------------------------------
Seit 10.06. Mehrtagestermin 01
bis 17.06
----------------------------------------
12.06. Termin 01
----------------------------------------
13.06.
bis 15.06. Mehrtagestermin 02
----------------------------------------
14.06. Termin 02
----------------------------------------
Guido
Übrigens habe ich jetzt den Code der Übersicht so geändert, dass Mehrtagestermine, die schon begonnen haben, vor dem Beginndatum ein "Seit" eingefügt bekommen. So soll auf dem ersten Blick deutlich werden, dass dieser Termin schon am Laufen ist.
Bsp. Heute ist der 12.06.
----------------------------------------
Seit 10.06. Mehrtagestermin 01
bis 17.06
----------------------------------------
12.06. Termin 01
----------------------------------------
13.06.
bis 15.06. Mehrtagestermin 02
----------------------------------------
14.06. Termin 02
----------------------------------------
Guido
Lösungsbeitrag
Hallo zusammen.
Anscheinend ist der Post etwas älter, aber auch wiederum nicht aus der Welt. Die Problematik wird sehr gut beschrieben, aber die Lösung nicht. Besteht die Möglichkeit dass die Lösung zur Anzeigenproblematik der bereits begonnenen Mehrtagestermine hier gepostet wird?
Bei mir verschwinden auch dauernd die Mehrtagestermine, sobald der Erste Tag des Termines abgelaufen ist. Bitte um Hilfe. Danke!
Gruß
MHL
Anscheinend ist der Post etwas älter, aber auch wiederum nicht aus der Welt. Die Problematik wird sehr gut beschrieben, aber die Lösung nicht. Besteht die Möglichkeit dass die Lösung zur Anzeigenproblematik der bereits begonnenen Mehrtagestermine hier gepostet wird?
Bei mir verschwinden auch dauernd die Mehrtagestermine, sobald der Erste Tag des Termines abgelaufen ist. Bitte um Hilfe. Danke!
Gruß
MHL
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: Problem gelöst!
mhl, hast du bei dir Obiges ueberprueft?pinkernell hat geschrieben:In dem Code meiner Terminübersicht war ein "Dreher" drin, so dass die Bedingung "Enddatum >= heutiges Datum" nicht gelesen wurde.
Bitte keine unaufgeforderten Privatnachrichten mit Hilfegesuchen schicken. WENN ich helfen kann, dann mache ich das im Forum, da ich auch alle Postings lese. PN werden nicht beantwortet!
Danke, das habe ich gelesen, finde den "Dreher" aber nicht. Wahrscheinlich bin ich zu blind dafür....
Hier mein Output Code der Terminübersicht:
Also, ich checks nicht... Bitte um kurze Prüfung. Danke!
MHL
Hier mein Output Code der Terminübersicht:
Code: Alles auswählen
<?php
$gefunden=0; // um zu überprüfen, ob überhaupt Termine vorliegen
$date = date("Y-m-d");
echo "<p class=headline>CMS_HTMLHEAD[1]</p>"; // Überschrift der Seite mit der Termin-Übersicht
echo "<font class=subheadline>CMS_HTMLHEAD[2]</font>"; // Sub-Überschrift der Seite mit der Termin-Übersicht
echo '<table border=0 cellspacing=0 cellpadding=0 width=\"100%\">';
$sql = "SELECT ARTLANG.idart, CONTENT.value, CONTENT.typeid
FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["cat"]." AS CAT, ".$cfg["tab"]["content"]." AS CONTENT
WHERE ARTLANG.idart = CATART.idart AND CATART.idcat = CAT.idcat AND ARTLANG.idartlang = CONTENT.idartlang
AND ARTLANG.idlang = '".$lang."' AND CAT.idcat = '".$idcat."' AND CAT.idclient = '".$client."'
AND ARTLANG.online = '1' AND CATART.is_start='0'
ORDER BY ARTLANG.idart, CONTENT.typeid ASC"; // Alle Artikel der Kategorie einlesen, die nicht Startartikel (= Terminübersicht) sind
$db->query($sql);
$j=0; $anz=0;
if ($db->num_rows() != 0)
{
$termin = array(array()); // Array erzeugen, in dem die Termine abgelegt werden;
while ($j < $db->num_rows()) // alle Datensätze durchlaufen
{
$db->next_record();
if ($db->f("idart") > $termin["idart"][$anz])
{
$anz++;
}
switch ($db->f("typeid")) {
case 0: // Anfangstermin
$termin["datum1"][$anz] = $db->f("value");
$termin["jahr1"][$anz] = substr($db->f("value"),0,4);
$termin["monat1"][$anz] = substr($db->f("value"),5,2);
$termin["tag1"][$anz] = substr($db->f("value"),8,2);
$termin["idart"][$anz] = $db->f("idart");
break;
case 1: // Anfangsuhrzeit
$termin["zeit1"][$anz] = $db->f("value");
$termin["datum1"][$anz] = $termin["datum1"][$anz]." ".$termin["zeit1"][$anz];
break;
case 2: // Endtermin
$termin["datum2"][$anz] = $db->f("value");
$termin["jahr2"][$anz] = substr($db->f("value"),0,4);
$termin["monat2"][$anz] = substr($db->f("value"),5,2);
$termin["tag2"][$anz] = substr($db->f("value"),8,2);
break;
case 3: // Enduhrzeit
$termin["zeit2"][$anz] = $db->f("value");
$termin["datum2"][$anz] = $termin["datum2"][$anz]." ".$termin["zeit2"][$anz];
break;
case 4: // Ort
$termin["ort"][$anz] = $db->f("value");
break;
case 6: // Titel
$termin["titel"][$anz] = $db->f("value");
break;
}
$j++;
}
array_multisort ( $termin["datum1"], SORT_ASC, SORT_STRING, $termin["datum2"], SORT_ASC, SORT_STRING,
$termin["jahr1"], $termin["monat1"], $termin["tag1"], $termin["zeit1"],
$termin["jahr2"], $termin["monat2"], $termin["tag2"], $termin["zeit2"],
$termin["idart"], $termin["ort"], $termin["titel"] ); // nach Datum sortieren
for ($i=0; $i<=$anz; $i++)
{
if ( $termin["datum1"][$i] >= $date || $termin[$i]["datum2"] >= $date ) // nur Termine, die noch aktuell sind, aufnehmen
{
if ( $termin["monat1"][$i] !== $termin["monat1"][$i-1] || $gefunden == 0 ) // überprüfen, ob Monatsnahme einzufügen ist
{
echo ' <tr>
<td colspan=6><img border="0" src="images/transparent.gif" width="100%" height="2">
</tr>
<tr>
<td colspan=6><p class="breadcrumb">';
switch ($termin["monat1"][$i]) {
case 1: echo "Januar"; break;
case 2: echo "Februar"; break;
case 3: echo "März"; break;
case 4: echo "April"; break;
case 5: echo "Mai"; break;
case 6: echo "Juni"; break;
case 7: echo "Juli"; break;
case 8: echo "August"; break;
case 9: echo "September"; break;
case 10: echo "Oktober"; break;
case 11: echo "November"; break;
case 12: echo "Dezember"; break; }
if ( $i>1 && $termin["jahr1"][$i] != $termin["jahr1"][$i-1] ) // überprüfen, ob Jahr einzufügen ist
{
echo ' '.$termin["jahr1"][$i];
}
echo '</p></td>
</tr>';
}
$gefunden=1;
echo ' <tr>
<td valign="top" width="110" height="15"><p class="text">'.$termin["tag1"][$i].'.'; // Anfangsdatum ausgeben
if ( strlen($termin["tag2"][$i]) < 2 && strlen($termin["zeit1"][$i]) >1 ) // falls kein Enddatum (Eintagestermin), aber Anfangszeit, diese ausgeben
{
echo '</p></td><td width="80" valign="top"><p class="text"> '.$termin["zeit1"][$i].' Uhr';
} elseif ( strlen($termin["tag2"][$i]) > 1 ) // falls Enddatum (Mehrtagestermin), dieses ausgeben
{
echo ' – '.$termin["tag2"][$i].'.';
if ( $termin["monat2"][$i] != $termin["monat1"][$i]) // falls Enddatum nicht im gleichem Monat
{
echo $termin["monat2"][$i].'.';
if ( $termin["jahr2"][$i] != $termin["jahr1"][$i]) // falls Enddatum nicht im gleichen Jahr
{
echo substr($termin["jahr2"][$i],2,2).'.';
}
}
echo '</p></td><td width="80"><p>';
} else
{
echo '</p></td><td valign="top"><p class="text">';
}
$navmod_link ="front_content.php?client=".$client."?=".$lang."&idcat=".$idcat."&idart=".$termin["idart"][$i]."";
echo '</p></td>
<td><img border="0" src="images/transparent.gif" width="8" height="1"></td>
<td valign="top" width="90"><p class="text">'.urldecode($termin["ort"][$i]).'</p></td>
<td><img border="0" src="images/transparent.gif" width="8" height="1"></td>
<td valign="top" width="230"><p><a href="'.$sess->url("$navmod_link").'" class="text">'.urldecode($termin["titel"][$i]).'</a></p></td>
</tr>';
}
}
}
if ( $gefunden == 0 ) // falls kein aktueller Termin vorliegt
{
echo ' <tr>
<td colspan=5 class=text>Es liegen aktuell keine Termine vor!</td>
</tr>';
}
?>
</table>
MHL
-
- Beiträge: 57
- Registriert: Mo 3. Mai 2004, 08:19
- Kontaktdaten:
Vielleicht interessiert ja die Lösung des ursprünglichen Fragestellers noch. Zuerst ein Link auf unseren Terminkalender, wo man das Modul mal in Aktion betrachten kann:
http://www.johanneum-lingen.de/cms/fron ... hp?idcat=6
Und nachfolgend der Code des Outputbereichs des Moduls (der Input ist leer).
Gruß, Guido
http://www.johanneum-lingen.de/cms/fron ... hp?idcat=6
Und nachfolgend der Code des Outputbereichs des Moduls (der Input ist leer).
Gruß, Guido
Code: Alles auswählen
<?
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Terminuebersicht
* Author : agon
* Copyright : Contenido - four for business
* Created : 22-08-2002
* Modified : 22-08-2002
* Modifiziert für's Johanneum Lingen: April 2004 von GMP
************************************************/
$gefunden=0; // um zu überprüfen, ob überhaupt Termine vorliegen
$date = date("Y-m-d");
echo '<table border=0 cellspacing=0 cellpadding=0 width=\"100%\">';
echo '<tr>
<td colspan="3"><h2>Zeit</h2></td>
<td colspan="2"><h2>Ort</h2></td>
<td colspan="1"><h2>Details (Klick!)</h2></td></tr>
<tr>
<td colspan=6><img src="upload/bilder/blind.gif" height="6"></td>
</tr>';
$sql = "SELECT ARTLANG.idart, CONTENT.value, CONTENT.typeid
FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG, ".$cfg["tab"]["cat"]." AS CAT, ".$cfg["tab"]["content"]." AS CONTENT
WHERE ARTLANG.idart = CATART.idart AND CATART.idcat = CAT.idcat AND ARTLANG.idartlang = CONTENT.idartlang
AND ARTLANG.idlang = '".$lang."' AND CAT.idcat = '".$idcat."' AND CAT.idclient = '".$client."'
AND ARTLANG.online = '1' AND CATART.is_start='0'
ORDER BY ARTLANG.idart, CONTENT.typeid ASC"; // Alle Artikel der Kategorie einlesen, die nicht Startartikel (= Terminübersicht) sind
$db->query($sql);
$j=0; $anz=0;
if ($db->num_rows() != 0)
{
$termin = array(array()); // Array erzeugen, in dem die Termine abgelegt werden;
while ($j < $db->num_rows()) // alle Datensätze durchlaufen
{
$db->next_record();
if ($db->f("idart") > $termin["idart"][$anz])
{
$anz++;
}
switch ($db->f("typeid"))
{
case 0: // Anfangstermin
$termin["datum1"][$anz] = $db->f("value");
$termin["jahr1"][$anz] = substr($db->f("value"),0,4);
$termin["monat1"][$anz] = substr($db->f("value"),5,2);
$termin["tag1"][$anz] = substr($db->f("value"),8,2);
$termin["idart"][$anz] = $db->f("idart");
break;
case 1: // Anfangsuhrzeit
$termin["zeit1"][$anz] = $db->f("value");
$termin["datum1"][$anz] = $termin["datum1"][$anz]." ".$termin["zeit1"][$anz];
break;
case 2: // Endtermin
$termin["datum2"][$anz] = $db->f("value");
$termin["jahr2"][$anz] = substr($db->f("value"),0,4);
$termin["monat2"][$anz] = substr($db->f("value"),5,2);
$termin["tag2"][$anz] = substr($db->f("value"),8,2);
break;
case 3: // Enduhrzeit
$termin["zeit2"][$anz] = $db->f("value");
$termin["datum2"][$anz] = $termin["datum2"][$anz]." ".$termin["zeit2"][$anz];
break;
case 4: // Ort
$termin["ort"][$anz] = $db->f("value");
break;
case 6: // Titel
$termin["titel"][$anz] = $db->f("value");
break;
}
$j++;
}
array_multisort ( $termin["datum1"], SORT_ASC, SORT_STRING, $termin["datum2"], SORT_ASC, SORT_STRING,
$termin["jahr1"], $termin["monat1"], $termin["tag1"], $termin["zeit1"],
$termin["jahr2"], $termin["monat2"], $termin["tag2"], $termin["zeit2"],
$termin["idart"], $termin["ort"], $termin["titel"] ); // nach Datum sortieren
for ($i=0; $i<=$anz; $i++)
{
if ( $termin["datum1"][$i] >= $date || $termin["datum2"][$i] >= $date ) // nur Termine, die noch aktuell sind, aufnehmen
{
if ( $termin["monat1"][$i] !== $termin["monat1"][$i-1] || $gefunden == 0 ) // überprüfen, ob Monatsnahme einzufügen ist
{
echo '
<tr>
<td colspan=6 class="liste_1"><h2>';
switch ($termin["monat1"][$i]) {
case 1: echo "Januar"; break;
case 2: echo "Februar"; break;
case 3: echo "März"; break;
case 4: echo "April"; break;
case 5: echo "Mai"; break;
case 6: echo "Juni"; break;
case 7: echo "Juli"; break;
case 8: echo "August"; break;
case 9: echo "September"; break;
case 10: echo "Oktober"; break;
case 11: echo "November"; break;
case 12: echo "Dezember"; break; }
if ( $i>1 && $termin["jahr1"][$i] != $termin["jahr1"][$i-1] ) // überprüfen, ob Jahr einzufügen ist
{
echo ' '.$termin["jahr1"][$i];
}
echo '</h2></td></tr>';
}
$gefunden=1;
echo '
<tr>
<td colspan=6 class="liste_2"><img src="upload/bilder/blind.gif" height="3"></td>
</tr>';
if ( $termin["datum1"][$i] < $date)
{
echo '
<tr>
<td nowrap valign="top"><p id="font">Seit '.$termin["tag1"][$i].'.'; // Anfangsdatum ausgeben
if ( strlen($termin["tag2"][$i]) < 2 && strlen($termin["zeit1"][$i]) >1 ) // falls kein Enddatum (Eintagestermin), aber Anfangszeit, diese ausgeben
{
echo '</p></td><td nowrap valign="top"><p>'.$termin["zeit1"][$i].' Uhr';
} elseif ( strlen($termin["tag2"][$i]) > 1 ) // falls Enddatum (Mehrtagestermin), dieses ausgeben
{
echo '<br>bis '.$termin["tag2"][$i].'.';
if ( $termin["monat2"][$i] != $termin["monat1"][$i]) // falls Enddatum nicht im gleichem Monat
{
echo $termin["monat2"][$i].'.';
if ( $termin["jahr2"][$i] != $termin["jahr1"][$i]) // falls Enddatum nicht im gleichen Jahr
{
echo substr($termin["jahr2"][$i],2,2).'.';
}
}
echo '</p></td><td><p>';
} else
{
echo '</p></td><td><p>';
}
$navmod_link ="front_content.php?client=".$client."?=".$lang."&idcat=".$idcat."&idart=".$termin["idart"][$i]."";
echo '</p></td>
<td><img src="upload/bilder/blind.gif" border="0" width="8"></td>
<td valign="top"><p>'.urldecode($termin["ort"][$i]).'</p></td>
<td><img src="upload/bilder/blind.gif" border="0" width="8"></td>
<td width="65%" valign="top"><b><a href="'.$sess->url("$navmod_link").'" id="font">'.urldecode($termin["titel"][$i]).'</a></b></td>
</tr>';
}
else
{
echo'
<tr>
<td nowrap valign="top"><p id="font">'.$termin["tag1"][$i].'.'; // Anfangsdatum ausgeben
if ( strlen($termin["tag2"][$i]) < 2 && strlen($termin["zeit1"][$i]) >1 ) // falls kein Enddatum (Eintagestermin), aber Anfangszeit, diese ausgeben
{
echo '</p></td><td nowrap valign="top"><p>'.$termin["zeit1"][$i].' Uhr';
} elseif ( strlen($termin["tag2"][$i]) > 1 ) // falls Enddatum (Mehrtagestermin), dieses ausgeben
{
echo '<br>bis '.$termin["tag2"][$i].'.';
if ( $termin["monat2"][$i] != $termin["monat1"][$i]) // falls Enddatum nicht im gleichem Monat
{
echo $termin["monat2"][$i].'.';
if ( $termin["jahr2"][$i] != $termin["jahr1"][$i]) // falls Enddatum nicht im gleichen Jahr
{
echo substr($termin["jahr2"][$i],2,2).'.';
}
}
echo '</p></td><td><p>';
} else
{
echo '</p></td><td><p>';
}
$navmod_link ="front_content.php?client=".$client."?=".$lang."&idcat=".$idcat."&idart=".$termin["idart"][$i]."";
echo '</p></td>
<td><img src="upload/bilder/blind.gif" border="0" width="8"></td>
<td valign="top"><p>'.urldecode($termin["ort"][$i]).'</p></td>
<td><img src="upload/bilder/blind.gif" border="0" width="8"></td>
<td width="65%" valign="top"><b><a href="'.$sess->url("$navmod_link").'" id="font">'.urldecode($termin["titel"][$i]).'</a></b></td>
</tr>';
}
echo '
<tr>
<td colspan=6><img src="upload/bilder/blind.gif" height="3"></td>
</tr>';
}
}
}
if ( $gefunden == 0 ) // falls kein aktueller Termin vorliegt
{
echo '
<tr>
<td colspan=6><b>Es liegen aktuell keine Termine vor!</b></td>
</tr>';
}
?>
</table>
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
danke fuers Veroeffentlichen, aber wo war nun der Dreher? Nachdem ich gesehen habe, dass ich mit meiner Vermutung falsch lag, habe ich meine vorige Antwort geloescht, um niemanden zu verwirren.
Bitte keine unaufgeforderten Privatnachrichten mit Hilfegesuchen schicken. WENN ich helfen kann, dann mache ich das im Forum, da ich auch alle Postings lese. PN werden nicht beantwortet!