ALTER TABLE users ADD birthday DATE;
+
+CREATE FUNCTION mmdd(d date) RETURNS text AS $SQL$ SELECT to_char($1,'MM-DD') $SQL$ LANGUAGE SQL IMMUTABLE;
+
+CREATE INDEX users_birthday_index ON users (mmdd(birthday)) WHERE birthday IS NOT NULL;
|| $c->check_user_roles(qw/no_fleet_update/)))),
$c->forward('listTargets');
}
+ if ($c->res->status == 200){
+ my $birthdays = $dbh->prepare(q{SELECT username
+ ,date_part('year',age(birthday)) AS age
+ FROM users WHERE birthday IS NOT NULL
+ AND mmdd(birthday) = mmdd(CURRENT_DATE)
+ });
+ $birthdays->execute;
+ $c->stash(birthdays => $birthdays->fetchall_arrayref({}));
+ }
}
=head1 AUTHOR
</form>
</li>
[% END %]
-</ul> <p>Tick: [% game.tick %]</p>
+</ul>
+[% IF birthdays.size > 0 %]
+<table>
+<tr><th colspan="2">Birthdays today</th></tr>
+[% FOR b IN birthdays %]
+ <tr><td>[% b.username %]</td><td>[% b.age %]</td></tr>
+[% END %]
+</table>
+[% END %]
+<p>Tick: [% game.tick %]</p>
<ul class="linkbar">
<li><a href="/rankings/planets">Planet Rankings</a></li>
<li><a href="/rankings/alliances">Alliance Rankings</a></li>