def get_context_data(self, **kwargs): context = super(TrekDocumentPublicBase, self).get_context_data(**kwargs) trek = self.get_object() context['headerimage_ratio'] = settings.EXPORT_HEADER_IMAGE_SIZE[ 'trek'] information_desks = list(trek.information_desks.all()) if settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT > 0: information_desks = information_desks[:settings. TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT] context['information_desks'] = information_desks pois = list(trek.published_pois.all()) if settings.TREK_EXPORT_POI_LIST_LIMIT > 0: pois = pois[:settings.TREK_EXPORT_POI_LIST_LIMIT] letters = alphabet_enumeration(len(pois)) for i, poi in enumerate(pois): poi.letter = letters[i] context['pois'] = pois context['object'] = context['trek'] = trek source = self.request.GET.get('source') if source: try: context['source'] = RecordSource.objects.get(name=source) except RecordSource.DoesNotExist: pass portal = self.request.GET.get('portal') if portal: try: context['portal'] = TargetPortal.objects.get(name=portal) except TargetPortal.DoesNotExist: pass return context
def get_context_data(self, **kwargs): context = super(TrekDocumentPublicBase, self).get_context_data(**kwargs) trek = self.get_object() context['headerimage_ratio'] = settings.EXPORT_HEADER_IMAGE_SIZE['trek'] information_desks = list(trek.information_desks.all()) if settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT > 0: information_desks = information_desks[:settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT] context['information_desks'] = information_desks pois = list(trek.published_pois.all()) if settings.TREK_EXPORT_POI_LIST_LIMIT > 0: pois = pois[:settings.TREK_EXPORT_POI_LIST_LIMIT] letters = alphabet_enumeration(len(pois)) for i, poi in enumerate(pois): poi.letter = letters[i] context['pois'] = pois if not mapentity_settings['MAPENTITY_WEASYPRINT']: # Replace HTML text with plain text for attr in ['description', 'description_teaser', 'ambiance', 'advice', 'access', 'public_transport', 'advised_parking', 'disabled_infrastructure']: setattr(trek, attr, plain_text_preserve_linebreaks(getattr(trek, attr))) for poi in context['pois']: setattr(poi, 'description', plain_text_preserve_linebreaks(getattr(poi, 'description'))) context['object'] = context['trek'] = trek return context
def get_context_data(self, **kwargs): context = super(TrekDocumentPublicBase, self).get_context_data(**kwargs) trek = self.get_object() context['headerimage_ratio'] = settings.EXPORT_HEADER_IMAGE_SIZE[ 'trek'] information_desks = list(trek.information_desks.all()) if settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT > 0: information_desks = information_desks[:settings. TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT] context['information_desks'] = information_desks pois = list(trek.pois.filter(published=True)) if settings.TREK_EXPORT_POI_LIST_LIMIT > 0: pois = pois[:settings.TREK_EXPORT_POI_LIST_LIMIT] context['pois'] = pois # Replace HTML text with plain text for attr in [ 'description', 'description_teaser', 'ambiance', 'advice', 'access', 'public_transport', 'advised_parking', 'disabled_infrastructure' ]: setattr(trek, attr, plain_text_preserve_linebreaks(getattr(trek, attr))) for poi in context['pois']: setattr( poi, 'description', plain_text_preserve_linebreaks(getattr(poi, 'description'))) # # POIs enumeration, like shown on the map # https://github.com/makinacorpus/Geotrek/issues/871 enumeration = {} letters = alphabet_enumeration(len(trek.pois)) for i, p in enumerate(trek.pois): enumeration[p.pk] = letters[i] context['enumeration'] = enumeration context['object'] = context['trek'] = trek return context
def get_context_data(self, **kwargs): context = super(TrekDocumentPublicBase, self).get_context_data(**kwargs) trek = self.get_object() context['headerimage_ratio'] = settings.EXPORT_HEADER_IMAGE_SIZE['trek'] information_desks = list(trek.information_desks.all()) if settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT > 0: information_desks = information_desks[:settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT] context['information_desks'] = information_desks pois = list(trek.pois.filter(published=True)) if settings.TREK_EXPORT_POI_LIST_LIMIT > 0: pois = pois[:settings.TREK_EXPORT_POI_LIST_LIMIT] context['pois'] = pois # Replace HTML text with plain text for attr in ['description', 'description_teaser', 'ambiance', 'advice', 'access', 'public_transport', 'advised_parking', 'disabled_infrastructure']: setattr(trek, attr, plain_text_preserve_linebreaks(getattr(trek, attr))) for poi in context['pois']: setattr(poi, 'description', plain_text_preserve_linebreaks(getattr(poi, 'description'))) # # POIs enumeration, like shown on the map # https://github.com/makinacorpus/Geotrek/issues/871 enumeration = {} letters = alphabet_enumeration(len(trek.pois)) for i, p in enumerate(trek.pois): enumeration[p.pk] = letters[i] context['enumeration'] = enumeration context['object'] = context['trek'] = trek return context
def get_context_data(self, **kwargs): context = super(TrekDocumentPublicMixin, self).get_context_data(**kwargs) trek = self.get_object() context['headerimage_ratio'] = settings.EXPORT_HEADER_IMAGE_SIZE['trek'] information_desks = list(trek.information_desks.all()) if settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT > 0: information_desks = information_desks[:settings.TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT] context['information_desks'] = information_desks pois = list(trek.published_pois.all()) if settings.TREK_EXPORT_POI_LIST_LIMIT > 0: pois = pois[:settings.TREK_EXPORT_POI_LIST_LIMIT] letters = alphabet_enumeration(len(pois)) for i, poi in enumerate(pois): poi.letter = letters[i] context['pois'] = pois infrastructures = list(trek.published_infrastructures.all()) signages = list(trek.published_signages.all()) context['infrastructures'] = infrastructures context['signages'] = signages context['object'] = context['trek'] = trek source = self.request.GET.get('source') if source: try: context['source'] = RecordSource.objects.get(name=source) except RecordSource.DoesNotExist: pass portal = self.request.GET.get('portal') if portal: try: context['portal'] = TargetPortal.objects.get(name=portal) except TargetPortal.DoesNotExist: pass return context