add mailPointingDocsTxt index
This commit is contained in:
parent
786386060d
commit
0625bf43f3
|
@ -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")
|
||||
|
|
|
@ -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"/>
|
||||
|
|
Reference in New Issue