Für das WebCalendar habe ich einen Geburtstagspatch geschrieben. Er ermöglicht es, dass für Geburtstage das Alter angezeigt wird. Es werden dazu alle Termine in der Anzeige etwas abgewandelt, die sich jährlich wiederholen. In der Detailierten beschreibung erscheint dann aber der Originaltext.
Außerdem behebt dieser Patch auch noch das Problem, das auftritt, wenn jährlich wiederkehrende Termine vor dem 1.1.1970 (sprich Unixtime <0) liegen. Diese werden alle anstatt ihres richtigen Termines am 31.12. eines Jahres angezeigt. Durch den zweiten Teil des Patches wird der Termin zur Anzeige einfach aufs den gleichen Tag im Jahr 1970 gesetzt. Nicht davon betroffen ist die Altersberechnung.
diff -r webkalender/includes/functions.php WebCalendar-1.0.1/includes/functions.php
1930,1942c1931
< $events=query_events ( $user, true, $filter, $cat_id );
< #print_r($events);
< // Alter hinzufuegen
< for ($i=0;$i< if ($events[$i]['cal_type']== "yearly" ) {
< $alter=substr($date,0,4)-substr($events[$i]['cal_date'],0,4);
< $name=substr($events[$i]['cal_name'],0,strpos($events[$i]['cal_name']," (" ));
< $original=$events[$i]['cal_name'];
< $events[$i]['cal_name']=$name." ".$alter.".Geb";
< $events[$i]['cal_description'].="nAlter wurde automatisch errechnetnOriginaleintrag:n".$original;
< }
< }
< return $events;
---
> return query_events ( $user, true, $filter, $cat_id );
2173,2178d2161
< // Daten abfangen, die vor dem 1.1.1970 liegen
< # print_r($event);
< if (substr($event['cal_date'],0,4)<1970) {
< $event['cal_date']="1970".substr($event['cal_date'],4);
< }
< # echo " ".$dateYmd."
n";
Ab sofort sind externe an einem angehängten Symbol erkennbar. Das ganze ist mit CSS realisiert:
*.PostText a[href*='http'] {
background: url('/templates/philippstemplate/img/link.png') right no-repeat;
padding-right: 12px;
}
.PostText a[href^='http://blog.philippfleck'] {
background: url('/spacer.gif') right no-repeat;
padding-right: 0px;
}
Die erste Definition selektiert alle links, die mit "http" beginnen, und setzt das kleine Bild als Hintergrund. Da pLog absolut verlinkt ist die zweite Definition nötig: Sie selektiert alle Links, die mit "http://blog.philippfleck" anfangen und macht für solche Links die Änderungen rückgängig.
Ach ja.. Das ganze funktionier nur in Gecko-basierten Browsern