Module für Terminverwaltung

Gesperrt
PseudoPunk
Beiträge: 26
Registriert: So 7. Aug 2005, 12:43
Kontaktdaten:

Beitrag von PseudoPunk » Di 21. Mär 2006, 18:33

ja danke für den Link, hatte ich gesehen.
Allein durch diese Seite bin ich erst auf die idee gekommen das es das evt schon irgendwo fertig gibt und ich es bei der Suche einfach übersehe.

hab ihm mal ne PM geschrieben und warte derzeit auf Antwort.

B E A S T I E
Beiträge: 14
Registriert: Fr 25. Nov 2005, 18:29
Kontaktdaten:

Beitrag von B E A S T I E » Mi 22. Mär 2006, 15:06

Hallo,

ich benutze folgenden Code für die Terminübersicht.
Ich habe nur das Problem das die Endzeit immer angezeigt wird, auch wenn keine Uhrzeit eingetragen ist. Wie kann ich das ändern, das nur die Zeit angezeigt wird, wenn auch was eingetragen ist ???

Danke für Eure hilfe
Code hat geschrieben: <?php
$gefunden=0; // um zu überprüfen, ob überhaupt Termine vorliegen
$date = date("Y-m-d");
echo '<div>';

$sql = "SELECT ARTLANG.idart, CONTENT.value, CONTENT.typeid, ARTLANG.idartlang
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= -1;
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++;
}
if (isStartArticle($db->f("idartlang"),$idcat,$lang)==FALSE)
{
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"),0,0);
$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 '

<div class="monjahr" style="border-bottom:#CCCCCC 1px solid; font-weight:bold;">';
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; }

echo ' '.$termin["jahr1"][$i];
echo '</div>';
}
$gefunden=1;
$navmod_link ="front_content.php?&idcat=".$navmod_id."&idart=".$termin["idart"][$i]."";
echo '

<div class="details" ><a href="'.$sess->url("$navmod_link").'" id="font">'.urldecode($termin["titel"][$i]).'</a></div>
<div class="ort" >'.urldecode($termin["ort"][$i]).'</div>
<div class="termine">'.substr($termin["datum1"][$i],8,2).'.'.substr($termin["datum1"][$i],5,2).'.'.substr($termin["datum1"][$i],0,4).'</br>Beginn: '.$termin["zeit1"][$i].' Uhr'; // Anfangsdatum ausgeben
if ( strlen($termin["tag2"][$i]) < 2 && strlen($termin["zeit1"][$i]) >1 ) // falls kein Enddatum (Eintagestermin), aber Anfangszeit, diese ausgeben
{
echo '</div><div class="zeit">&nbsp;Ende:&nbsp;'.$termin["zeit2"][$i].' Uhr</div>';
}
elseif ( strlen($termin["tag2"][$i]) > 1 ) // falls Enddatum (Mehrtagestermin), dieses ausgeben
{
echo ' bis <br>'.substr($termin["datum2"][$i],8,2).'.'.substr($termin["datum2"][$i],5,2).'.'.substr($termin["datum2"][$i],0,4).'<br>Ende: '.$termin["zeit2"][$i].' Uhr';
if ( $termin["monat2"][$i] != $termin["monat1"][$i]) // falls Enddatum nicht im gleichem Monat
{
echo $termin["monat2"][$i].'</div>';
if ( $termin["jahr2"][$i] != $termin["jahr1"][$i]) // falls Enddatum nicht im gleichen Jahr
{
echo substr($termin["jahr2"][$i],0,0).'';
}
}
echo '';
}
else
{
echo '</div>';
}
echo '</br>';
}
}
}
if ( $gefunden == 0 ) // falls kein aktueller Termin vorliegt
{
echo ' <div><b>Es liegen aktuell keine Termine vor!</b></div>';
}
?>
</div>

Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Beitrag von Halchteranerin » Mi 22. Mär 2006, 16:19

keine Ahnung, welche Version das ist. Bei der Version, die ich hier irgendwo veroeffentlicht habe, ist das nicht der Fall. Vielleicht vergleichst du sie mal ...
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!

Neuling
Beiträge: 78
Registriert: Di 24. Mai 2005, 14:46
Kontaktdaten:

Beitrag von Neuling » Mi 29. Mär 2006, 19:59

ok ich habe das Terminmodul zum laufen gebracht!

Allerdings funktioniert die Sortierung nicht wirklich!

Das Problem ist folgendes:
Wenn ich einen Artikel anlege für z.B den Monat April und danach einen für Mai und dann wieder einen für April (immer für das gleiche Jahr) sieht meine Darstellung wie folgt aus:

April
Mai
April

richtig wäre ja wenn der Termin dann zu April hinzugefügt und vor Mai stehen würde!

kennt den "Fehler" jemand???

PseudoPunk
Beiträge: 26
Registriert: So 7. Aug 2005, 12:43
Kontaktdaten:

Beitrag von PseudoPunk » Do 30. Mär 2006, 02:47

wo tritt der fehler denn auf? in der gesammt Liste mit allen terminen oder bei der terminausgabe die nur eine bestimmte anzahl an Terminen ausgibt?

wenn letzteres hatte ich den Fehler selbst und habe den berichtigten Code bereits auf Seite 6 geposted ;)

Neuling
Beiträge: 78
Registriert: Di 24. Mai 2005, 14:46
Kontaktdaten:

Beitrag von Neuling » Do 30. Mär 2006, 13:22

Ich verstehe zwar gerade den Unterschied ziwschen Artikelliste und Artikelübersicht nicht gnaz aber nein, daran liegt es nicht! ich habe deienen Code getest! Leider ohne Erfolg!

Hier könnt ihr euch das Problem selber mal anschauen:
http://www.tsv-goldbach.de/productive_s ... p?idcat=86

Neuling
Beiträge: 78
Registriert: Di 24. Mai 2005, 14:46
Kontaktdaten:

Beitrag von Neuling » Mi 5. Apr 2006, 15:18

kennt des Problem niemand????

DEDE
Beiträge: 314
Registriert: Do 19. Feb 2004, 16:15
Kontaktdaten:

Bild ... keine Uhrzeit

Beitrag von DEDE » Mi 6. Sep 2006, 21:52

Hallo allerseits,

woran kann es liegen, dass in der Terminausgabe keine Uhrzeit mehr
gezeigt wird, wenn man im Termin-Artikel den Bild Container füllt.

Dicken Dank

Daniela

Gesperrt