Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.99 KB | None | 0 0
  1. def preloadObjProperty(self, REQUEST, RESPONSE=None):
  2. """ ObjAttrs.preloadObjProperty """
  3. content_type = 'text/plain'
  4. message = '{"success":true}'
  5. # Additional parameters.
  6. for qs in REQUEST['QUERY_STRING'].split('&'):
  7. e = qs.find('=')
  8. if e >= 0:
  9. k = qs[:e]
  10. v = qs[e+1:]
  11. REQUEST.set(k,v)
  12.  
  13. # Mandatory parameters.
  14. lang = REQUEST['lang']
  15. key = REQUEST['key']
  16.  
  17. dataRequestKey = REQUEST.get('dataRequestKey')
  18. filenameUnescape = REQUEST.get('filenameUnescape')
  19. if dataRequestKey:
  20. value = REQUEST[dataRequestKey]
  21. if isinstance(value,ZPublisher.HTTPRequest.FileUpload):
  22. filename = value.filename
  23. else:
  24. filename = value
  25. value = REQUEST['BODY']
  26. if filenameUnescape:
  27. filename = _globals.unescape(filename)
  28. else:
  29. value = REQUEST['userfile[0]']
  30. filename = value.filename
  31. blob = self.ImageFromData(value,filename)
  32. filename = blob.getFilename()
  33.  
  34. # Preload to temp-folder.
  35. session_id = REQUEST['session_id']
  36. form_id = REQUEST['form_id']
  37. temp_folder = self.temp_folder
  38. id = session_id + '_' + form_id + '_' + key
  39. if id in temp_folder.objectIds():
  40. temp_folder.manage_delObjects([id])
  41. meta_id = REQUEST.get('meta_id',self.meta_id)
  42. obj_attr = self.getObjAttr(key,meta_id)
  43. datatype = obj_attr['datatype_key']
  44. if datatype == _globals.DT_IMAGE:
  45. file = temp_folder.manage_addImage( id=id, title=filename, file=value)
  46. else:
  47. file = temp_folder.manage_addFile( id=id, title=filename, file=value)
  48.  
  49. if REQUEST.get('set'):
  50. self.setReqProperty(key,REQUEST)
  51. message = self.getZMILangStr( 'MSG_UPLOADED')+'('+self.getLangFmtDate(time.time())+')'
  52.  
  53. # Return with success.
  54. RESPONSE.setHeader('Content-Type',content_type)
  55. return message
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement