2445da6899a95caa292bf6465840b72f62b00f1e
[prawokultury.git] / events / search_indexes.py
1 import datetime
2 from django.conf import settings
3 from haystack import indexes
4 from fnpdjango.utils.models.translation import add_translatable_index, localize_field
5 from events.models import Event
6
7
8 class EventIndex(indexes.SearchIndex, indexes.Indexable):
9     text = indexes.CharField(null=True,
10         model_attr=localize_field('title', settings.LANGUAGE_CODE),
11         document=True)
12
13     def get_model(self):
14         return Event
15
16     def index_queryset(self):
17         """Used when the entire index for model is updated."""
18         return self.get_model().objects.all()
19
20
21 add_translatable_index(EventIndex, {
22     'organizer': indexes.CharField(null=True),
23     'place': indexes.CharField(null=True)
24     })
25
26 add_translatable_index(EventIndex, {
27     'title': indexes.CharField(null=True),
28     }, 
29     (lang for lang in settings.LANGUAGES if lang[0] != settings.LANGUAGE_CODE)
30 )