[Erp5-report] r34880 nicolas - /erp5/trunk/products/ERP5/Document/Document.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Fri Apr 30 11:34:29 CEST 2010
Author: nicolas
Date: Fri Apr 30 11:34:24 2010
New Revision: 34880
URL: http://svn.erp5.org?rev=34880&view=rev
Log:
small refactoring:
* call getToolByName with portal_object to avoid acquisitions loockup
* remove calls of clearConversionCache
* follow naming convention res => result_list, ob => document
Modified:
erp5/trunk/products/ERP5/Document/Document.py
Modified: erp5/trunk/products/ERP5/Document/Document.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/Document.py?rev=34880&r1=34879&r2=34880&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/Document.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/Document.py [utf8] Fri Apr 30 11:34:24 2010
@@ -745,7 +745,7 @@
"""
if not self.getReference():
return self
- catalog = getToolByName(self, 'portal_catalog')
+ catalog = getToolByName(self.getPortalObject(), 'portal_catalog')
kw = dict(reference=self.getReference(), sort_on=(('version','descending'),))
if language is not None:
kw['language'] = language
@@ -757,25 +757,26 @@
# if language was given return it (if there are any docs in this language)
if language is not None:
try:
- return res[0].getObject()
+ return result_list[0].getObject()
except IndexError:
return None
else:
- first = res[0]
+ first = result_list[0].getObject()
in_original = None
- for ob in res:
- if ob.getVersion() != first.getVersion():
+ for record in result_list:
+ document = record.getObject()
+ if document.getVersion() != first.getVersion():
# we are out of the latest version - return in_original or first
if in_original is not None:
- return in_original.getObject()
+ return in_original
else:
- return first.getObject() # this shouldn't happen in real life
- if ob.getLanguage() == user_language:
+ return first # this shouldn't happen in real life
+ if document.getLanguage() == user_language:
# we found it in the user language
- return ob.getObject()
- if ob.getLanguage() == original_language:
+ return document
+ if document.getLanguage() == original_language:
# this is in original language
- in_original = ob
+ in_original = document
# this is the only doc in this version
return self
@@ -785,7 +786,7 @@
Returns a list of documents with same reference, same portal_type
but different version and given language or any language if not given.
"""
- catalog = getToolByName(self, 'portal_catalog')
+ catalog = getToolByName(self.getPortalObject(), 'portal_catalog')
kw = dict(portal_type=self.getPortalType(),
reference=self.getReference(),
sort_on=(('version', 'descending', 'SIGNED'),)
@@ -805,7 +806,7 @@
"""
if not self.getReference():
return True
- catalog = getToolByName(self, 'portal_catalog')
+ catalog = getToolByName(self.getPortalObject(), 'portal_catalog')
self_count = catalog.unrestrictedCountResults(portal_type=self.getPortalDocumentTypeList(),
reference=self.getReference(),
version=self.getVersion(),
@@ -830,13 +831,13 @@
in order to be consistent with the property sheet
definition.
"""
- getInfoFor = getToolByName(self, 'portal_workflow').getInfoFor
+ getInfoFor = getToolByName(self.getPortalObject(),
+ 'portal_workflow').getInfoFor
revision = len(getInfoFor(self, 'history', (), 'edit_workflow'))
# XXX Also look at processing_status_workflow for compatibility.
- for history_item in getInfoFor(self, 'history', (),
- 'processing_status_workflow'):
- if history_item.get('action') == 'edit':
- revision += 1
+ revision += len([history_item for history_item in\
+ getInfoFor(self, 'history', (), 'processing_status_workflow')\
+ if history_item.get('action') == 'edit'])
return str(revision)
security.declareProtected(Permissions.AccessContentsInformation, 'getRevisionList')
@@ -868,7 +869,7 @@
finishIngestion.
"""
document = self
- catalog = getToolByName(self, 'portal_catalog')
+ catalog = getToolByName(self.getPortalObject(), 'portal_catalog')
if self.getReference():
# Find all document with same (reference, version, language)
kw = dict(portal_type=self.getPortalDocumentTypeList(),
@@ -914,7 +915,7 @@
for the current user.
"""
if not self.getReference(): return []
- catalog = getToolByName(self, 'portal_catalog')
+ catalog = getToolByName(self.getPortalObject(), 'portal_catalog')
kw = dict(portal_type=self.getPortalType(),
reference=self.getReference(),
group_by=('language',))
@@ -936,7 +937,7 @@
reference = self.getReference()
if not reference:
return
- catalog = getToolByName(self, 'portal_catalog')
+ catalog = getToolByName(self.getPortalObject(), 'portal_catalog')
res = catalog(reference=self.getReference(), sort_on=(('creation_date','ascending'),))
# XXX this should be security-unaware - delegate to script with proxy roles
return res[0].getLanguage() # XXX what happens if it is empty?
@@ -1232,7 +1233,6 @@
return
try:
message = self._convertToBaseFormat() # Call implemetation method
- self.clearConversionCache() # Conversion cache is now invalid
if message is None:
# XXX Need to translate.
message = 'Converted to %s.' % self.getBaseContentType()
More information about the Erp5-report
mailing list