X-Git-Url: https://scm.cri.ensmp.fr/git/photoprint.git/blobdiff_plain/ccaba0f54cbd41250107d36a49154353425da8b3:/skins/order_list.py..b521f0db73266a7bd6b69e6a9891046a03c482ee:/Products/photoprint/skins/static/gitweb.js diff --git a/skins/order_list.py b/skins/order_list.py deleted file mode 100755 index 2635e58..0000000 --- a/skins/order_list.py +++ /dev/null @@ -1,95 +0,0 @@ -##parameters=b_start=0, key='created', reverse=False -from Products.CMFCore.utils import getToolByName -from Products.Plinn.PloneMisc import Batch -from Products.photoprint.utils import Message as _ -from ZTUtils import make_query - -wtool = getToolByName(context, 'portal_workflow') -mtool = getToolByName(context, 'portal_membership') -options = {} -folders = context.contentValues({'portal_type':'Order Folder'}) -options['folders'] = folders - -columns = ( {'key': 'created', - 'title': _('Date'), - 'width': None, - 'colspan': None} - , {'key': 'customer', - 'title': _('Customer'), - 'width': None, - 'colspan': None} - , {'key': 'id', - 'title': _('Reference'), - 'width': None, - 'colspan': None} - , {'key': 'quantity', - 'title': _('Prints'), - 'width': None, - 'colspan': None} - , {'key': 'amount', - 'title': _('Amount'), - 'width': None, - 'colspan': None } - , {'key': 'state', - 'title': _('State'), - 'width': None, - 'colspan': None } - ) - -target = context.absolute_url() - -for column in columns : - images = [] - if key == column['key']: - if reverse : - toggleImg = getattr(context, 'arrowDown.gif') - alt = _('descending sort') - else : - toggleImg = getattr(context, 'arrowUp.gif') - alt = _('ascending sort') - query = make_query(key=column['key'], reverse = not reverse) - images.append( {'src' : toggleImg.absolute_url(), 'alt' : alt} ) - else : - query = make_query(key=column['key'], reverse = reverse) - - column['url'] = '%s?%s' % (target, query) - column['images'] = images - -options['columns'] = columns - -def getReviewState(item) : - return wtool.getInfoFor(item, 'review_state', wf_id='order_workflow') - -sortFuncs = {'created' : lambda a, b : cmp(a.created(), b.created()) - ,'customer' : lambda a, b : cmp(a.Creator(), b.Creator()) - ,'id' : lambda a, b : cmp(a.getId(), b.getId()) - ,'quantity' : lambda a, b : cmp(a.quantity, b.quantity) - ,'amount' : lambda a, b : cmp(a.amountWithFees.getValues()['taxed'], b.amountWithFees.getValues()['taxed']) - ,'state' : lambda a, b : cmp(getReviewState(a), getReviewState(b))} - -orders = context.contentValues({'portal_type':'Order'}) -step = reverse and -1 or 1 -orders.sort(sortFuncs[key]) -orders = orders[::step] -options['key'] = key -options['reverse'] = reverse - -def beforeGetItem(item) : - info = {} - info['url'] = item.absolute_url() - info['created'] = item.created() - info['reference'] = item.getId() - info['quantity'] = item.quantity - info['price'] = item.amountWithFees - info['state'] = wtool.getInfoFor(item, 'review_state', wf_id='order_workflow') - customer = mtool.getMemberById(item.Creator()) - if customer : - info['customer'] = customer.getMemberFullName() - else : - info['customer'] = item.Creator() - return info - -orders = Batch(orders, context.default_batch_size, b_start, orphan=0, quantumleap=1, before_getitem=beforeGetItem) -options['orders'] = orders - -return context.order_list_template(**options)