diff options
| -rw-r--r-- | js/webtrees-1.5.0.js | 39 |
1 files changed, 27 insertions, 12 deletions
diff --git a/js/webtrees-1.5.0.js b/js/webtrees-1.5.0.js index 2dbac79049..16e6924898 100644 --- a/js/webtrees-1.5.0.js +++ b/js/webtrees-1.5.0.js @@ -582,20 +582,35 @@ function valid_date(datefield) { datestr=datestr.replace(/^([\w ]+) ?~ ?([\w ]+)$/, "FROM $1 TO $2"); if (datestr.match(/^=([\d ()\/+*-]+)$/)) datestr=eval(RegExp.$1); - // Americans frequently enter dates as SEPTEMBER 20, 1999 + // Convert full months to short months + // TODO: also convert long/short months in other languages + datestr=datestr.replace(/(JANUARY)/, "JAN"); + datestr=datestr.replace(/(FEBRUARY)/, "FEB"); + datestr=datestr.replace(/(MARCH)/, "MAR"); + datestr=datestr.replace(/(APRIL)/, "APR"); + datestr=datestr.replace(/(MAY)/, "MAY"); + datestr=datestr.replace(/(JUNE)/, "JUN"); + datestr=datestr.replace(/(JULY)/, "JUL"); + datestr=datestr.replace(/(AUGUST)/, "AUG"); + datestr=datestr.replace(/(SEPTEMBER)/, "SEP"); + datestr=datestr.replace(/(OCTOBER)/, "OCT"); + datestr=datestr.replace(/(NOVEMBER)/, "NOV"); + datestr=datestr.replace(/(DECEMBER)/, "DEC"); + + // Americans frequently enter dates as SEP 20, 1999 // No need to internationalise this, as this is an english-language issue - datestr=datestr.replace(/(JAN)(?:UARY)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(FEB)(?:RUARY)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(MAR)(?:CH)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(APR)(?:IL)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(JAN) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(FEB) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(MAR) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(APR) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); datestr=datestr.replace(/(MAY) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(JUN)(?:E)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(JUL)(?:Y)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(AUG)(?:UST)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(SEP)(?:TEMBER)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(OCT)(?:OBER)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(NOV)(?:EMBER)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); - datestr=datestr.replace(/(DEC)(?:EMBER)? (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(JUN) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(JUL) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(AUG) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(SEP) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(OCT) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(NOV) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); + datestr=datestr.replace(/(DEC) (\d\d?)[, ]+(\d\d\d\d)/, "$2 $1 $3"); // Apply leading zero to day numbers datestr=datestr.replace(/(^| )(\d [A-Z]{3,5} \d{4})/, "$10$2"); |
