Bug #2823
closedDirectory listing / sort by last modified does not work on Safari
Description
On Safari, Date.parse(at.replace(/-/g, '/')) results in NaN if at is s.th. like "2017-Oct-01 12:34:56"
Date.parse() expects "Oct 01, 2017 12:34:56"
Attached patch is suggested for latest git checkout
Files
Updated by stbuehler about 7 years ago
Maybe it would be better to dump the date in seconds since epoch as data-time
attribute in the cell.
Updated by gstrauss about 7 years ago
HTML5 provides <time> tag, but we'd like to work with (some) older browsers, too.
Does Safari support a simplified ISO 8601 format? e.g. Date.parse("2017-Oct-01 12:34:56") or Date.parse("2017-Oct-01T12:34:56") ?
[edit: the above examples I gave are not ISO 8601 since they use "Oct" instead of "10"]
... Seems like many people recommend a custom date parse routine rather than using Date.parse().
https://stackoverflow.com/questions/31137792/date-parse-in-safari
I like @stbuehler suggestion to use custom cell attribute data-time and to sort on that. Using an HTML-compliant custom attribute should be compatible with existing behavior.
Updated by fjo about 7 years ago
Please see the attached patch. It uses a data-time attribute. mod_dirlist.c from lighttpd2 uses an attribute named "val" for this.
Updated by stbuehler about 7 years ago
Please use the .patch
extension for files including patches.
Updated by stbuehler about 7 years ago
Is the hasAttribute
check really necessary? Can we check the return value of getAttribute
instead?
Updated by fjo about 7 years ago
Yes, i meant it as a safety measure and to avoid an if-statement within "else if (sort_column == date_column) {".
Updated by gstrauss about 7 years ago
- Status changed from New to Patch Pending
- Target version changed from 1.4.x to 1.4.46
Updated by gstrauss about 7 years ago
- Status changed from Patch Pending to Fixed
- % Done changed from 0 to 100
Applied in changeset d3f4a62c10b2634811e8202b9c653532ff86783b.
Also available in: Atom