[pLog-svn] r2415 - in plog/branches/plog-1.0.2: class/locale
templates/rss
Paul Westbrook
paul at westbrooks.org
Fri Aug 26 00:21:18 GMT 2005
Hello,
It looks like it is a bug in the reader. When I looks at the
feed in my reader (NewsFire), I see the date/time of that post as
"Today, 10:25 AM". My time zone is PDT, so this looks correct.
Is it possible that your RSS reader is not recognizing DST?
--Paul
On Aug 25, 2005, at 4:38 PM, Jon Daley wrote:
> Okay, finally got a chance to look at this. If I am
> understanding the RSS feed correctly
> (http://jon.limedaley.com/plog/rss/rss20/1)
> I am looking at "Weekend Weekend Sailing Adventures, Part II"
> which was posted at 13:49, and correctly shows that time on the
> admin and user side.
> In the RSS document, it says: "Thu, 25 Aug 2005 13:25:09 -0400"
> My computer is set to EDT, but my RSS reader prints out 12:25.
> So, that means it is a bug in the reader?
>
> On Fri, 19 Aug 2005, Paul Westbrook wrote:
>
>
>> Hello,
>> This works for me. My server is in the same time zone as me, so
>> my offset is 0. The dates are reported with the -0700 offset,
>> which is correct for PST now.
>>
>> When I changed the offset, the times changed to reflect that
>> timezone, and the timezone offset also changed correctly. What
>> offset are you using? What offset is being added to the dates in
>> the rss feed? It should be -0400 for EDT.
>>
>> The DST bug will only be a problem when the time that is being
>> formatted is across a DST boundary.
>>
>>
>> --Paul
>>
>>
>> On Aug 19, 2005, at 5:02 AM, Jon Daley wrote:
>>
>>
>>> Does this work for you? It appears to do pretty strange
>>> things for me.
>>> Server is in same timezone as me. EST.
>>>
>>> Posts show correct time, RSS feed show DST bug that you mention.
>>>
>>> I thought I would try adding a +1 to see what that did to the
>>> DST bug. The post times went ahead 2 hours, RSS feeds stayed the
>>> same!!?
>>> On Fri, 19 Aug 2005, pwestbro at devel.plogworld.net wrote:
>>>
>>>> Author: pwestbro
>>>> Date: 2005-08-19 07:20:20 +0000 (Fri, 19 Aug 2005)
>>>> New Revision: 2415
>>>> Modified:
>>>> plog/branches/plog-1.0.2/class/locale/locale.class.php
>>>> plog/branches/plog-1.0.2/templates/rss/atom.template
>>>> plog/branches/plog-1.0.2/templates/rss/rss090.template
>>>> plog/branches/plog-1.0.2/templates/rss/rss20.template
>>>> Log:
>>>> Fixed the last part of bug http://bugs.plogworld.net/view.php?
>>>> id=442
>>>> Now the dates are output in local time of the poster, and not
>>>> the server.
>>>> If the blog info is passed into formatDate, the timeoffset is
>>>> used to
>>>> correct the time zone offset. Printing the dates in local time
>>>> zone, allow
>>>> additional information to be available, that is lost when
>>>> converting to GMT.
>>>> There may still be a problem when dealing with the boundary with
>>>> daylight
>>>> saving time. If the current date has DST in effect, and the
>>>> post date does
>>>> not, the time zone offset may be incorrect. This could
>>>> potentially be
>>>> solved by passing the date that is being parsed into the date
>>>> ("Z") call.
>>>> The documentation doesn't say what happens in this case.
>>>> Also, fixed a mistake in my last checkin. There was a
>>>> conditional that was
>>>> always true, so I just removed the conditional
>>>> Modified: plog/branches/plog-1.0.2/class/locale/locale.class.php
>>>> ===================================================================
>>>> --- plog/branches/plog-1.0.2/class/locale/locale.class.php
>>>> 2005-08-18 21:12:48 UTC (rev 2414)
>>>> +++ plog/branches/plog-1.0.2/class/locale/locale.class.php
>>>> 2005-08-19 07:20:20 UTC (rev 2415)
>>>> @@ -475,6 +475,7 @@
>>>> * <li>%S seconds</li>
>>>> * <li>%y 2-digit year representation</li>
>>>> * <li>%Y 4-digit year representation</li>
>>>> + * <li>%O Difference to Greenwich time (GMT) in
>>>> hours</li>
>>>> * <li>%% the '%' character
>>>> * </ul>
>>>> * (these have been added by myself and are therefore
>>>> incompatible with php)<ul>
>>>> @@ -482,7 +483,7 @@
>>>> * <li>%D cardinal representation of the day</li>
>>>> * </ul>
>>>> */
>>>> - function formatDate( $timeStamp, $format = null )
>>>> + function formatDate( $timeStamp, $format = null, $blog
>>>> = null )
>>>> {
>>>> // load the file if it hadn't been loaded yet
>>>> if( !is_array($this->_messages))
>>>> @@ -496,6 +497,26 @@
>>>> // and the same for the weekdays
>>>> $weekdayId = $timeStamp->getWeekdayId();
>>>> $weekday = $this->_messages["days"][$weekdayId];
>>>> +
>>>> + // Get the time zone offset for the server
>>>> + $timeZoneSec = date("Z");
>>>> + if ( $blog ) {
>>>> + //
>>>> + // The blog was specified. Use it to get the
>>>> time offset
>>>> + //
>>>> + $timeDiff = 0;
>>>> + $blogSettings = $blog->getSettings();
>>>> + $timeDiff = $blogSettings->getValue
>>>> ( 'time_offset' );
>>>> +
>>>> + // The following line relies on the fact that
>>>> the result will
>>>> + // be an int.
>>>> + $timeZoneSec += ( $timeDiff * 3600 );
>>>> + }
>>>> + // Now convert the time zone seconds to hours and
>>>> minutes
>>>> + $timeZoneHours = intval( abs($timeZoneSec) / 3600 );
>>>> + $timeZoneMins = intval(( abs($timeZoneSec) %
>>>> 3600 ) / 60 );
>>>> + $timeZoneDirection = ($timeZoneSec < 0 ) ? "-" : "+";
>>>> +
>>>>
>>>> // if the user did not specify a format, let's use
>>>> the default one
>>>> if( $format == null )
>>>> @@ -518,6 +539,7 @@
>>>> $values["%S"] = $timeStamp->getSeconds();
>>>> $values["%y"] = substr($timeStamp->getYear(), 2, 4 );
>>>> $values["%Y"] = $timeStamp->getYear();
>>>> + $values["%O"] = sprintf( "%s%02d%02d",
>>>> $timeZoneDirection, $timeZoneHours, $timeZoneMins );
>>>> $values["%%"] = "%";
>>>> $values["%T"] = $this->getDayOrdinal( $timeStamp )."
>>>> ".$this->tr("of")." ".$monthStr;
>>>> $values["%D"] = $this->getDayOrdinal( $timeStamp );
>>>> @@ -561,6 +583,7 @@
>>>> * <li>%S seconds</li>
>>>> * <li>%y 2-digit year representation</li>
>>>> * <li>%Y 4-digit year representation</li>
>>>> + * <li>%O Difference to Greenwich time (GMT) in hours
>>>> (Will always be +0000)</li>
>>>> * <li>%% the '%' character
>>>> * </ul>
>>>> * (these have been added by myself and are therefore
>>>> incompatible with php)<ul>
>>>> @@ -579,11 +602,9 @@
>>>> // The blog was specified. Use it to get the
>>>> time offset
>>>> //
>>>> $timeDiff = 0;
>>>> - if( $this->_blogInfo == null ) {
>>>> - $blogSettings = $blog->getSettings();
>>>> - $timeDiff = $blogSettings->getValue
>>>> ( 'time_offset' );
>>>> - $timeDiff *= -1;
>>>> - }
>>>> + $blogSettings = $blog->getSettings();
>>>> + $timeDiff = $blogSettings->getValue
>>>> ( 'time_offset' );
>>>> + $timeDiff *= -1;
>>>>
>>>> if( $timeDiff > 0 )
>>>> $timeStamp->addSeconds( $timeDiff * 3600 );
>>>> @@ -639,6 +660,7 @@
>>>> $values["%S"] = gmdate( "s", $time );
>>>> $values["%y"] = gmdate( "y", $time );
>>>> $values["%Y"] = gmdate( "Y", $time );
>>>> + $values["%O"] = "+0000";
>>>> $values["%%"] = "%";
>>>> $values["%T"] = $this->getDateOrdinal( gmdate( "d",
>>>> $time ) )." ".$this->tr("of")." ".$monthStr;
>>>> $values["%D"] = $this->getDateOrdinal( gmdate( "d",
>>>> $time ) );
>>>> Modified: plog/branches/plog-1.0.2/templates/rss/atom.template
>>>> ===================================================================
>>>> --- plog/branches/plog-1.0.2/templates/rss/atom.template
>>>> 2005-08-18 21:12:48 UTC (rev 2414)
>>>> +++ plog/branches/plog-1.0.2/templates/rss/atom.template
>>>> 2005-08-19 07:20:20 UTC (rev 2415)
>>>> @@ -3,7 +3,7 @@
>>>> <title>{$blog->getBlog()|escape}</title>
>>>> <link rel="alternate" type="text/html" href="{$url->blogLink()}" />
>>>> {assign var="newestDate" value=$posts[0]->getDateObject()}
>>>> -<modified>{$locale->formatDateGMT($newestDate, "%Y-%m-%dT%H:%M:%
>>>> S-00:00", $blog)}</modified>
>>>> +<modified>{$locale->formatDate($newestDate, "%Y-%m-%dT%H:%M:%S%
>>>> O", $blog)}</modified>
>>>> <tagline>{$blog->getAbout()|escape}</tagline>
>>>> <generator url="http://www.plogworld.net/" version="1.0.1">pLog</
>>>> generator>
>>>> {assign var="blogOwner" value=$posts[0]->getUserInfo()}
>>>> @@ -14,9 +14,9 @@
>>>> <title>{$post->getTopic()|escape}</title>
>>>> <link rel="alternate" type="text/html" href="{$url->postPermalink
>>>> ($post)}" />
>>>> {assign var="postDate" value=$post->getDateObject()}
>>>> - <modified>{$locale->formatDateGMT($postDate, "%Y-%m-%dT%H:%M:%
>>>> S-00:00", $blog)}</modified>
>>>> - <issued>{$locale->formatDateGMT($postDate, "%Y-%m-%dT%H:%M:%
>>>> S-00:00", $blog)}</issued>
>>>> - <created>{$locale->formatDateGMT($postDate, "%Y-%m-%dT%H:%M:%
>>>> S-00:00", $blog)}</created>
>>>> + <modified>{$locale->formatDate($postDate, "%Y-%m-%dT%H:%M:%S%
>>>> O", $blog)}</modified>
>>>> + <issued>{$locale->formatDate($postDate, "%Y-%m-%dT%H:%M:%S%O",
>>>> $blog)}</issued>
>>>> + <created>{$locale->formatDate($postDate, "%Y-%m-%dT%H:%M:%S%
>>>> O", $blog)}</created>
>>>> <summary type="text/plain">{$post->getText()|strip_tags|truncate:
>>>> 200:" ..."|escape:"html"}</summary>
>>>> <author>
>>>> {assign var="postOwner" value=$post->getUserInfo()}
>>>> Modified: plog/branches/plog-1.0.2/templates/rss/rss090.template
>>>> ===================================================================
>>>> --- plog/branches/plog-1.0.2/templates/rss/rss090.template
>>>> 2005-08-18 21:12:48 UTC (rev 2414)
>>>> +++ plog/branches/plog-1.0.2/templates/rss/rss090.template
>>>> 2005-08-19 07:20:20 UTC (rev 2415)
>>>> @@ -16,7 +16,7 @@
>>>> <description>{$post->getText()|escape}</description>
>>>> <link>{$url->postPermalink($post)}</link>
>>>> {assign var="postDate" value=$post->getDateObject()}
>>>> - <pubDate>{$locale->formatDateGMT($postDate, "%a, %d %b %Y %H:
>>>> %M:%S GMT", $blog)}</pubDate>
>>>> + <pubDate>{$locale->formatDate($postDate, "%a, %d %b %Y %H:%M:
>>>> %S %O", $blog)}</pubDate>
>>>> </item>
>>>> {/foreach}
>>>> </rdf:RDF>
>>>> Modified: plog/branches/plog-1.0.2/templates/rss/rss20.template
>>>> ===================================================================
>>>> --- plog/branches/plog-1.0.2/templates/rss/rss20.template
>>>> 2005-08-18 21:12:48 UTC (rev 2414)
>>>> +++ plog/branches/plog-1.0.2/templates/rss/rss20.template
>>>> 2005-08-19 07:20:20 UTC (rev 2415)
>>>> @@ -9,7 +9,7 @@
>>>> <title>{$blog->getBlog()|escape}</title>
>>>> <link>{$url->blogLink()}</link>
>>>> <description>{$blog->getAbout()|escape}</description>
>>>> - <pubDate>{$locale->formatDateGMT($now, "%a, %d %b %Y %H:%M:%S
>>>> GMT")}</pubDate>
>>>> + <pubDate>{$locale->formatDate($now, "%a, %d %b %Y %H:%M:%S %
>>>> O")}</pubDate>
>>>> <generator>http://www.plogworld.net</generator>
>>>> {foreach from=$posts item=post}
>>>> <item>
>>>> @@ -26,7 +26,7 @@
>>>> <category>{$category->getName()|escape}</category>
>>>> {/foreach}
>>>> {assign var="postDate" value=$post->getDateObject()}
>>>> - <pubDate>{$locale->formatDateGMT($postDate, "%a, %d %b %Y %H:
>>>> %M:%S GMT", $blog)}</pubDate>
>>>> + <pubDate>{$locale->formatDate($postDate, "%a, %d %b %Y %H:%M:
>>>> %S %O", $blog)}</pubDate>
>>>> <source url="{$url->rssLink("rss20")}">{$blog->getBlog()|
>>>> escape}</source>
>>>> {foreach from=$post->getArticleResources() item=resource}
>>>> {** please uncomment the line below if you'd like to server
>>>> everything but images, instead of
>>>> _______________________________________________
>>>> pLog-svn mailing list
>>>> pLog-svn at devel.plogworld.net
>>>> http://devel.plogworld.net/mailman/listinfo/plog-svn
>>>>
>>> **************************************************************
>>> * * The reason houses are made of *
>>> * Jon Daley * brick instead of aluminum *
>>> * * foil is the thermal *
>>> * http://jon.limedaley.com/ * diffusivity. *
>>> * * -- Professor Shaeffer *
>>> **************************************************************
>>> _______________________________________________
>>> pLog-svn mailing list
>>> pLog-svn at devel.plogworld.net
>>> http://devel.plogworld.net/mailman/listinfo/plog-svn
>>>
>>
>> --
>> Paul Westbrook
>> paul at westbrooks.org
>> <http://www.westbrooks.org>
>>
>>
>>
>
> http://jon.limedaley.com/plog/
> Happiness is not a station you arrive at, but a manner of traveling.
> -- Margaret Lee Runbeck
> _______________________________________________
> pLog-svn mailing list
> pLog-svn at devel.plogworld.net
> http://devel.plogworld.net/mailman/listinfo/plog-svn
>
>
--
Paul Westbrook
paul at westbrooks.org
<http://www.westbrooks.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2367 bytes
Desc: not available
Url : http://www.plogworld.net/pipermail/plog-svn/attachments/20050825/c2d1519a/smime.bin
More information about the pLog-svn
mailing list