Opt-in birth date database inspired by LambdaMOO Birthday Machine
(and its many predecessors). Also generates reports on user age
distribution.
* Functions
- register user birth date
- list birthdays today
- display user birthday cake
- hide user birth year/age in b'day list
- hide user b'day (use birth date for statistics only)
- list b'days for given day or month
- list b'days between two month-days
- list birth dates in given day, month, year
- list birth dates between two dates
- update user activity timestamp (bddb use or last login)
- show birth date for given user
- show distribution of user ages
* Ideas
- bddb is accessed with one script, bday ("Birthday Machine").
- bday w/out arg's will list today's b'days and cake on user's b'day
(suitable to run from login profile script).
- Support date formats: yyyy mm dd, MMM dd yyyy, dd MMM yyyy
Where: dd - day of month (1-31)
mm - month number (1-12)
MMM - month name (3+ character abbreviation)
yyyy - A.D. (4-digits, Y-100 < yyyy < Y)
Y - current year
- Why not make life easier and make all dates "yyyy mm dd"?
- can all functions be deduced from arg combo?
- encrypt db
- e-mail cake to users who "miss" b'day
* Syntax
|---+------+-----------------------+------------------------------------|
| 1 | bday | [-p n] [+ yyyy mm dd] | Register user birth date; Set |
| | | | privacy level: |
| | | | -p1 Display user b'day only; use |
| | | | year/age for stat's only |
| | | | -p2 Use birth date for stat's only |
|---+------+-----------------------+------------------------------------|
| 2 | bday | | List users w/ b'days today; |
| | | | Display user b'day cake |
|---+------+-----------------------+------------------------------------|
| 3 | bday | [-u] USER | Display USER's b'day |
| | | | (-u is for differentiating syntax |
| | | | 3 from 4 (for month only IF MMM |
| | | | supported) |
|---+------+-----------------------+------------------------------------|
| 4 | bday | [yyyy] [mm] [dd] | List users w/ b'days in given |
| | | | month/month-day/year-month/ |
| | | | year/date |
|---+------+-----------------------+------------------------------------|
| 5 | bday | yyyy mm dd yyyy mm dd | List birth dates between dates |
|---+------+-----------------------+------------------------------------|
| 6 | bday | mm dd mm dd | List b'days between month-days |
|---+------+-----------------------+------------------------------------|
| 7 | bday | -g | Graph birth date dist. by year/age |
|---+------+-----------------------+------------------------------------|
| 8 | bday | -m | Graph b'day dist. by month |
|---+------+-----------------------+------------------------------------|
| 9 | bday | -hV | Display help/version |
|---+------+-----------------------+------------------------------------|