lots of gutting. purposes, input, and output were unclear in many places. still broken.

This commit is contained in:
aj
2010-11-08 01:29:15 -08:00
parent 9ad8f3c826
commit d00937c3e9
13 changed files with 828 additions and 552 deletions

View File

@@ -4,22 +4,16 @@
-export([
localtime/1
, utc_to_local/2
% , local_to_utc/2
% , zone_convert/3
, next_timechange/1
, next_timechange/2
, next_timechange_after/2
]).
-export([load/1, dev_start/0, test/0]).
-define(gs2dt(X), calendar:gregorian_seconds_to_datetime(X)).
-define(dt2gs(X), calendar:datetime_to_gregorian_seconds(X)).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% API
% PUBLIC API
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -27,30 +21,17 @@
localtime(TzName) ->
utc_to_local(erlang:universaltime(), TzName).
utc_to_local(UTCDatetime, TzName) ->
{ok, Zone, Rule}= current_as_of_utc(UTCDatetime, TzName),
SecDiff= time_offset(Zone, Rule),
date_add(UTCDatetime, SecDiff).
ezic_date:add_seconds(UTCDatetime, SecDiff).
%% local_to_utc(Datetime, TzName) ->
%% {ok, Zone, Rule}= current_as_of_local(Datetime, TzName),
%% SecDiff= time_offset(Zone, Rule),
%% date_subtract(Datetime, SecDiff).
%% zone_convert(Datetime, FromTimeZone, ToTimeZone) ->
%% UTC= local_to_utc(Datetime, FromTimeZone),
%% utc_to_local(UTC, ToTimeZone).
next_timechange(TzName) ->
next_timechange(erlang:universaltime(), TzName).
next_timechange_after(erlang:universaltime(), TzName).
next_timechange(UTCDatetime, TzName) ->
UTCDatetime, TzName,
next_timechange_after(_UTCDatetime, _TzName) ->
not_done.
@@ -64,8 +45,7 @@ next_timechange(UTCDatetime, TzName) ->
load(Folder) ->
ezic_loader:load(Folder),
ezic_flatten:flatten().
ezic_loader:load(Folder).
dev_start() ->
@@ -103,11 +83,3 @@ time_offset(Zone, Rule) ->
DSTSec= ezic_rule:dst_sec(Rule),
OffsetSec + DSTSec.
date_add(Datetime, SecDiff) ->
?gs2dt(?dt2gs(Datetime) + SecDiff).
%% date_subtract(Datetime, SecDiff) ->
%% ?gs2dt(?dt2gs(Datetime) - SecDiff).