Whenever someone writes a page, the creation time and/or modification time may be displayed.
The user has the choice to hide that information or edit it to make it to his/her taste. (i.e. maybe the person created the page on the 1st of Aug. but really wrote the content on the 15th...)
The date and time are defined in a single widget. The editing of that widget should present a simple line (i.e. 08/01/2011 13:45) or an advanced calendar and clock popup. The widget should have a button so someone can switch between both edit methods.
The widget is smart enough to detect errors on the spot. So minutes or seconds outside of 0 and 59 or hours larger than 23 or a date which is not correct such as 31 Feb, etc. That way the client avoids sending invalid dates and time to the server and the client user can fix his errors much faster.
The widget should be smart enough to allow for various combinations. For example, when asking for a birth date, you may only want the day and month, no year and no time. When asking for time, you may want very high precision, expecting decimal numbers behin the period on the seconds. On the other hand, you may just want to know the hour and minute.
When presenting a date to the end users, the system should offer various formats and not just the Gregorian format. For example, may Arab countries use a different calendar. Some Asian countries have yet another calendar. There are also funny calendars such as the Discordian calendar (see man 1 ddate,) which we could offer, or, for a D&D related website, we could offer a calendar that matches the website adventure.
See: Locale feature (Date, Time, numbers, currency, etc.) [core]
Snap! Websites
An Open Source CMS System in C++