X-Git-Url: https://scm.cri.ensmp.fr/git/Portfolio.git/blobdiff_plain/2da869b2b46179d64c05eaac4081226fdbbbc9ff..e73353500c67453ef9663d67eaeee7dd46c358ee:/skins/lightboxcontext.py diff --git a/skins/lightboxcontext.py b/skins/lightboxcontext.py deleted file mode 100644 index fcc86f6..0000000 --- a/skins/lightboxcontext.py +++ /dev/null @@ -1,117 +0,0 @@ -##parameters= -from Products.CMFCore.utils import getToolByName -from Products.Portfolio.utils import translate -def _(message) : return translate(message, context).encode('utf-8') -options = {} - -uidh = getToolByName(context, 'portal_uidhandler') -utool = getToolByName(context, 'portal_url') -atool = getToolByName(context, 'portal_actions') -pptool = getToolByName(context, 'portal_photo_print', None) -portal_url = utool() -lightboxUrl = context.absolute_url() -portal = utool.getPortalObject() -portalDepth = len(portal.getPhysicalPath()) -req = context.REQUEST -toUrl = req.physicalPathToURL -resp = req.RESPONSE -selDict = req.SESSION.get('objects_selection_dict', {}) -bsize = portal.getProperty('default_batch_size', 20) - -if traverse_subpath[-1] == 'photo_view_ajax' : - photoSubPath = traverse_subpath[:-1] - ajax = True -else : - photoSubPath = traverse_subpath - ajax = False - -photo = portal.restrictedTraverse(photoSubPath) -photouid = uidh.register(photo) - -lightboxUids = context.getUidList() - -if pptool : - buyable = bool(pptool.getPrintingOptionsFor(photo)) - sd = context.session_data_manager.getSessionData(create=1) - cart = sd.get('cart', None) - if cart and cart.locked : - buyable = False -else : - buyable = False -options['buyable'] = buyable - -infos = [] -posOfPhoto = 0 - -if ajax == True : - try : posOfPhoto = lightboxUids.index(photouid) - except ValueError : pass - options['backToContextUrl'] = '%s?b_start:int=%s' % (lightboxUrl, posOfPhoto/bsize*bsize) - relPhotoPath = '/'.join(photo.getPhysicalPath()[portalDepth:]) - lastBcUrl = '%s/lightboxcontext/%s' % (lightboxUrl, relPhotoPath) - options['lastBcUrl'] = lastBcUrl - app = context.restrictedTraverse('/') - meth = app.restrictedTraverse(photo.getPhysicalPath() + ('photo_view_ajax_template',)) - return meth(**options) - - -for i, uid in enumerate(lightboxUids) : - b = uidh.getBrain(uid) - size = b.getThumbnailSize - size = {'width':int(size['width']/2.0), 'height':int(size['height']/2.0)} - - className = selDict.has_key(uid) and 'selected' or '' - if uid == photouid : - className = ('%s displayed' % className).lstrip() - posOfPhoto = i - - relPhotoPath = '/'.join(b.getPath().split('/')[portalDepth:]) - href = '%s/lightboxcontext/%s' % (lightboxUrl, relPhotoPath) - - d = {'src': '%s/getThumbnail' % b.getURL() - ,'href': href - ,'thumbSize': size - ,'title' : b.Description - ,'className': className - ,'displayed' : uid == photouid - , 'index': i - } - infos.append(d) - -if posOfPhoto > 0 : - previous = infos[posOfPhoto - 1]['href'] -else : - previous = infos[0]['href'] - -if posOfPhoto < len(infos) -1 : - next = infos[posOfPhoto + 1]['href'] -else : - next = infos[-1]['href'] - -contextInfos = {'infos':infos, - 'isSelected': selDict.has_key(photouid), - 'backUrl' : '%s?b_start:int=%s' % (lightboxUrl, posOfPhoto/bsize*bsize), - 'index' : posOfPhoto, - 'previous' : previous, - 'next' : next, - 'reBaseCtxUrl':'/^%s/' % ('%s/lightboxcontext/' % lightboxUrl).replace('/', '\/'), - 'canonicalUrl': "'%s/'" % portal_url} - -options['contextInfos'] = contextInfos - -# breadcrumbs customization -breadcrumbs = context.breadcrumbs() -breadcrumbs.append( - {'id' : photo.getId() - ,'title' : photo.title_or_id() - , 'url' : req.ACTUAL_URL} -) - -options['breadcrumbs'] = breadcrumbs - - -ti = photo.getTypeInfo() -method_id = ti.queryMethodID('view', context=photo) -app = context.restrictedTraverse('/') -meth = app.restrictedTraverse(photo.getPhysicalPath() + (method_id,)) -return meth(req, resp, **options)