Skip to content

Commit

Permalink
Update read views (widgets) for fields: reference_system, free_keywords
Browse files Browse the repository at this point in the history
This is relevant to issues: #108, #137
  • Loading branch information
drmalex07 committed Jun 12, 2015
1 parent 50c6345 commit c0f1356
Show file tree
Hide file tree
Showing 8 changed files with 44 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ def check_keywords(obj):
max_length = 20,
value_type = zope.schema.Object(IFreeKeyword,
title = u'Free Keyword'))
#free_keywords.setTaggedValue('format:markup', { 'descend-if-dictized': False })
free_keywords.setTaggedValue('format:markup', { 'descend-if-dictized': False })

# Geographic

Expand Down Expand Up @@ -207,6 +207,7 @@ def check_creation_publication_order(obj):
title = u'Coordinate Reference System',
description = u'Coordinate Reference System',
required = False)
reference_system.setTaggedValue('format:markup', { 'descend-if-dictized': False })

# Conformity

Expand Down
2 changes: 0 additions & 2 deletions ckanext/publicamundi/lib/metadata/types/_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,8 +101,6 @@ class TemporalExtent(Object):
class TemporalExtentFormatter(ObjectFormatter):

def _format(self, obj, opts):
# Fixme
_ = lambda s: s
s = _('From %(start)s To %(end)s') % dict(start=obj.start, end=obj.end)
return u'<%s>' % s if opts.get('quote') else s

Expand Down
25 changes: 24 additions & 1 deletion ckanext/publicamundi/lib/metadata/widgets/objects/_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -520,7 +520,7 @@ def get_template(self):

@field_widget_multiadapter([IListField, schemata.IGeographicBoundingBox],
qualifiers=['td'], is_fallback=False)
class ListOfGeographicBoundingBoxEditWidget(ReadFieldWidget, ListFieldWidgetTraits):
class ListOfGeographicBoundingBoxReadWidget(ReadFieldWidget, ListFieldWidgetTraits):

def prepare_template_vars(self, name_prefix, data):
cls = type(self)
Expand Down Expand Up @@ -606,3 +606,26 @@ class ReferenceSystemReadWidget(ReadObjectWidget):
def get_template(self):
return None

@object_widget_adapter(schemata.IReferenceSystem,
qualifiers=['td'], is_fallback=False)
class TdReferenceSystemReadWidget(ReadObjectWidget):

def get_template(self):
return 'package/snippets/objects/read-reference_system-td.html'

#
# IFreeKeyword
#

@field_widget_multiadapter([IListField, schemata.IFreeKeyword])
class FreeKeywordsReadWidget(ReadFieldWidget):

def get_template(self):
return 'package/snippets/fields/read-list-free_keyword.html'

@field_widget_multiadapter([IListField, schemata.IFreeKeyword], qualifiers=['td'])
class TdFreeKeywordsReadWidget(ReadFieldWidget):

def get_template(self):
return 'package/snippets/fields/read-list-free_keyword-td.html'

Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,7 @@ def get_field_order(self):
# Classification
'topic_category',
# Keywords
'free_keywords',
'keywords',
# Geographic
'bounding_box',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{%- do classes.append('unstyled') %}
{%- if not item_classes %}{% set item_classes = [] %}{% endif %}
{%- do item_classes.append('tag') %}

{% extends 'package/snippets/fields/read-list-free_keyword.html' %}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<ul class="{{ classes|join(' ') }}">
{% for keyword in value %}
<li class="{{ item_classes|join(' ') }}">{{ keyword.value }}</li>
{% endfor %}
</ul>
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{% set code_field = obj.get_field('code') -%}
{% set code_uri = code_field.context.value -%}
{% set code_name = code_field.vocabulary.by_value.get(code_uri).token -%}
<span class="{{ classes|join(' ') }}">
{{ code_name|safe }} <code>{{ code_uri|urlize }}</code>
</span>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<span class="{{ classes|join(' ') }}">
{#- Todo Format dates with respect to lacale -#}
{#- Todo Format dates with respect to locale -#}
{% if obj.start and obj.end -%}
{{- _('From %(start)s to %(end)s')|format(start=obj.start, end=obj.end) -}}
{% elif obj.start -%}
Expand Down

0 comments on commit c0f1356

Please sign in to comment.