diff options
author | Eike Rathke <erack@redhat.com> | 2012-01-10 16:42:02 +0100 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2012-01-11 13:18:45 +0100 |
commit | f6c465e3555c8ac9d2902b3ac35f2d4784eed4c9 (patch) | |
tree | e9d1992460b0b7389288ac48090595226fadf6cc /svl/source | |
parent | strict date recognition using locale's separator and ISO 8601 (diff) | |
download | core-f6c465e3555c8ac9d2902b3ac35f2d4784eed4c9.tar.gz core-f6c465e3555c8ac9d2902b3ac35f2d4784eed4c9.zip |
lower date acceptance with only two numbers
Diffstat (limited to 'svl/source')
-rw-r--r-- | svl/source/numbers/zforfind.cxx | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/svl/source/numbers/zforfind.cxx b/svl/source/numbers/zforfind.cxx index 3cf61e17dc2e..ba315fc4f720 100644 --- a/svl/source/numbers/zforfind.cxx +++ b/svl/source/numbers/zforfind.cxx @@ -2690,6 +2690,23 @@ bool ImpSvNumberInputScan::IsNumberFormat( { if (nAnzNums > 3) res = false; + else if (nAnzNums == 2) + { // check locale dependent abbreviation + /* FIXME: here go locale data acceptance patterns + * instead */ + // Only one separator, 11/23 yes, 23/11 yes, 11/23/ + // no, 23/11/ no, 11-23 yes, 23-11 no?, 11-23- no, + // 23-11- no, 23.11 no, 23.11. yes. + sal_Unicode cDateSep = pFormatter->GetDateSep().GetChar(0); + if (cDateSep == '.' && (nAnzStrings == 3 || + (nNums[1]+1 < nAnzStrings && + sStrArray[nNums[1]+1].GetChar(0) != cDateSep))) + res = false; + else if ((cDateSep == '/' || cDateSep == '-') && + (nNums[1]+1 < nAnzStrings && + sStrArray[nNums[1]+1].GetChar(0) == cDateSep)) + res = false; + } } break; |