source: WAeUP_SRP/trunk/skins/waeup_upload/import_uploads.py @ 3846

Last change on this file since 3846 was 3328, checked in by joachim, 17 years ago

enable/disable bypass only if disabled

  • Property svn:keywords set to Id
File size: 1.6 KB
Line 
1## Script (Python) "import_uploads"
2##bind container=container
3##bind context=context
4##bind namespace=
5##bind script=script
6##bind subpath=traverse_subpath
7##parameters=student=None
8##title=
9##
10# $Id:import_uploads.py 486 2006-09-06 10:09:39Z joachim $
11"""
12do the import for uploads
13"""
14try:
15    from Products.zdb import set_trace
16except:
17    def set_trace():
18        pass
19request = context.REQUEST
20import DateTime, logging
21from urllib import urlencode
22current = DateTime.DateTime()
23pr = context.portal_registration
24
25logger = logging.getLogger('Skins.import_uploads')
26mtool = context.portal_membership
27member = mtool.getAuthenticatedMember()
28
29lt = context.portal_layouts
30#pr = context.portal_registration
31
32ids = request.get('ids',[])
33
34messages = []
35disable_bypass = False
36
37for long_id in ids:
38    short_id = long_id.replace('.csv','')
39    doc = getattr(context, long_id).getContent()
40    msg, invalid_keys = doc['checkKeys']()
41    if msg:
42        messages += msg,
43        continue
44    if not context.portal_catalog.getBypassQueue():
45        context.portal_catalog.setBypassQueue(1)
46        context.waeup_tool.doCommit()
47        disable_bypass = True
48
49    msg = context.waeup_tool.importData(short_id,
50                                        doc.import_layout,
51                                       )
52    logger.info(msg)
53    messages += msg,
54
55if disable_bypass:
56    context.portal_catalog.setBypassQueue(0)
57    context.waeup_tool.doCommit()
58
59args = {}
60args['portal_status_message'] = '\r\n'.join(messages)
61url = context.absolute_url() + '?' + urlencode(args)
62return request.RESPONSE.redirect(url)
63
64
Note: See TracBrowser for help on using the repository browser.