Commit a70d626bb0fa239f643df8c272b796e0fc6a6c99

Authored by Luan
1 parent 0981258b

Minor fixes on search indexes

src/proxy/search_indexes.py
... ... @@ -10,6 +10,7 @@ from .models import Ticket, Wiki, Revision
10 10  
11 11 class WikiIndex(indexes.SearchIndex, indexes.Indexable):
12 12 text = indexes.CharField(document=True, use_template=True)
  13 + name = indexes.CharField(model_attr='name')
13 14 wiki_text = indexes.CharField(model_attr='wiki_text')
14 15 author = indexes.CharField(null=True)
15 16 author_url = indexes.CharField(null=True)
... ...
src/super_archives/search_indexes.py
... ... @@ -11,18 +11,8 @@ class MessageIndex(indexes.SearchIndex, indexes.Indexable):
11 11 description = indexes.CharField(model_attr='body')
12 12 title = indexes.CharField(model_attr='subject_clean')
13 13 modified = indexes.DateTimeField(model_attr='received_time')
14   - from_address_user_full_name = indexes.CharField(
15   - model_attr='from_address__user__get_full_name',
16   - null=True,
17   - )
18   - from_address_full_name = indexes.CharField(
19   - model_attr='from_address__get_full_name',
20   - null=True,
21   - )
22   - from_address_user_url = indexes.CharField(
23   - model_attr='from_address__user__get_absolute_url',
24   - null=True,
25   - )
  14 + author = indexes.CharField(null=True)
  15 + author_url = indexes.CharField(null=True)
26 16 url = indexes.CharField(model_attr='url', null=True)
27 17  
28 18 type = indexes.CharField()
... ... @@ -33,6 +23,18 @@ class MessageIndex(indexes.SearchIndex, indexes.Indexable):
33 23 def get_updated_field(self):
34 24 return 'received_time'
35 25  
  26 + def prepare_author(self, obj):
  27 + if obj.from_address.user:
  28 + return obj.from_address.user.get_full_name()
  29 + elif obj.from_address.get_full_name():
  30 + return obj.from_address.get_full_name()
  31 + return obj.from_address.real_name
  32 +
  33 + def prepare_author_url(self, obj):
  34 + if obj.from_address.user:
  35 + return obj.from_address.user.get_absolute_url()
  36 + return None
  37 +
36 38 def prepare_type(self, obj):
37 39 return u'thread'
38 40  
... ...