diff --git a/tabellio/documents/indexer.py b/tabellio/documents/indexer.py index 21fa6a1..6ccc9ca 100644 --- a/tabellio/documents/indexer.py +++ b/tabellio/documents/indexer.py @@ -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): diff --git a/tabellio/documents/profiles/default/catalog.xml b/tabellio/documents/profiles/default/catalog.xml index 39a11b0..8083bb6 100644 --- a/tabellio/documents/profiles/default/catalog.xml +++ b/tabellio/documents/profiles/default/catalog.xml @@ -33,12 +33,21 @@ + + + + + + + + +