indexes for IComment added to override the IConversation indexes.

svn path=/plone.app.discussion/trunk/; revision=27838
This commit is contained in:
Timo Stollenwerk 2009-07-06 16:56:09 +00:00
parent fa2f961ebe
commit a946fb54fa
3 changed files with 30 additions and 4 deletions

View File

@ -12,17 +12,15 @@ from Products.CMFCore.interfaces import IContentish
from Products.ZCatalog.interfaces import IZCatalog
from plone.indexer import indexer
from plone.app.discussion.interfaces import IConversation, IComment
from plone.indexer import indexer
from plone.indexer.interfaces import IIndexer
MAX_DESCRIPTION=25
# Conversation Indexers
from plone.indexer.interfaces import IIndexer
@indexer(IContentish, IZCatalog)
def total_comments(object):
conversation = IConversation(object)
@ -89,3 +87,17 @@ def modified(object):
object.modification_date.hour,
object.modification_date.minute,
object.modification_date.second)
# Override the conversation indexers for comments
@indexer(IComment)
def comments_total_comments(object):
return None
@indexer(IComment)
def comments_last_comment_date(object):
return None
@indexer(IComment)
def comments_commentators(object):
return None

View File

@ -85,5 +85,8 @@
<adapter name="effective" factory=".catalog.effective" />
<adapter name="created" factory=".catalog.created" />
<adapter name="modified" factory=".catalog.modified" />
<adapter name="total_comments" factory=".catalog.comments_total_comments" />
<adapter name="last_comment_date" factory=".catalog.comments_last_comment_date" />
<adapter name="commentators" factory=".catalog.comments_commentators" />
</configure>

View File

@ -64,6 +64,7 @@ class ConversationCatalogTest(PloneTestCase):
path = {'query' : '/'.join(self.portal.doc1.getPhysicalPath()) },
portal_type = "Document"
)
self.brains = brains
self.conversation = conversation
self.conversation_brain = brains[0]
self.comment1 = comment1
@ -171,6 +172,16 @@ class ConversationCatalogTest(PloneTestCase):
conversation_brain = brains[0]
self.assertEquals(conversation_brain.commentators, ())
def test_conversation_indexes_not_in_comments(self):
brains = self.catalog.searchResults(
path = {'query' : '/'.join(self.portal.doc1.getPhysicalPath()) },
portal_type = "Discussion Item"
)
comment1_brain = brains[0]
self.assertEquals(comment1_brain.commentators, None)
self.assertEquals(comment1_brain.last_comment_date, None)
self.assertEquals(comment1_brain.total_comments, None)
class CommentCatalogTest(PloneTestCase):
layer = DiscussionLayer