[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ic] UserDB Last Login bug when running with mysql


Quoting Carl Bailey (suppressed):
> Using IC 5.4, we noticed that the user's last login time in the UI was 
> showing up as December 1969 for everyone.  We traced the issue to this:
> 
> The mysql column type is timestamp, which returns the data like 
> YYYYMMDDHHMMSS.
> However the UI page customer_view.html uses a [time] tag to display the 
> value.  The problem is that the time tag only works correctly when 
> given a "unix" time value, and fails when given the mysqlvalue above.
> 
> We solved it by changing the UI page as follows:
>         [calc]
>             my $dt = "[loop-param mod_time]";
>             $dt =~ m/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/;
>             return "$2/$3/$1 $4:$5:$6"
>         [/calc]
> 
> However, this fix works only for mysql and does not allow such flexible 
> formatting as the time tag.
> A more general fix would be to adjust the time tag something along the 
> lines that follow:
> 
> -- use POSIX qw(ceil strftime LC_CTYPE);
> ++ use POSIX qw(ceil mktime strftime LC_CTYPE);
> 
> my $now = $opt->{time} || time;
> ++ if (length($now) == 14) {
> ++  # we have a mysql timestamp on our hands
> ++  $now = m/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/;
> ++  my $now = mktime($6,$5,$4,$3,$2 - 1,$1 - 1900);
> ++}

Hmm. I am not sure about this, as it is quite possible that time values
will be changing as UNIX moves to a 64-bit number. Also, MySQL could
easily change the length of the return value, and it may even change
based on locale or other settings.

However, I am willing to look at something that can reliably detect
an iso time and do something with it. Any suggestions from the 
group?

-- 
Mike Heins
Perusion -- Expert Interchange Consulting    http://www.perusion.com/
phone +1.765.647.1295  tollfree 800-949-1889 <suppressed>

Fast, reliable, cheap.  Pick two and we'll talk.  -- unknown
_______________________________________________
interchange-users mailing list
suppressed
http://www.icdevgroup.org/mailman/listinfo/interchange-users


Mail converted by mhonarc 2.6.15
This archive provided courtesy of JSW4.NET, Internet Hosting Services for Small Business.