# register all interesting models for search #print "LOADING link_schemas.py for %s" % __name__ from links import models, admin from links import schema, LinkWrapper from django.conf import settings permitted_filetypes = getattr(settings, "PERMITTED_FILETYPES", [ "pdf", ]) schema.register( models.ExternalLink, search_fields=admin.ExternalLinkAdmin.search_fields, #url='url', description=lambda obj: u"%s<br />%s" % (obj.url, obj.description), metadata='description', heading='"External links"' url='url', description='description', #short_text = 'title', heading='"External links"') if 'cms' in settings.INSTALLED_APPS: from cms.models import Page from cms.admin.pageadmin import PageAdmin class PageLinkWrapper(LinkWrapper): #search_fields = PageAdmin.search_fields search_fields = [ 'title_set__title', ] def text(self):
# register all interesting models for search #print "LOADING link_schemas.py for %s" % __name__ from links import models, admin from links import schema, LinkWrapper from django.conf import settings schema.register(models.ExternalLink, search_fields=admin.ExternalLinkAdmin.search_fields, #url='url', description=lambda obj: u"%s<br />%s" % (obj.url, obj.description), metadata='description', heading='"External links"' url='url', description = 'description', #short_text = 'title', heading='"External links"' ) if 'cms' in settings.INSTALLED_APPS: from cms.models import Page from cms.admin.pageadmin import PageAdmin class PageLinkWrapper(LinkWrapper): #search_fields = PageAdmin.search_fields search_fields = ['title_set__title',] def text(self): return self.obj.get_title() def short_text(self): return self.obj.get_menu_title() def description(self): return self.obj.get_meta_description() def metadata(self): ancestors = self.obj.get_cached_ancestors() r = [] for ancestor in ancestors: r.append(u"%s" % ancestor.get_menu_title())
r = [] date_format = "jS F Y" now = datetime.now() if obj.date.year == now.year: # this year date_format = "jS F" date = date(obj.date, date_format) s = u"Closing date: %s" % date if obj.please_contact: s += u" contact: %s" % smart_unicode(obj.please_contact) r.append(s) r.append(u"%s" % obj.summary) #r.append(u"%s" % obj.description) return "<br />".join(r) schema.register( models.Vacancy, search_fields=admin.VacancyAdmin.search_fields, # title=lambda obj: u"%s (%s)" % (obj.title, obj.job_number), heading='"Related vacancies"', image="image", ) schema.register( models.Studentship, search_fields=admin.StudentshipAdmin.search_fields, # title=lambda obj: u"%s (%s)" % (obj.title, obj.job_number), heading='"Related studentships"', image="image", )
# register all interesting models for search from news_and_events import models, admin from links import schema, LinkWrapper schema.register(models.NewsArticle, search_fields=admin.NewsArticleAdmin.search_fields, metadata='summary', heading='"Related news"', short_text = 'short_title', description='summary', ) schema.register(models.Event, search_fields=admin.EventAdmin.search_fields, metadata='summary', heading='"Related events"', short_text = 'short_title', description='summary', )
from django.conf import settings from cms.models import Page from filer.models import File, Image from arkestra_utilities.settings import PERMITTED_FILETYPES from links import models, admin, schema, LinkWrapper schema.register( models.ExternalLink, search_fields=admin.ExternalLinkAdmin.search_fields, url='url', summary='description', heading='"External links"', ) class PageLinkWrapper(LinkWrapper): search_fields = ['title_set__title'] link_format_choices = ( (u"title", u"Name only"), (u"details", u"Name & summary (description)"), ) def title(self): return self.obj.get_title() def short_text(self): return self.obj.get_menu_title()
from django.template.defaultfilters import date def smart_description(obj): r = [] date_format = "jS F Y" now = datetime.now() if obj.closing_date.year == now.year: # this year date_format = "jS F" closing_date = date(obj.closing_date, date_format) s = u"Closing date: %s" % closing_date if obj.please_contact: s += u" contact: %s" % smart_unicode(obj.please_contact) r.append(s) r.append(u"%s" % obj.summary) #r.append(u"%s" % obj.description) return "<br />".join(r) schema.register(models.Vacancy, search_fields=admin.VacancyAdmin.search_fields, title=lambda obj: u"%s (%s)" % (obj.title, obj.job_number), description='summary', short_text='short_title', heading='"Related vacancies"', # description=smart_description, ) schema.register(models.Studentship, search_fields=admin.StudentshipAdmin.search_fields, title=lambda obj: u"%s (%s)" % (obj.title, obj.job_number), description='summary', short_text='short_title', heading='"Related studentships"',)
# register all interesting models for search #print "LOADING link_schemas.py for %s" % __name__ from news_and_events import models, admin from links import schema, LinkWrapper from django.utils.encoding import smart_unicode from sorl.thumbnail.main import DjangoThumbnail, build_thumbnail_name from sorl.thumbnail.fields import ALL_ARGS schema.register(models.NewsArticle, search_fields=admin.NewsArticleAdmin.search_fields, metadata='subtitle', heading='"Related news"', short_text = 'short_title', description='subtitle', ) schema.register(models.Event, search_fields=admin.EventAdmin.search_fields, metadata='subtitle', heading='"Related events"', short_text = 'short_title', description='subtitle', )
# register all interesting models for search #print "LOADING link_schemas.py for %s" % __name__ from django.conf import settings from links import models, admin from links import schema, LinkWrapper from arkestra_utilities.settings import PERMITTED_FILETYPES schema.register(models.ExternalLink, search_fields=admin.ExternalLinkAdmin.search_fields, #url='url', description=lambda obj: u"%s<br />%s" % (obj.url, obj.description), metadata='description', heading='"External links"' url='url', description = 'description', #short_text = 'title', heading='"External links"' ) if 'cms' in settings.INSTALLED_APPS: from cms.models import Page from cms.admin.pageadmin import PageAdmin class PageLinkWrapper(LinkWrapper): #search_fields = PageAdmin.search_fields search_fields = ['title_set__title',] def text(self): return self.obj.get_title() def short_text(self): return self.obj.get_menu_title() def description(self): # the following functionality will have to be restored in such a way that we don't return admin messages to the frontend - later