Skip to content

Commit

Permalink
Corrected setting Subtype.
Browse files Browse the repository at this point in the history
  • Loading branch information
sandrarum committed Feb 8, 2018
1 parent 07974c7 commit 84788b2
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 3 deletions.
2 changes: 2 additions & 0 deletions src/pkan/dcatapde/api/foafagent.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ def clean_foafagent(**data):
# Add Methods
def add_foafagent(context, **data):
"""Add a new foafagent."""
context = get_foafagent_context()

data, errors = clean_foafagent(**data)

foaf = api.content.create(container=context, type=CT_FOAF_AGENT, **data)
Expand Down
17 changes: 17 additions & 0 deletions src/pkan/dcatapde/harvesting/data_type/adapter.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,23 @@ def clean_dataset(self, data_manager):

rdf_about.payload = url

title_foaf_agent = 'Agent {x}'.format(
x=data_manager.ids.index(id),
)

data_manager.reset_attribute(
c.CT_DCAT_DATASET + ':dct_publisher:' + c.CT_FOAF_AGENT,
id,
'title',
payload=title_foaf_agent,
)
data_manager.reset_attribute(
c.CT_DCAT_DATASET + ':dct_publisher:' + c.CT_FOAF_AGENT,
id,
'rdf_about',
payload=url,
)

def clean_distribution(self, data_manager):
for id in data_manager.ids:
title = 'Distribution {x}'.format(
Expand Down
9 changes: 6 additions & 3 deletions src/pkan/dcatapde/harvesting/source_type/adapter.py
Original file line number Diff line number Diff line change
Expand Up @@ -276,11 +276,13 @@ def set_subtypes_to_parent(self, key, key_elements):
key_elements_length = len(key_elements)

while key_elements_length >= 3:
parent_ct = ':'.join(key_elements[0:key_elements_length - 3])
parent_ct = ':'.join(key_elements[0:key_elements_length - 2])
attr = key_elements[key_elements_length - 2]
ct = key_elements[key_elements_length - 1]

data_elements = self.cleaned_data.get_all_created(ct)
current_key = ':'.join([parent_ct, attr, ct])

data_elements = self.cleaned_data.get_all_created(current_key)

for id in data_elements:

Expand All @@ -295,13 +297,14 @@ def set_subtypes_to_parent(self, key, key_elements):
continue

# Fix: Check if this works with RelatedItem-Field
setattr(parent, attr, wanted_obj)
setattr(parent, attr, wanted_obj.UID())

log += '<p>Added {ct} {dataset} to parent.</p>'.format(
ct=ct,
dataset=wanted_obj.title,
)
key_elements_length -= 2
return log

def real_run_for_type(
self, obj_ct, parent_ct, pass_obj=False,
Expand Down

0 comments on commit 84788b2

Please sign in to comment.