|
7 | 7 | * |
8 | 8 | * |
9 | 9 | * IDENTIFICATION |
10 | | - * $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/datetimes.c,v 1.7 1996/11/14 21:38:58 scrappy Exp $ |
| 10 | + * $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/datetimes.c,v 1.8 1997/01/26 15:31:12 scrappy Exp $ |
11 | 11 | * |
12 | 12 | *------------------------------------------------------------------------- |
13 | 13 | */ |
14 | 14 | #include<stdio.h>/* for sprintf() */ |
15 | 15 | #include<string.h> |
16 | 16 |
|
17 | 17 | #include<postgres.h> |
| 18 | +#include<miscadmin.h> |
18 | 19 | #include<utils/builtins.h> |
19 | 20 | #include<utils/datetime.h> |
20 | 21 |
|
@@ -50,19 +51,19 @@ date_in(char *datestr) |
50 | 51 | # defineCHECK_DATE_LEN(datestr) 1 |
51 | 52 | #endif |
52 | 53 |
|
53 | | -#ifndefEUROPEAN_DATES |
54 | | -if (!CHECK_DATE_LEN(datestr)|| |
55 | | -sscanf(datestr,"%d%*c%d%*c%d",&m,&d,&y)!=3) { |
56 | | -elog(WARN,"date_in: date \"%s\" not of the form mm-dd-yyyy", |
57 | | -datestr); |
58 | | - } |
59 | | -#else |
60 | | -if (!CHECK_DATE_LEN(datestr)|| |
61 | | -sscanf(datestr,"%d%*c%d%*c%d",&d,&m,&y)!=3) { |
62 | | -elog(WARN,"date_in: date \"%s\" not of the form dd-mm-yyyy", |
63 | | -datestr); |
| 54 | +if (EuroDates==1) {/* Expect european format dates */ |
| 55 | +if (!CHECK_DATE_LEN(datestr)|| |
| 56 | +sscanf(datestr,"%d%*c%d%*c%d",&d,&m,&y)!=3) { |
| 57 | +elog(WARN,"date_in: date \"%s\" not of the form dd-mm-yyyy", |
| 58 | +datestr); |
| 59 | + } |
| 60 | + }else { |
| 61 | +if (!CHECK_DATE_LEN(datestr)|| |
| 62 | +sscanf(datestr,"%d%*c%d%*c%d",&m,&d,&y)!=3) { |
| 63 | +elog(WARN,"date_in: date \"%s\" not of the form mm-dd-yyyy", |
| 64 | +datestr); |
| 65 | + } |
64 | 66 | } |
65 | | -#endif |
66 | 67 | if (y<0||y>32767) |
67 | 68 | elog(WARN,"date_in: year must be limited to values 0 through 32767 in \"%s\"",datestr); |
68 | 69 | if (m<1||m>12) |
@@ -94,13 +95,12 @@ date_out(int4 dateVal) |
94 | 95 | date= (DateADT*)&dateStore; |
95 | 96 | dateStore=dateVal; |
96 | 97 |
|
97 | | -#ifndefEUROPEAN_DATES |
98 | | -sprintf(datestr,"%02d-%02d-%04d", |
99 | | - (int)date->month, (int)date->day, (int)date->year); |
100 | | -#else |
101 | | -sprintf(datestr,"%02d-%02d-%04d", |
102 | | - (int)date->day, (int)date->month, (int)date->year); |
103 | | -#endif |
| 98 | +if (EuroDates==1)/* Output european format dates */ |
| 99 | +sprintf(datestr,"%02d-%02d-%04d", |
| 100 | + (int)date->day, (int)date->month, (int)date->year); |
| 101 | +else |
| 102 | +sprintf(datestr,"%02d-%02d-%04d", |
| 103 | + (int)date->month, (int)date->day, (int)date->year); |
104 | 104 |
|
105 | 105 | returndatestr; |
106 | 106 | } |
|