Peter Bengtsson wrote:
On 2/23/07, Tom Von Lahndorff <[EMAIL PROTECTED]> wrote:

I have a folder called "images" and a form that to add images to that
folder. The form called an external method (../images/addImage) that
references a python script, the one I sent earlier, that creates 4
versions of the images in 4 sizes and places them in the "images"
folder. Also in the "images" folder I have a ZCatalog called
"ImageData". I'm trying to add a line to the python script to
automatically catalog any images that are added to the "images" folder.
I tried "ImageData.manage_catalogObject..." but I kept getting back:
NameError: global name 'ImageData' is not defined. Any advice? Thanks.

Perhaps you meant

This is the complete script:

def makeImages(self, imagefile, newkeywords, newcaption, newsource):

   import PIL.Image, ImageEnhance, ImageFilter
   import PIL
   from StringIO import StringIO
   import os.path
   import datetime
   import time

   # create the data in a new PIL Image.
   image=image.resize((640, 480), PIL.Image.ANTIALIAS)
   image2=image.resize((320, 240), PIL.Image.ANTIALIAS)
   image3=image.resize((160, 120), PIL.Image.ANTIALIAS)
   image4=image.resize((80, 60), PIL.Image.ANTIALIAS)

   # get the data in memory.
   newimage_file=StringIO(), "JPEG")
   newimage_file2=StringIO(), "JPEG")
   newimage_file3=StringIO(), "JPEG")
   newimage_file4=StringIO(), "JPEG")

   # create an id for the image
   now =
   newimage_id=newimageid + '-640.jpg'
   newimage_id2=newimageid + '-320.jpg'
   newimage_id3=newimageid + '-160.jpg'
   newimage_id4=newimageid + '-80.jpg'

   # if there's an old image, delete it
   if newimage_id in self.objectIds():
   if newimage_id2 in self.objectIds():
   if newimage_id3 in self.objectIds():
   if newimage_id4 in self.objectIds():

   # create the Zope image object for the new image
self.manage_addProduct['OFSP'].manage_addImage(newimage_id, newimage_file, '') self.manage_addProduct['OFSP'].manage_addImage(newimage_id2, newimage_file2, '') self.manage_addProduct['OFSP'].manage_addImage(newimage_id3, newimage_file3, '') self.manage_addProduct['OFSP'].manage_addImage(newimage_id4, newimage_file4, '')

   # now find the new zope object so we can modify
   # its properties.
   newimage_image=getattr(self, newimage_id)
   newimage_image.manage_addProperty('keywords', '', 'string')
   newimage_image.manage_addProperty('caption', '', 'string')
   newimage_image.manage_addProperty('imageid', '', 'string')
newimage_image.manage_changeProperties(keywords=newkeywords, caption=newcaption, imageid=newimageid, source=newsource)
   context.ImageData.manage_catalogObject(newimage_image, uid)
   newimage_image2=getattr(self, newimage_id2)
   newimage_image2.manage_addProperty('imagefile2', '', 'string')
   newimage_image3=getattr(self, newimage_id3)
   newimage_image3.manage_addProperty('imagefile3', '', 'string')
   newimage_image4=getattr(self, newimage_id4)
   newimage_image4.manage_addProperty('imagefile4', '', 'string')

Zope maillist  -
**   No cross posts or HTML encoding!  **
(Related lists - )

Zope maillist  -
**   No cross posts or HTML encoding!  **
(Related lists - )

Reply via email to