index intervening persons (#931)

This commit is contained in:
Frédéric Péters 2011-11-17 10:56:54 +01:00
parent e0a36a0b79
commit bc24abd92d
2 changed files with 35 additions and 0 deletions

View File

@ -56,6 +56,32 @@ grok.global_adapter(documentAuthorsIndexer, name="authorsDoc")
grok.global_adapter(dossierAuthorsIndexer, name="authorsDoc")
grok.global_adapter(questionAuthorsIndexer, name="authorsDoc")
def interveningPolgroupsIndexer(obj):
return None
documentInterveningPolgroupsIndexer = indexer(IDocument)(interveningPolgroupsIndexer)
dossierInterveningPolgroupsIndexer = indexer(IDossier)(interveningPolgroupsIndexer)
questionInterveningPolgroupsIndexer = indexer(IQuestion)(interveningPolgroupsIndexer)
grok.global_adapter(documentInterveningPolgroupsIndexer, name="interveningPolgroupsDoc")
grok.global_adapter(dossierInterveningPolgroupsIndexer, name="interveningPolgroupsDoc")
grok.global_adapter(questionInterveningPolgroupsIndexer, name="interveningPolgroupsDoc")
def interveningPersonsIndexer(obj):
if not obj.histolines:
return None
r = []
for line in obj.histolines:
if not line.authors:
continue
r.extend([item.to_object.id for item in line.authors])
return r
dossierInterveningPersonsIndexer = indexer(IDossier)(interveningPersonsIndexer)
questionInterveningPersonsIndexer = indexer(IQuestion)(interveningPersonsIndexer)
grok.global_adapter(dossierInterveningPersonsIndexer, name="interveningPersonsDoc")
grok.global_adapter(questionInterveningPersonsIndexer, name="interveningPersonsDoc")
class IAuthorsIndexer(Interface):

View File

@ -33,12 +33,21 @@
<index name="publication_date" meta_type="FieldIndex">
<indexed_attr value="publication_date"/>
</index>
<index name="interveningPolgroupsDoc" meta_type="KeywordIndex">
<indexed_attr value="interveningPolgroupsDoc"/>
</index>
<index name="interveningPersonsDoc" meta_type="KeywordIndex">
<indexed_attr value="interveningPersonsDoc"/>
</index>
<column value="doctype"/>
<column value="dostype"/>
<column value="questype"/>
<column value="dateDoc"/>
<column value="polgroupsDoc"/>
<column value="authorsDoc"/>
<column value="interveningPolgroupsDoc"/>
<column value="interveningPersonsDoc"/>
<column value="no"/>
<column value="nodoc"/>
<column value="session"/>