diff --git a/src/recensio/plone/adapter/configure.zcml b/src/recensio/plone/adapter/configure.zcml
index db5f7be..188ef36 100644
--- a/src/recensio/plone/adapter/configure.zcml
+++ b/src/recensio/plone/adapter/configure.zcml
@@ -64,6 +64,8 @@
name="listReviewAuthors"
/>
+
+
diff --git a/src/recensio/plone/adapter/converters.py b/src/recensio/plone/adapter/converters.py
new file mode 100644
index 0000000..eaf2763
--- /dev/null
+++ b/src/recensio/plone/adapter/converters.py
@@ -0,0 +1,26 @@
+from plone.app.dexterity.textindexer.interfaces import IDexterityTextIndexFieldConverter
+from recensio.plone.interfaces import IReview
+from z3c.form.interfaces import IWidget
+from z3c.relationfield.interfaces import IRelationList
+from zope.component import adapter
+from zope.interface import implementer
+
+
+@implementer(IDexterityTextIndexFieldConverter)
+@adapter(IReview, IRelationList, IWidget)
+class AuthorsDexterityTextIndexFieldConverter:
+ """Extract author names for indexing in SearchableText"""
+
+ def __init__(self, context, field, _):
+ """Initialize field converter"""
+ self.context = context
+ self.field = field
+
+ def convert(self):
+ names = []
+ for relation in self.field.get(self.context):
+ obj = relation.to_object
+ if not obj:
+ continue
+ names.append(obj.title)
+ return ", ".join(names)
diff --git a/src/recensio/plone/behaviors/authors.py b/src/recensio/plone/behaviors/authors.py
index a50fd90..304dbff 100644
--- a/src/recensio/plone/behaviors/authors.py
+++ b/src/recensio/plone/behaviors/authors.py
@@ -1,3 +1,4 @@
+from plone.app.dexterity.textindexer import searchable
from plone.app.vocabularies.catalog import CatalogSource
from plone.app.z3cform.widget import RelatedItemsFieldWidget
from plone.autoform import directives
@@ -20,6 +21,7 @@ class IAuthors(model.Schema):
RelatedItemsFieldWidget,
pattern_options={"mode": "auto", "favorites": []},
)
+ searchable("authors")
authors = RelationList(
title=_("Authors"),
defaultFactory=list,
diff --git a/src/recensio/plone/behaviors/base.py b/src/recensio/plone/behaviors/base.py
index ad22a51..3410523 100644
--- a/src/recensio/plone/behaviors/base.py
+++ b/src/recensio/plone/behaviors/base.py
@@ -44,6 +44,7 @@ class IBase(model.Schema):
RelatedItemsFieldWidget,
pattern_options={"mode": "auto", "favorites": []},
)
+ searchable("reviewAuthors")
reviewAuthors = RelationList(
title=_("label_review_authors"),
defaultFactory=list,
diff --git a/src/recensio/plone/profiles/default/types/Review_Article_Collection.xml b/src/recensio/plone/profiles/default/types/Review_Article_Collection.xml
index f0548f7..96620ec 100644
--- a/src/recensio/plone/profiles/default/types/Review_Article_Collection.xml
+++ b/src/recensio/plone/profiles/default/types/Review_Article_Collection.xml
@@ -33,6 +33,7 @@
+
diff --git a/src/recensio/plone/profiles/default/types/Review_Article_Journal.xml b/src/recensio/plone/profiles/default/types/Review_Article_Journal.xml
index e73baa0..9dc75f2 100644
--- a/src/recensio/plone/profiles/default/types/Review_Article_Journal.xml
+++ b/src/recensio/plone/profiles/default/types/Review_Article_Journal.xml
@@ -40,6 +40,7 @@
+
diff --git a/src/recensio/plone/profiles/default/types/Review_Exhibition.xml b/src/recensio/plone/profiles/default/types/Review_Exhibition.xml
index 58dfb2c..da18853 100644
--- a/src/recensio/plone/profiles/default/types/Review_Exhibition.xml
+++ b/src/recensio/plone/profiles/default/types/Review_Exhibition.xml
@@ -33,6 +33,7 @@
+
diff --git a/src/recensio/plone/profiles/default/types/Review_Journal.xml b/src/recensio/plone/profiles/default/types/Review_Journal.xml
index d6fe6cf..447c8c0 100644
--- a/src/recensio/plone/profiles/default/types/Review_Journal.xml
+++ b/src/recensio/plone/profiles/default/types/Review_Journal.xml
@@ -40,6 +40,7 @@
+
diff --git a/src/recensio/plone/profiles/default/types/Review_Monograph.xml b/src/recensio/plone/profiles/default/types/Review_Monograph.xml
index d3e2a38..930ea5b 100644
--- a/src/recensio/plone/profiles/default/types/Review_Monograph.xml
+++ b/src/recensio/plone/profiles/default/types/Review_Monograph.xml
@@ -40,6 +40,7 @@
+