Kalender Geburtstagseintrag - ohne Jahres angabe

Eingetragen von blackcoder am Do, 04. Dez 2014 - 19:00


Mir ist heute aufgefallen, dass für ein Benutzer im Kalender ein Eintrag wie "2014. Geburtstag von Müller" angezeigt wurde.

Dies kam daher, da der Benutzer im Profil für sein Geburtsdatum das Jahr nicht mit eingetragen hat ("0000-12-13"). Ich finde es legitim nur Monat und Tag angeben zu wollen und daher habe ich es jetzt bei mir dahingehend geändert, dass in dem Fall nur "Geburtstag von Müller" angezeigt wird.

Hier mal ein Weg das Problem zu beheben:
Index: include/contents/kalender.php
===================================================================
--- include/contents/kalender.php	(revision 25)
+++ include/contents/kalender.php	(revision 27)
@@ -79,13 +79,22 @@
 while ($r = db_fetch_assoc($result)) {
 	list($y,$m,$d) = explode('-',$r['gebdatum']);
 	$date  = mktime(0,0,0,$m,$d);
-	$alter = date('Y') - $y;
-	$row = array(
-    'title' => $alter.'. Geburtstag von '.$r['name'],
-    'text'  => 'Der '.$alter.'. Geburtstag von [url=http://'.($_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"]).'?user-details-'.$r['id'].'][b]'.$r['name'].'[/b][/url]',
-    'time'  => $date + 99,
-    'id'    => '999'.$r['id'],
-  );
+	if ($y == '0000') {
+		$row = array(
+		'title' => 'Geburtstag von '.$r['name'],
+		'text'  => 'Geburtstag von [url=http://'.($_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"]).'?user-details-'.$r['id'].'][b]'.$r['name'].'[/b][/url]',
+		'time'  => $date + 99,
+		'id'    => '999'.$r['id'],
+		);
+	} else {
+		$alter = date('Y') - $y;
+		$row = array(
+		'title' => $alter.'. Geburtstag von '.$r['name'],
+		'text'  => 'Der '.$alter.'. Geburtstag von [url=http://'.($_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"]).'?user-details-'.$r['id'].'][b]'.$r['name'].'[/b][/url]',
+		'time'  => $date + 99,
+		'id'    => '999'.$r['id'],
+		);
+	}
 	$data_id['999'.$r['id']] = $row;
 	$data[$date][] = $row;
 }



verwendete ilch Version: 1.1 P