Monday, November 08, 2010 at 12:04 AM.
system.verbs.builtins.mainResponder.localization.timeString
on timeString (d, pta=nil) { <<Gets the localized version of a time string for a given date value. <<d is a date or a string that can be coerced to a date <<4/12/00; 6:04:03 PM by JES <<Changes: <<05/17/00 6:38:19 PM by JS <<optimized -- no longer call mainResponder.localization.getDateTimeReplacementTable, rather build the table here <<06/28/00; 1:05:16 AM by JES <<Fixed problem with midnight hour on 12-hour clocks displaying as 0:xx:xx if pta == nil { pta = html.getPageTableAddress ()}; local (adrLanguageTable = mainResponder.localization.getLanguageTableAddress (pta)); local (fl24HourClock = adrLanguageTable^.strings.date.use24HourClock); local (replacementTable); new (tableType, @replacementTable); // 05/01/00 JES: use replacement table instead of a list local (yr, mo, day, hr, min, sec); date.get (d, @day, @mo, @yr, @hr, @min, @sec); if fl24HourClock { replacementTable.hour = hr; replacementTable.["am/pm"] = ""} else { // 12-hour clock if hr > 11 { if hr > 12 { hr = hr - 12}; replacementTable.hour = hr; replacementTable.["am/pm"] = adrLanguageTable^.strings.date.meridianNames.pm} else { if hr == 0 { // 06/28/00 JES: fix zero-hour problem with 12-hour clocks hr = 12}; replacementTable.hour = hr; replacementTable.["am/pm"] = adrLanguageTable^.strings.date.meridianNames.am}}; replacementTable.mm = string.padWithZeros (min, 2); replacementTable.ss = string.padWithZeros (sec, 2); return (mainResponder.getString ("date.time", @replacementTable, pta: pta))}
This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.