from Products.CMFCore.CMFCatalogAware import CMFCatalogAware
from Products.Photo.Photo import Photo as BasePhoto
from Products.CMFDefault.DublinCore import DefaultDublinCoreImpl
-from Products.CMFCore.utils import getToolByName
+from Products.CMFCore.utils import getToolByName, getUtilityByInterfaceName
from Products.Photo.cache import memoizedmethod
from Products.DCWorkflow.utils import modifyRolesForPermission
from interfaces import IPhoto
InitializeClass(Photo)
-PhotoFactory = Factory(Photo)
\ No newline at end of file
+class _PhotoFactory(Factory) :
+ def __call__(self, *args, **kw):
+ if not kw.has_key('thumb_height') or not kw.has_key('thumb_width') :
+ utool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IURLTool')
+ portal = utool.getPortalObject()
+ size = portal.getProperty('thumb_size')
+ kw.update({'thumb_height' : size, 'thumb_width' : size })
+ return self._callable(*args, **kw)
+
+
+PhotoFactory = _PhotoFactory(Photo)
\ No newline at end of file