add mailPointingDocsTxt index

This commit is contained in:
Frédéric Péters 2012-07-18 14:45:57 +02:00
parent 786386060d
commit 0625bf43f3
2 changed files with 26 additions and 0 deletions

View File

@ -4,6 +4,10 @@ from five import grok
import plone.dexterity.interfaces
from Products.CMFCore.utils import getToolByName
from ZODB.POSException import ConflictError
from zope import component
from zc.relation.interfaces import ICatalog
from zope.app.intid.interfaces import IIntIds
from themis.fields.vocabs import ContactsSource
@ -351,3 +355,24 @@ def mailHandledByTxtIndexer(obj):
return None
grok.global_adapter(mailHandledByTxtIndexer, name="mailHandledByTxt")
@indexer(plone.dexterity.interfaces.IDexterityItem)
def mailPointingDocsTxtIndexer(obj):
if obj.portal_type not in ('courrier_entrant', 'courrier_sortant'):
return None
intids = component.getUtility(IIntIds)
catalog = component.getUtility(ICatalog)
values = []
try:
doc_intid = intids.getId(obj)
except KeyError:
return None
for relationvalue in catalog.findRelations({'to_id': doc_intid}):
values.append(relationvalue.from_object.Title())
if values:
return ', '.join(values)
else:
return None
grok.global_adapter(mailPointingDocsTxtIndexer, name="mailPointingDocsTxt")

View File

@ -67,6 +67,7 @@
<column value="mailContact"/>
<column value="mailCategoryTxt"/>
<column value="mailRelatedDocsTxt"/>
<column value="mailPointingDocsTxt"/>
<column value="mailHandledByTxt"/>
<column value="mailDate"/>
<column value="docDate"/>