A few months ago, one of my first enhancements I made to dasBlog was to change the way the CommentView page is rendered. Previously, it was rendered using the item template. However, I don’t include the entry post date in the item template, since it’s in big bold letters on the day template. So I changed the CommentView to render the single entry being displayed using the day template. This makes the CommentView page consistent with the Permalink page, which also renders the single entry using the day template.
However, when I made the change, I introduced a bug that shipped as part of the v1.4 release. When I called ProcessDayTemplate, I passed in the entry’s CreatedUtc time as the day to render parameter. This caused an issue where the CommentView would not render the entry when the day of the CreatedUtc did not equal the time-zone adjusted created date. For example, if I posted a new entry at 8pm PST, that is 4am UTC the following day. So if I ask to render the UTC based date, the time-zone adjusted entry does not fall on that day, and thus doesn’t render. So I changed the call to ProcessDayTemplate to use the entry’s CreatedLocalTime property instead of the CreatedUtc. I tested, all seemed good, so I submitted the fix, which made it into the v1.5 release.
Today, I noticed a thread on the dasBlog GDN workspace indicating the bug was still there. A little bit of tracking down and I discovered that what the server thinks is the local time does not always match what dasBlog thinks the local time is. CreatedLocalTime is based on the server local time. If you run your server in a different time zone than dasBlog is configured for, you run into basically the same issue as before. Of course, since I run my dev server in the same timezone as dasBlog, I never noticed it. However, since my production server is on the east coast and I’m on the west coast, the issue showed up on my production machine.
I posted a code fix over on the GDN Message Board Thread. Basically, I calculate the correct time based off the dasBlog configured time zone. Seems to have fixed the problem on my dev and production machines. (I’m running my dev machine in a different time zone now). Let me know if you run into any more issues.