[Zope-CMF] FS Skins and Last-Modified

2006-01-25 Thread Doyon, Jean-Francois
Hello,

I have several FS based skins that use DTML ... I've been controlling
caching through the usual:





This has worked well for me for some time now ...

But, for some reason, now it seems bobobase_modification_time comes out
wrong :(

It's stuck at some date in October, even though the files are far more
recent.  This is causing problems with web browsers that have stale code
when they shouldn't, breaks my AJAX interfaces, etc ...

I saw FSObject has getModTime(), but I can't seem to call it from anywhere?
I tried in the header, or in a separate Python Script, to no avail.

So for now, clients are still being told that their months old .js file has
not been modified, even though it has :( (Which is causing me nightmares)

Any know what's going on? A quick fix? A better idea? Any help would be
greatly appreciated!

(This is Zope 2.7.4 with CMF 1.5.0 running on ZEO, I'm working on a major
rewrite with much more up to date versions ...)

Jean-François Doyon
Internet Service Development and Systems Support / Spécialiste de
dèveloppements internet et soutien technique
Canada Centre for Remote Sensing/Centre Canadien de télédétection
Natural Resources Canada/Ressources Naturelles Canada
http://atlas.gc.ca
Tel./Tél.: (613) 992-4902
Fax: (613) 947-2410
___
Zope-CMF maillist  -  Zope-CMF@lists.zope.org
http://mail.zope.org/mailman/listinfo/zope-cmf

See http://collector.zope.org/CMF for bug reports and feature requests


Re: [Zope-CMF] FS Skins and Last-Modified

2006-01-26 Thread Dieter Maurer
Doyon, Jean-Francois wrote at 2006-1-25 15:51 -0500:
> ... FSDTMLMethods ...
>But, for some reason, now it seems bobobase_modification_time comes out
>wrong :(
>
>It's stuck at some date in October, even though the files are far more
>recent.

Note that the "methods" (like "bobobase_modification_time")
inside an "FSDTMLMethod" do not act on the "FSDTMLMethod" but
on its (so called) client.

The model is like this:

  The "FSDTMLMethod" is called for an object, its client.

  Most methods used inside the "FSDTMLMethod" from the DTML namespace
  come in fact from "client" (or are acquired by it).

  Therefore, "bobobase_modification_time" give you the
  modification time of the ZODB (!) object that happens
  to be the "FSDMTMMethod"s client.

  When called from ZPublisher (as is apparently your case),
  the client is the object located during URL traversal
  before the "FSDTMLMethod" ("REQUEST.PARENTS[0]", to be precise).

-- 
Dieter
___
Zope-CMF maillist  -  Zope-CMF@lists.zope.org
http://mail.zope.org/mailman/listinfo/zope-cmf

See http://collector.zope.org/CMF for bug reports and feature requests