src/pyams_content/shared/view/portlet/interfaces.py
changeset 1171 41310cefa42a
parent 992 8fd039f79d30
child 1257 6027118fcde9
--- a/src/pyams_content/shared/view/portlet/interfaces.py	Fri Dec 14 11:59:12 2018 +0100
+++ b/src/pyams_content/shared/view/portlet/interfaces.py	Fri Dec 14 13:32:54 2018 +0100
@@ -12,20 +12,15 @@
 
 __docformat__ = 'restructuredtext'
 
+from zope.schema import Bool, Choice, Int
+from zope.schema.vocabulary import SimpleTerm, SimpleVocabulary
 
-# import standard library
-
-# import interfaces
+from pyams_content.shared.view import WfView
 from pyams_content.shared.view.interfaces import VIEWS_MERGERS_VOCABULARY
-from pyams_portal.interfaces import IPortletSettings
-
-# import packages
-from pyams_content.shared.view import WfView
 from pyams_content.shared.view.merge import CONCAT_VIEWS_MERGE_MODE
 from pyams_i18n.schema import I18nTextLineField
+from pyams_portal.interfaces import IPortletSettings
 from pyams_sequence.schema import InternalReferencesListField
-from zope.schema import Choice, Int
-from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
 
 from pyams_content import _
 
@@ -45,6 +40,8 @@
 VIEW_CONTEXT_VOCABULARY = SimpleVocabulary([SimpleTerm(item['id'], title=item['title'])
                                             for item in VIEW_CONTEXTS])
 
+SEARCH_EXCLUDED_ITEMS = 'search.excluded'
+
 
 #
 # Views merge modes
@@ -99,3 +96,10 @@
 
     def get_items(self):
         """Get iterator over items returned by selected views, using selected merger"""
+
+    exclude_from_search = Bool(title=_("Exclude from search results"),
+                               description=_("If 'yes', and if this portlet is associated with a search engine in the "
+                                             "same page template, items displayed by this portlet will be excluded "
+                                             "from search results"),
+                               required=True,
+                               default=False)