Index: openacs-4/packages/ref-timezones/sql/postgresql/ref-timezones-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ref-timezones/sql/postgresql/ref-timezones-create.sql,v diff -u -N -r1.5 -r1.5.4.1 --- openacs-4/packages/ref-timezones/sql/postgresql/ref-timezones-create.sql 23 Feb 2002 20:15:55 -0000 1.5 +++ openacs-4/packages/ref-timezones/sql/postgresql/ref-timezones-create.sql 18 Feb 2003 10:02:55 -0000 1.5.4.1 @@ -176,7 +176,7 @@ return "timestamp" (p_local_varchar || ''+00''); end if; - return "timestamp" (p_local_varchar || ''+00'') - interval (gmt_offset || ''seconds'') + return "timestamp" (p_local_varchar || ''+00'') - "interval" (gmt_offset || ''seconds'') from timezone_rules where tz_id = p_tz_id and v_base_time between utc_start and utc_end; @@ -194,7 +194,7 @@ from timezone_rules where tz_id = p_tz_id and p_time between utc_start and utc_end; - return interval (v_offset || ''seconds''); + return "interval" (v_offset || ''seconds''); end;' language 'plpgsql'; create function timezone__get_rawoffset (integer, timestamp) returns interval as ' @@ -207,8 +207,8 @@ select case isdst_p - when ''t'' then interval (gmt_offset || ''seconds'') - ''3600 seconds'' - else interval (gmt_offset || ''seconds'') + when ''t'' then "interval" (gmt_offset || ''seconds'') - ''3600 seconds'' + else "interval" (gmt_offset || ''seconds'') end into v_offset from timezone_rules @@ -252,14 +252,15 @@ where tz_id = p_tz_id and p_timestamp between utc_start and utc_end; end if; - select to_char(p_timestamp + interval (extract(tz from p_timestamp) || ''seconds'') + - interval (gmt_offset || ''seconds''), p_format) || '' '' || v_abbrev + select to_char(p_timestamp + "interval" ( + (extract(timezone_hour from p_timestamp) * 3600 + extract(timezone_minute from p_timestamp) * 60) || ''seconds'') + + "interval" (gmt_offset || ''seconds''), p_format) || '' '' || v_abbrev into v_date from timezone_rules where tz_id = p_tz_id and p_timestamp between utc_start and utc_end; if not found then - select to_char(p_timestamp + interval (extract (tz from p_timestamp) || ''seconds''), p_format) + select to_char(p_timestamp + "interval" ((extract(timezone_hour from p_timestamp) * 3600 + extract(timezone_minute from p_timestamp) * 60) || ''seconds''), p_format) into v_date; end if;