do it in a Python script: ## Script (Python) "getImg" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters= ##title= ## req = container.REQUEST res = req.RESPONSE imgname=traverse_subpath[0] res.setHeader('Content-type', 'image/jpeg') therealimage=context[imgname] context.dosomething() return therealimage.data Tested, by creating a dummy dosomething. You basically need to use it like this: http://localhosy:8080/getImg/tick.gif where tick.gif is the image you want served, this gets put into the traverse_subpath as entry 0, which is then used to get the realimage. ps. This can be called from anywhere, it's just a url ;) hth Phil ----- Original Message ----- From: "Trevor Toenjes" <zope@toenjes.com> To: <zope@zope.org> Sent: Monday, March 11, 2002 2:31 PM Subject: [Zope] Using RESPONSE.setHeader to have a Method act like an Image
More info...setting the header works until I add additional methods. ---- | <dtml-call "RESPONSE.setHeader('Content-type', 'image/jpeg')"> | <dtml-var expr="therealimage.data"> ---- ...works
---- | <dtml-call "RESPONSE.setHeader('Content-type', 'image/jpeg')"> | <dtml-var expr="therealimage.data"> | | <dtml-var dosomething> ---- ...doesnt work properly. Returns the wrong Content-Length.
-Trevor
-----Original Message----- From: zope-admin@zope.org [mailto:zope-admin@zope.org]On Behalf Of Trevor Toenjes Sent: Monday, March 11, 2002 7:50 AM To: zope@zope.org Subject: [Zope] How a method only returns the data of an image
I need to make a method act like the clone of an image. Without extending the Image class...(I would like to do this in DTML or python-script) I am simply trying to get a method to return the exact data of an Image object, so it can be used in normal HTML <IMG src="myimage.jpg?somevariable">. If the Image is a method, it can execute some logic based on the QUERY_STRING.
example: DTML_Method "myimage.jpg" # should look and smell like a JPG to the browser (but also execute some logic without # effecting the image header data) ---- | <dtml-call "RESPONSE.setHeader('Content-type', 'image/jpeg')"> | <dtml-var expr="therealimage.data"> | <dtml-var somelogic> ---- But this doesn't return the proper data or Content-Length: "therealimage" is a standard Zope Image object.
Any help is greatly appreciated... -Trevor
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )