29. Februar Geburtstage 1.0

Peh
Titel: 29. Februar Geburtstage 1.0
Version: 1.0
Beschreibung: Beschreibung: Was macht der Hack:
Der Hack gratuliert Geburtstagskindern die am 29. Feb. Geburtstag haben
am 1. März wenn kein Schaltjahr ist. (Sonst werden die ja immer vergessen.)
Wenn es den 29. Feb. gibt wird am 01.03. natürlich nicht mehr Gratuliert.

Einbauzeit: ca. 2 min

Copyright/Haftungsausschluss:
Dier Hack darf nur vom Autor (Peh) zum Download angeboten werden. Modifikation
nur für Eigenbedarf erlaubt. Copyright darf nicht entfernt werden.
Der Autor übernimmt keinerlei Haftung für Schäden die durch den Einbau
oder die Benutzung dieses Hacks entstehen.


Version / History:
1.0 2005-06-08 Hack erstellt.


Bitte schreibt auch mal ein Feedback wie es bei euch geklappt hat.
----


weiter zum Download
Radiation
Zitat:
Original von Peh
Bitte schreibt auch mal ein Feedback wie es bei euch geklappt hat.


Denke da wirst du dich aber noch gedulden müssen (29. war ja schon) großes Grinsen Die Idee ist aber super.
Yenik
Danke, das werde ich auf jeden Fall einbauen.
Ancipitia
hallo,
ich finde die idee auch super!! vielen dank!!
Barmagi
Hallo,
dies ist ein toller Hack, den ich nun schon seit 3 Jahren nutze. Nun kam die Anfrage eines betroffenen Users, ob am die Gratulation nicht auf den 28. Febuar legen kann, weil das ja der letzte Tag des Febuar ist in einem normalen Jahr.
Also die Frage kann mir dazu jemand helfen?

Gruß
Barmagi
Peh
hi, da ich davon ausgehe dass der hack bereits eingebaut ist

suche in der index.php
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
/* 29. FEBRUAR (c) by Peh */
    if (formatdate("m-d"time()) == formatdate("m-d"mktime(00031,  date("Y")))){
        /* nur am 1.3. ausführen und wenn es den 29. nicht gab */
        $yesterday intval(formatdate("d"mktime(000date("m"), date("d")-1,  date("Y"))));
        if ($yesterday != 29){
            $currentdate formatdate("m-d"mktime(0002292000));
            $result $db->unbuffered_query("SELECT userid, username, birthday FROM bb".$n."_users WHERE birthday LIKE '%-$currentdate' ORDER BY username ASC");
            while ($row $db->fetch_array($result)) {
                $row['username'] = htmlconverter($row['username']);
                $birthyear intval(wbb_substr($row['birthday'], 04));
                $age $currentyear $birthyear;
                if ($age || $age 200$age '';
                else $age " ($age) am 29.02.";
                if (isset($birthdaybit)) eval("\$birthdaybit .= \"".$tpl->get("index_birthdaybit")."\";");
                else eval("\$birthdaybit = \"".$tpl->get("index_birthdaybit")."\";");
            }
        
        }
    }/* ende 29. Februrar */


und ersetze es durch
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
/* 29. FEBRUAR (c) by Peh */
    if (formatdate("m-d"time()) == formatdate("m-d"mktime(000228,  date("Y")))){
        /* nur am 28.2. ausführen und wenn es den 29. nicht gab */
        $tomorrow intval(formatdate("d"mktime(000date("m"), date("d")+1,  date("Y"))));
        if ($tomorrow != 29){
            $currentdate formatdate("m-d"mktime(0002292000));
            $result $db->unbuffered_query("SELECT userid, username, birthday FROM bb".$n."_users WHERE birthday LIKE '%-$currentdate' ORDER BY username ASC");
            while ($row $db->fetch_array($result)) {
                $row['username'] = htmlconverter($row['username']);
                $birthyear intval(wbb_substr($row['birthday'], 04));
                $age $currentyear $birthyear;
                if ($age || $age 200$age '';
                else $age " ($age) am 29.02.";
                if (isset($birthdaybit)) eval("\$birthdaybit .= \"".$tpl->get("index_birthdaybit")."\";");
                else eval("\$birthdaybit = \"".$tpl->get("index_birthdaybit")."\";");
            }
        
        }
    }/* ende 29. Februrar */


konnte es leider nicht testen, müsste aber so funktionieren

es wird jetzt nicht mehr am 1.3. gratuliert sondern schon am 28.2.

gruß peh