Пример #1
0
    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
Пример #2
0
    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
Пример #3
0
    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
Пример #4
0
    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
Пример #5
0
    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