Merge branch 'master' into 219-missing-form
Conflicts: ckanext/harvest/templates_new/source/edit.html ckanext/harvest/templates_new/source/new.html test-core.ini
This commit is contained in:
commit
b58cd8b38f
|
@ -1,4 +1,3 @@
|
|||
recursive-include ckanext/harvest/templates *
|
||||
recursive-include ckanext/harvest/templates_new *
|
||||
recursive-include ckanext/harvest/fanstatic_library/styles *
|
||||
recursive-include ckanext/harvest/public *
|
||||
|
|
|
@ -8,6 +8,9 @@ ckanext-harvest - Remote harvesting extension
|
|||
This extension provides a common harvesting framework for ckan extensions
|
||||
and adds a CLI and a WUI to CKAN to manage harvesting sources and jobs.
|
||||
|
||||
Requires CKAN 2.0 or later.
|
||||
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
|
@ -192,8 +195,7 @@ Authorization
|
|||
Starting from CKAN 2.0, harvest sources behave exactly the same as datasets
|
||||
(they are actually internally implemented as a dataset type). That means they
|
||||
can be searched and faceted, and that the same authorization rules can be
|
||||
applied to them. The default authorization settings are based on organizations
|
||||
(equivalent to the `publisher profile` found in old versions).
|
||||
applied to them. The default authorization settings are based on organizations.
|
||||
|
||||
Have a look at the `Authorization <http://docs.ckan.org/en/latest/authorization.html>`_
|
||||
documentation on CKAN core to see how to configure your instance depending on
|
||||
|
@ -231,7 +233,7 @@ field. The currently supported configuration options are:
|
|||
* {dataset_id}
|
||||
* {harvest_source_id}
|
||||
* {harvest_source_url} # Will be stripped of trailing forward slashes (/)
|
||||
* {harvest_source_title} # Requires CKAN 1.6
|
||||
* {harvest_source_title}
|
||||
* {harvest_job_id}
|
||||
* {harvest_object_id}
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
import logging
|
||||
import genshi
|
||||
from urllib import urlencode
|
||||
|
||||
from ckan import plugins as p
|
||||
|
@ -60,21 +59,8 @@ class OrganizationController(GroupController):
|
|||
else:
|
||||
q += ' groups: "%s"' % c.group_dict.get('name')
|
||||
|
||||
try:
|
||||
description_formatted = ckan.misc.MarkdownFormat().to_html(
|
||||
c.group_dict.get('description', ''))
|
||||
c.description_formatted = genshi.HTML(description_formatted)
|
||||
except Exception, e:
|
||||
error_msg = "<span class='inline-warning'>%s</span>" %\
|
||||
p.toolkit._("Cannot render description")
|
||||
c.description_formatted = genshi.HTML(error_msg)
|
||||
|
||||
context['return_query'] = True
|
||||
|
||||
# c.group_admins is used by CKAN's legacy (Genshi) templates only,
|
||||
# if we drop support for those then we can delete this line.
|
||||
c.group_admins = ckan.new_authz.get_group_or_org_admin_ids(c.group.id)
|
||||
|
||||
try:
|
||||
page = int(request.params.get('page', 1))
|
||||
except ValueError, e:
|
||||
|
|
|
@ -9,98 +9,94 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: ckanext-harvest 0.2\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-06-10 12:12+0100\n"
|
||||
"POT-Creation-Date: 2015-12-11 15:21+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Generated-By: Babel 0.9.6\n"
|
||||
"Generated-By: Babel 2.1.1\n"
|
||||
|
||||
#: ckanext/harvest/helpers.py:70
|
||||
msgid "title"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:41
|
||||
#: ckanext/harvest/controllers/organization.py:40
|
||||
msgid "Group not found"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:43
|
||||
#: ckanext/harvest/controllers/organization.py:42
|
||||
#, python-format
|
||||
msgid "Unauthorized to read group %s"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:69
|
||||
msgid "Cannot render description"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:151
|
||||
#: ckanext/harvest/controllers/organization.py:137
|
||||
msgid "Groups"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:152
|
||||
#: ckanext/harvest/controllers/organization.py:138
|
||||
msgid "Tags"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:153
|
||||
#: ckanext/harvest/controllers/organization.py:139
|
||||
msgid "Formats"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:154
|
||||
#: ckanext/harvest/controllers/organization.py:140
|
||||
msgid "Licence"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:27
|
||||
#: ckanext/harvest/controllers/view.py:28
|
||||
msgid "Not authorized to see this page"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:44
|
||||
#: ckanext/harvest/controllers/view.py:45
|
||||
msgid "Harvesting source successfully cleared"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:46
|
||||
#: ckanext/harvest/controllers/view.py:47
|
||||
msgid "Harvesting source successfully inactivated"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:50 ckanext/harvest/controllers/view.py:61
|
||||
#: ckanext/harvest/controllers/view.py:82 ckanext/harvest/controllers/view.py:143
|
||||
#: ckanext/harvest/controllers/view.py:181 ckanext/harvest/controllers/view.py:192
|
||||
#: ckanext/harvest/controllers/view.py:218 ckanext/harvest/logic/auth/create.py:34
|
||||
#: ckanext/harvest/controllers/view.py:51 ckanext/harvest/controllers/view.py:63
|
||||
#: ckanext/harvest/controllers/view.py:85 ckanext/harvest/controllers/view.py:146
|
||||
#: ckanext/harvest/controllers/view.py:184 ckanext/harvest/controllers/view.py:195
|
||||
#: ckanext/harvest/controllers/view.py:221 ckanext/harvest/logic/auth/create.py:34
|
||||
#: ckanext/harvest/logic/auth/delete.py:18 ckanext/harvest/logic/auth/get.py:33
|
||||
#: ckanext/harvest/logic/auth/update.py:19
|
||||
msgid "Harvest source not found"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:59
|
||||
msgid "Refresh requested, harvesting will take place within 15 minutes."
|
||||
#: ckanext/harvest/controllers/view.py:61
|
||||
msgid "Harvest will start shortly. Refresh this page for updates."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:66
|
||||
#: ckanext/harvest/controllers/view.py:67
|
||||
msgid ""
|
||||
"Cannot create new harvest jobs on inactive sources. First, please change the "
|
||||
"source status to 'active'."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:69
|
||||
#: ckanext/harvest/controllers/view.py:71
|
||||
msgid "A harvest job has already been scheduled for this source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:80
|
||||
#: ckanext/harvest/controllers/view.py:83
|
||||
msgid "Harvest source cleared"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:108
|
||||
#: ckanext/harvest/controllers/view.py:111
|
||||
msgid "No content found"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:168
|
||||
#: ckanext/harvest/controllers/view.py:171
|
||||
msgid "Harvest job not found"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:201
|
||||
#: ckanext/harvest/templates_new/source/admin.html:15
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:13
|
||||
#: ckanext/harvest/controllers/view.py:204
|
||||
#: ckanext/harvest/templates/source/admin.html:15
|
||||
#: ckanext/harvest/templates/source/job/list.html:13
|
||||
msgid "No jobs yet for this source"
|
||||
msgstr ""
|
||||
|
||||
|
@ -148,120 +144,120 @@ msgstr ""
|
|||
msgid "Only sysadmins can run the pending harvest jobs"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/logic/auth/update.py:68
|
||||
#: ckanext/harvest/logic/auth/update.py:89
|
||||
msgid "Only sysadmins can reindex all harvest sources"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/add_source_button.html:6
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:11
|
||||
#: ckanext/harvest/templates/snippets/add_source_button.html:6
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:11
|
||||
msgid "Add Harvest Source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:26
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:38
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:26
|
||||
#: ckanext/harvest/templates/source/job/list.html:44
|
||||
msgid "errors"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:41
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:41
|
||||
msgid "Details"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:48
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:48
|
||||
msgid "Id"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:52
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:52
|
||||
msgid "Created"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:56
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:60
|
||||
msgid "Started"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:60
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:68
|
||||
msgid "Finished"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:64
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:76
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_error_summary.html:18
|
||||
#: ckanext/harvest/templates/snippets/job_error_summary.html:18
|
||||
msgid "Count"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_error_summary.html:19
|
||||
#: ckanext/harvest/templates/snippets/job_error_summary.html:19
|
||||
msgid "Message"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/package_list_empty.html:1
|
||||
#: ckanext/harvest/templates/snippets/package_list_empty.html:1
|
||||
msgid "There are no datasets associated to this harvest source."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:4
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:4
|
||||
msgid "{number} harvest source found for \"{query}\""
|
||||
msgid_plural "{number} harvest sources found for \"{query}\""
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:5
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:17
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:27
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:5
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:17
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:27
|
||||
msgid "Sorry no harvest sources found for \"{query}\""
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:6
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:6
|
||||
msgid "{number} harvest source found"
|
||||
msgid_plural "{number} harvest sources found"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:7
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:25
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:7
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:25
|
||||
msgid "Sorry no harvest sources found"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:28
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:28
|
||||
msgid "Draft"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:30
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:83
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:30
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:83
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:37
|
||||
#: ckanext/harvest/templates_new/source/about.html:9
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:25
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:37
|
||||
#: ckanext/harvest/templates/source/about.html:9
|
||||
#: ckanext/harvest/templates/source/read_base.html:25
|
||||
msgid "There is no description for this harvest source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:42
|
||||
#: ckanext/harvest/templates_new/source/read.html:5
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:30
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:53
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:42
|
||||
#: ckanext/harvest/templates/source/read.html:5
|
||||
#: ckanext/harvest/templates/source/read_base.html:30
|
||||
#: ckanext/harvest/templates/source/read_base.html:53
|
||||
msgid "Datasets"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:45
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:63
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:45
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:63
|
||||
msgid "Organization"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin.html:5
|
||||
#: ckanext/harvest/templates/source/admin.html:5
|
||||
msgid "Last Harvest Job"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin.html:11
|
||||
#: ckanext/harvest/templates/source/admin.html:11
|
||||
msgid "View full job report"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:7
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:4
|
||||
#: ckanext/harvest/templates/source/admin_base.html:7
|
||||
#: ckanext/harvest/templates/source/read_base.html:4
|
||||
msgid "Admin"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:15
|
||||
#: ckanext/harvest/templates/source/admin_base.html:15
|
||||
msgid ""
|
||||
"This will re-run the harvesting for this source. Any updates at the source "
|
||||
"will overwrite the local datasets. Sources with a large number of datasets "
|
||||
|
@ -269,76 +265,76 @@ msgid ""
|
|||
"you would like us to start reharvesting."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:18
|
||||
#: ckanext/harvest/templates/source/admin_base.html:18
|
||||
msgid "Start a new harvesting job for this harvest source now"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:20
|
||||
#: ckanext/harvest/templates/source/admin_base.html:20
|
||||
msgid "Reharvest"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:24
|
||||
#: ckanext/harvest/templates/source/admin_base.html:24
|
||||
msgid ""
|
||||
"Warning: This will remove all datasets for this source, as well as all "
|
||||
"previous job reports. Are you sure you want to continue?"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:27
|
||||
#: ckanext/harvest/templates/source/admin_base.html:27
|
||||
msgid "Delete all harvest jobs and existing datasets from this source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:28
|
||||
#: ckanext/harvest/templates/source/admin_base.html:28
|
||||
msgid "Clear"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:32
|
||||
#: ckanext/harvest/templates/source/admin_base.html:32
|
||||
msgid "View harvest source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:48
|
||||
#: ckanext/harvest/templates/source/admin_base.html:48
|
||||
msgid "Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:49
|
||||
#: ckanext/harvest/templates/source/admin_base.html:49
|
||||
msgid "Jobs"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:50
|
||||
#: ckanext/harvest/templates/source/admin_base.html:50
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/base.html:17
|
||||
#: ckanext/harvest/templates/source/base.html:17
|
||||
msgid "Organizations"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/base.html:19
|
||||
#: ckanext/harvest/templates_new/source/base.html:22
|
||||
#: ckanext/harvest/templates_new/source/new.html:4
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:3
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:7
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:19
|
||||
#: ckanext/harvest/templates_new/source/search.html:7
|
||||
#: ckanext/harvest/templates/source/base.html:19
|
||||
#: ckanext/harvest/templates/source/base.html:22
|
||||
#: ckanext/harvest/templates/source/new.html:4
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:3
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:7
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:19
|
||||
#: ckanext/harvest/templates/source/search.html:7
|
||||
msgid "Harvest Sources"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/edit.html:3
|
||||
#: ckanext/harvest/templates/source/edit.html:3
|
||||
msgid "Edit harvest source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:5
|
||||
#: ckanext/harvest/templates/source/new.html:5
|
||||
msgid "Create Harvest Source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:11
|
||||
#: ckanext/harvest/templates/source/new.html:11
|
||||
msgid "Create harvest source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:23
|
||||
#: ckanext/harvest/templates_new/source/search.html:3
|
||||
#: ckanext/harvest/templates/source/new.html:23
|
||||
#: ckanext/harvest/templates/source/search.html:3
|
||||
msgid "Harvest sources"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:26
|
||||
#: ckanext/harvest/templates/source/new.html:26
|
||||
msgid ""
|
||||
" Harvest sources allow importing remote metadata into this catalog. Remote "
|
||||
"sources can be other catalogs such as other CKAN instances, CSW servers or "
|
||||
|
@ -346,222 +342,222 @@ msgid ""
|
|||
"this instance). "
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:8
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:8
|
||||
msgid "URL"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:10
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:10
|
||||
msgid "This should include the http:// part of the URL"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:14
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:14
|
||||
msgid "Title"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:14
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:14
|
||||
msgid "eg. A descriptive title"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:21
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:21
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:21
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:21
|
||||
msgid "eg. my-dataset"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:23
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:23
|
||||
msgid "Description"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:43
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:43
|
||||
msgid "Update frequency"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:46
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:46
|
||||
msgid "Configuration"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:66
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:66
|
||||
msgid "No organization"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:79
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:79
|
||||
msgid "State"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:82
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:82
|
||||
msgid "Active"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:92
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:92
|
||||
msgid ""
|
||||
"This will flag the source as deleted but keep all its datasets and previous "
|
||||
"jobs. Are you sure you want to delete this harvest source?"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:93
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:93
|
||||
msgid ""
|
||||
"Warning: Apart from deleting this source, this command will remove all its "
|
||||
"datasets, as well as all previous job reports. Are you sure you want to "
|
||||
"continue?"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:96
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:96
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:102
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:102
|
||||
msgid "Delete source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:107
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:107
|
||||
msgid "Delete and clear source"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/old_new_source_form.html:5
|
||||
#: ckanext/harvest/templates/source/old_new_source_form.html:5
|
||||
msgid "Return to the harvest sources list"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:15
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:25
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:15
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:25
|
||||
msgid " found for \"{query}\""
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:31
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:31
|
||||
msgid "Search sources..."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:32
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:8
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:32
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:8
|
||||
msgid "Search"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:22
|
||||
#: ckanext/harvest/templates/source/read_base.html:22
|
||||
msgid "read more"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:54
|
||||
#: ckanext/harvest/templates/source/read_base.html:54
|
||||
msgid "About"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:44
|
||||
#: ckanext/harvest/templates/source/search.html:44
|
||||
msgid "Relevance"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:45
|
||||
#: ckanext/harvest/templates/source/search.html:45
|
||||
msgid "Name Ascending"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:46
|
||||
#: ckanext/harvest/templates/source/search.html:46
|
||||
msgid "Name Descending"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:47
|
||||
#: ckanext/harvest/templates/source/search.html:47
|
||||
msgid "Last Modified"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:48
|
||||
#: ckanext/harvest/templates/source/search.html:48
|
||||
msgid "Popular"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:50
|
||||
#: ckanext/harvest/templates/source/search.html:50
|
||||
msgid "Search harvest sources..."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:7
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:7
|
||||
msgid "Search..."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:29
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:29
|
||||
msgid "All harvest sources"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:42
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:42
|
||||
msgid "Remove"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:48
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:48
|
||||
msgid "Try another search term, browse the sources below or "
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:49
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:49
|
||||
msgid "add a new one"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:55
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:55
|
||||
msgid ""
|
||||
" <p><strong>There was an error while searching.</strong> Please try "
|
||||
"again.</p> "
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:5
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:10
|
||||
#: ckanext/harvest/templates/source/job/list.html:5
|
||||
#: ckanext/harvest/templates/source/job/list.html:10
|
||||
msgid "Harvest Jobs"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:21
|
||||
#: ckanext/harvest/templates/source/job/list.html:21
|
||||
msgid "Job: "
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:28
|
||||
#: ckanext/harvest/templates/source/job/list.html:28
|
||||
msgid "Started:"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:28
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:30
|
||||
#: ckanext/harvest/templates/source/job/list.html:30
|
||||
#: ckanext/harvest/templates/source/job/list.html:35
|
||||
msgid "Not yet"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:30
|
||||
#: ckanext/harvest/templates/source/job/list.html:33
|
||||
msgid "Finished:"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:3
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:12
|
||||
#: ckanext/harvest/templates/source/job/read.html:3
|
||||
#: ckanext/harvest/templates/source/job/read.html:12
|
||||
msgid "Job Report"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:9
|
||||
#: ckanext/harvest/templates/source/job/read.html:9
|
||||
msgid "Back to job list"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:18
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:22
|
||||
#: ckanext/harvest/templates/source/job/read.html:18
|
||||
#: ckanext/harvest/templates/source/job/read.html:22
|
||||
msgid "Error Summary"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:19
|
||||
#: ckanext/harvest/templates/source/job/read.html:19
|
||||
msgid "No errors for this job"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:23
|
||||
#: ckanext/harvest/templates/source/job/read.html:23
|
||||
msgid "Only the 20 most frequent errors are shown"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:26
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:40
|
||||
#: ckanext/harvest/templates/source/job/read.html:26
|
||||
#: ckanext/harvest/templates/source/job/read.html:40
|
||||
msgid "Job Errors"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:30
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:57
|
||||
#: ckanext/harvest/templates/source/job/read.html:30
|
||||
#: ckanext/harvest/templates/source/job/read.html:57
|
||||
msgid "Document Errors"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:37
|
||||
#: ckanext/harvest/templates/source/job/read.html:37
|
||||
msgid "Error Report"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:58
|
||||
#: ckanext/harvest/templates/source/job/read.html:58
|
||||
msgid "documents with errors"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:69
|
||||
#: ckanext/harvest/templates/source/job/read.html:69
|
||||
msgid "Remote content"
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:73
|
||||
#: ckanext/harvest/templates/source/job/read.html:73
|
||||
msgid "Local content"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -1,113 +1,111 @@
|
|||
# Translations template for ckanext-harvest.
|
||||
# Swedish translations for ckanext-harvest.
|
||||
# Copyright (C) 2015 ORGANIZATION
|
||||
# This file is distributed under the same license as the ckanext-harvest
|
||||
# project.
|
||||
#
|
||||
#
|
||||
# Translators:
|
||||
# Börje Lewin <borjelewin@gmail.com>, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ckanext-harvest\n"
|
||||
"Project-Id-Version: ckanext-harvest\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-06-10 12:12+0100\n"
|
||||
"POT-Creation-Date: 2015-12-11 15:21+0000\n"
|
||||
"PO-Revision-Date: 2015-06-11 17:28+0000\n"
|
||||
"Last-Translator: Börje Lewin <borjelewin@gmail.com>\n"
|
||||
"Language-Team: Swedish (http://www.transifex.com/projects/p/ckanext-harvest/language/sv/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Generated-By: Babel 0.9.6\n"
|
||||
"Language: sv\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"Language-Team: Swedish (http://www.transifex.com/projects/p/ckanext-"
|
||||
"harvest/language/sv/)\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Generated-By: Babel 2.1.1\n"
|
||||
|
||||
#: ckanext/harvest/helpers.py:70
|
||||
msgid "title"
|
||||
msgstr "rubrik"
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:41
|
||||
#: ckanext/harvest/controllers/organization.py:40
|
||||
msgid "Group not found"
|
||||
msgstr "Hittar inte grupp"
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:43
|
||||
#: ckanext/harvest/controllers/organization.py:42
|
||||
#, python-format
|
||||
msgid "Unauthorized to read group %s"
|
||||
msgstr "Obehörig att läsa grupp %s"
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:69
|
||||
msgid "Cannot render description"
|
||||
msgstr "Kan inte generera beskrivning"
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:151
|
||||
#: ckanext/harvest/controllers/organization.py:137
|
||||
msgid "Groups"
|
||||
msgstr "Grupper"
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:152
|
||||
#: ckanext/harvest/controllers/organization.py:138
|
||||
msgid "Tags"
|
||||
msgstr "Taggar"
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:153
|
||||
#: ckanext/harvest/controllers/organization.py:139
|
||||
msgid "Formats"
|
||||
msgstr "Format"
|
||||
|
||||
#: ckanext/harvest/controllers/organization.py:154
|
||||
#: ckanext/harvest/controllers/organization.py:140
|
||||
msgid "Licence"
|
||||
msgstr "Licens"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:27
|
||||
#: ckanext/harvest/controllers/view.py:28
|
||||
msgid "Not authorized to see this page"
|
||||
msgstr "Obehörig att se denna sida"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:44
|
||||
#: ckanext/harvest/controllers/view.py:45
|
||||
msgid "Harvesting source successfully cleared"
|
||||
msgstr "Källan för skördning har raderats"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:46
|
||||
#: ckanext/harvest/controllers/view.py:47
|
||||
msgid "Harvesting source successfully inactivated"
|
||||
msgstr "Källan för skördning har avaktiverats"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:50
|
||||
#: ckanext/harvest/controllers/view.py:61
|
||||
#: ckanext/harvest/controllers/view.py:82
|
||||
#: ckanext/harvest/controllers/view.py:143
|
||||
#: ckanext/harvest/controllers/view.py:181
|
||||
#: ckanext/harvest/controllers/view.py:192
|
||||
#: ckanext/harvest/controllers/view.py:218
|
||||
#: ckanext/harvest/controllers/view.py:51
|
||||
#: ckanext/harvest/controllers/view.py:63
|
||||
#: ckanext/harvest/controllers/view.py:85
|
||||
#: ckanext/harvest/controllers/view.py:146
|
||||
#: ckanext/harvest/controllers/view.py:184
|
||||
#: ckanext/harvest/controllers/view.py:195
|
||||
#: ckanext/harvest/controllers/view.py:221
|
||||
#: ckanext/harvest/logic/auth/create.py:34
|
||||
#: ckanext/harvest/logic/auth/delete.py:18
|
||||
#: ckanext/harvest/logic/auth/get.py:33
|
||||
#: ckanext/harvest/logic/auth/delete.py:18 ckanext/harvest/logic/auth/get.py:33
|
||||
#: ckanext/harvest/logic/auth/update.py:19
|
||||
msgid "Harvest source not found"
|
||||
msgstr "Hittar inte källan"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:59
|
||||
msgid "Refresh requested, harvesting will take place within 15 minutes."
|
||||
msgstr "Uppdatering har begärts, skördning sker inom 15 minuter."
|
||||
#: ckanext/harvest/controllers/view.py:61
|
||||
msgid "Harvest will start shortly. Refresh this page for updates."
|
||||
msgstr ""
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:66
|
||||
#: ckanext/harvest/controllers/view.py:67
|
||||
msgid ""
|
||||
"Cannot create new harvest jobs on inactive sources. First, please change the"
|
||||
" source status to 'active'."
|
||||
msgstr "Kan inte skapa nya skördningsjobb för inaktiva källor. Ändra först källans status till 'aktiv'."
|
||||
"Cannot create new harvest jobs on inactive sources. First, please change "
|
||||
"the source status to 'active'."
|
||||
msgstr ""
|
||||
"Kan inte skapa nya skördningsjobb för inaktiva källor. Ändra först "
|
||||
"källans status till 'aktiv'."
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:69
|
||||
#: ckanext/harvest/controllers/view.py:71
|
||||
msgid "A harvest job has already been scheduled for this source"
|
||||
msgstr "Ett skördningsjobb har redan schemalagts för denna källa"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:80
|
||||
#: ckanext/harvest/controllers/view.py:83
|
||||
msgid "Harvest source cleared"
|
||||
msgstr "Skördningskällan har rensats"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:108
|
||||
#: ckanext/harvest/controllers/view.py:111
|
||||
msgid "No content found"
|
||||
msgstr "Hittar inget innehåll"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:168
|
||||
#: ckanext/harvest/controllers/view.py:171
|
||||
msgid "Harvest job not found"
|
||||
msgstr "Hittar inte skördningsjobbet"
|
||||
|
||||
#: ckanext/harvest/controllers/view.py:201
|
||||
#: ckanext/harvest/templates_new/source/admin.html:15
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:13
|
||||
#: ckanext/harvest/controllers/view.py:204
|
||||
#: ckanext/harvest/templates/source/admin.html:15
|
||||
#: ckanext/harvest/templates/source/job/list.html:13
|
||||
msgid "No jobs yet for this source"
|
||||
msgstr "Det finns inga jobb för denna källa"
|
||||
|
||||
|
@ -155,419 +153,439 @@ msgstr "Endast systemadministratörer kan importera om skördningsobjekt"
|
|||
msgid "Only sysadmins can run the pending harvest jobs"
|
||||
msgstr "Endast systemadministratörer kan köra väntande skördningsjobb"
|
||||
|
||||
#: ckanext/harvest/logic/auth/update.py:68
|
||||
#: ckanext/harvest/logic/auth/update.py:89
|
||||
msgid "Only sysadmins can reindex all harvest sources"
|
||||
msgstr "Endast systemadministratörer kan omindexera skördningskällor"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/add_source_button.html:6
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:11
|
||||
#: ckanext/harvest/templates/snippets/add_source_button.html:6
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:11
|
||||
msgid "Add Harvest Source"
|
||||
msgstr "Lägg till skördningskälla"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:26
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:38
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:26
|
||||
#: ckanext/harvest/templates/source/job/list.html:44
|
||||
msgid "errors"
|
||||
msgstr "fel"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:41
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:41
|
||||
msgid "Details"
|
||||
msgstr "Detaljer"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:48
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:48
|
||||
msgid "Id"
|
||||
msgstr "Id"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:52
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:52
|
||||
msgid "Created"
|
||||
msgstr "Skapad"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:56
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:60
|
||||
msgid "Started"
|
||||
msgstr "Påbörjad"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:60
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:68
|
||||
msgid "Finished"
|
||||
msgstr "Avslutad"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_details.html:64
|
||||
#: ckanext/harvest/templates/snippets/job_details.html:76
|
||||
msgid "Status"
|
||||
msgstr "Status"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_error_summary.html:18
|
||||
#: ckanext/harvest/templates/snippets/job_error_summary.html:18
|
||||
msgid "Count"
|
||||
msgstr "Antal"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/job_error_summary.html:19
|
||||
#: ckanext/harvest/templates/snippets/job_error_summary.html:19
|
||||
msgid "Message"
|
||||
msgstr "Meddelande"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/package_list_empty.html:1
|
||||
#: ckanext/harvest/templates/snippets/package_list_empty.html:1
|
||||
msgid "There are no datasets associated to this harvest source."
|
||||
msgstr "Det finns inga dataset kopplade till denna skördningskälla"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:4
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:4
|
||||
msgid "{number} harvest source found for \"{query}\""
|
||||
msgid_plural "{number} harvest sources found for \"{query}\""
|
||||
msgstr[0] "{number} skördningskälla hittades för \"{query}\""
|
||||
msgstr[1] "{number} skördningskällor hittades för \"{query}\""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:5
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:17
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:27
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:5
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:17
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:27
|
||||
msgid "Sorry no harvest sources found for \"{query}\""
|
||||
msgstr "Hittar inga skördningskällor för \"{query}\""
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:6
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:6
|
||||
msgid "{number} harvest source found"
|
||||
msgid_plural "{number} harvest sources found"
|
||||
msgstr[0] "{number} skördningskälla hittades"
|
||||
msgstr[1] "{number} skördningskällor hittades"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/search_result_text.html:7
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:25
|
||||
#: ckanext/harvest/templates/snippets/search_result_text.html:7
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:25
|
||||
msgid "Sorry no harvest sources found"
|
||||
msgstr "Hittade inga skördningskällor"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:28
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:28
|
||||
msgid "Draft"
|
||||
msgstr "Utkast"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:30
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:83
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:30
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:83
|
||||
msgid "Deleted"
|
||||
msgstr "Borttagen"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:37
|
||||
#: ckanext/harvest/templates_new/source/about.html:9
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:25
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:37
|
||||
#: ckanext/harvest/templates/source/about.html:9
|
||||
#: ckanext/harvest/templates/source/read_base.html:25
|
||||
msgid "There is no description for this harvest source"
|
||||
msgstr "Det finns ingen beskrivning för denna skördningskälla"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:42
|
||||
#: ckanext/harvest/templates_new/source/read.html:5
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:30
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:53
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:42
|
||||
#: ckanext/harvest/templates/source/read.html:5
|
||||
#: ckanext/harvest/templates/source/read_base.html:30
|
||||
#: ckanext/harvest/templates/source/read_base.html:53
|
||||
msgid "Datasets"
|
||||
msgstr "Dataset"
|
||||
|
||||
#: ckanext/harvest/templates_new/snippets/source_item.html:45
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:63
|
||||
#: ckanext/harvest/templates/snippets/source_item.html:45
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:63
|
||||
msgid "Organization"
|
||||
msgstr "Organisation"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin.html:5
|
||||
#: ckanext/harvest/templates/source/admin.html:5
|
||||
msgid "Last Harvest Job"
|
||||
msgstr "Sista skördningsjobb"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin.html:11
|
||||
#: ckanext/harvest/templates/source/admin.html:11
|
||||
msgid "View full job report"
|
||||
msgstr "Visa fullständig jobbrapport"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:7
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:4
|
||||
#: ckanext/harvest/templates/source/admin_base.html:7
|
||||
#: ckanext/harvest/templates/source/read_base.html:4
|
||||
msgid "Admin"
|
||||
msgstr "Admin"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:15
|
||||
#: ckanext/harvest/templates/source/admin_base.html:15
|
||||
msgid ""
|
||||
"This will re-run the harvesting for this source. Any updates at the source "
|
||||
"will overwrite the local datasets. Sources with a large number of datasets "
|
||||
"may take a significant amount of time to finish harvesting. Please confirm "
|
||||
"you would like us to start reharvesting."
|
||||
msgstr "Skördningen kommer att köras igen för denna källa. Alla uppdateringar från källan kommer att ersätta lokala dataset. Källor med många dataset kan ta lång tid att skörda. Bekräfta om du vill starta en omskördning."
|
||||
"This will re-run the harvesting for this source. Any updates at the "
|
||||
"source will overwrite the local datasets. Sources with a large number of "
|
||||
"datasets may take a significant amount of time to finish harvesting. "
|
||||
"Please confirm you would like us to start reharvesting."
|
||||
msgstr ""
|
||||
"Skördningen kommer att köras igen för denna källa. Alla uppdateringar "
|
||||
"från källan kommer att ersätta lokala dataset. Källor med många dataset "
|
||||
"kan ta lång tid att skörda. Bekräfta om du vill starta en omskördning."
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:18
|
||||
#: ckanext/harvest/templates/source/admin_base.html:18
|
||||
msgid "Start a new harvesting job for this harvest source now"
|
||||
msgstr "Starta ett nytt skördningsjobb för denna skördningskälla nu."
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:20
|
||||
#: ckanext/harvest/templates/source/admin_base.html:20
|
||||
msgid "Reharvest"
|
||||
msgstr "Skörda om"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:24
|
||||
#: ckanext/harvest/templates/source/admin_base.html:24
|
||||
msgid ""
|
||||
"Warning: This will remove all datasets for this source, as well as all "
|
||||
"previous job reports. Are you sure you want to continue?"
|
||||
msgstr "Varning: Alla dataset för denna källa tas bort, liksom tidigare jobbrapporter. Vill du fortsätta?"
|
||||
msgstr ""
|
||||
"Varning: Alla dataset för denna källa tas bort, liksom tidigare "
|
||||
"jobbrapporter. Vill du fortsätta?"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:27
|
||||
#: ckanext/harvest/templates/source/admin_base.html:27
|
||||
msgid "Delete all harvest jobs and existing datasets from this source"
|
||||
msgstr "Ta bort alla skördningsjobb och befintliga dataset från denna källa"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:28
|
||||
#: ckanext/harvest/templates/source/admin_base.html:28
|
||||
msgid "Clear"
|
||||
msgstr "Rensa"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:32
|
||||
#: ckanext/harvest/templates/source/admin_base.html:32
|
||||
msgid "View harvest source"
|
||||
msgstr "Visa skördningskälla"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:48
|
||||
#: ckanext/harvest/templates/source/admin_base.html:48
|
||||
msgid "Dashboard"
|
||||
msgstr "Kontrollpanel"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:49
|
||||
#: ckanext/harvest/templates/source/admin_base.html:49
|
||||
msgid "Jobs"
|
||||
msgstr "Jobb"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/admin_base.html:50
|
||||
#: ckanext/harvest/templates/source/admin_base.html:50
|
||||
msgid "Edit"
|
||||
msgstr "Redigera"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/base.html:17
|
||||
#: ckanext/harvest/templates/source/base.html:17
|
||||
msgid "Organizations"
|
||||
msgstr "Organisationer"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/base.html:19
|
||||
#: ckanext/harvest/templates_new/source/base.html:22
|
||||
#: ckanext/harvest/templates_new/source/new.html:4
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:3
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:7
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:19
|
||||
#: ckanext/harvest/templates_new/source/search.html:7
|
||||
#: ckanext/harvest/templates/source/base.html:19
|
||||
#: ckanext/harvest/templates/source/base.html:22
|
||||
#: ckanext/harvest/templates/source/new.html:4
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:3
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:7
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:19
|
||||
#: ckanext/harvest/templates/source/search.html:7
|
||||
msgid "Harvest Sources"
|
||||
msgstr "Skördningskällor"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/edit.html:3
|
||||
#: ckanext/harvest/templates/source/edit.html:3
|
||||
msgid "Edit harvest source"
|
||||
msgstr "Redigera skördningskällo"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:5
|
||||
#: ckanext/harvest/templates/source/new.html:5
|
||||
msgid "Create Harvest Source"
|
||||
msgstr "Skapa skördningskälla"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:11
|
||||
#: ckanext/harvest/templates/source/new.html:11
|
||||
msgid "Create harvest source"
|
||||
msgstr "Skapa skördningskälla"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:23
|
||||
#: ckanext/harvest/templates_new/source/search.html:3
|
||||
#: ckanext/harvest/templates/source/new.html:23
|
||||
#: ckanext/harvest/templates/source/search.html:3
|
||||
msgid "Harvest sources"
|
||||
msgstr "Skördningskällor"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new.html:26
|
||||
#: ckanext/harvest/templates/source/new.html:26
|
||||
msgid ""
|
||||
" Harvest sources allow importing remote metadata into this catalog. Remote "
|
||||
"sources can be other catalogs such as other CKAN instances, CSW servers or "
|
||||
"Web Accessible Folders (WAF) (depending on the actual harvesters enabled for"
|
||||
" this instance). "
|
||||
msgstr "Skördningskällor kan användas för att importera metadata till katalogen. Källor kan vara kataloger (t ex CKAN-instanser), CSW-servrar eller Web Accessible Folders (WAF), beroende på antalet aktiverade skördningsformat för instansen. "
|
||||
" Harvest sources allow importing remote metadata into this catalog. "
|
||||
"Remote sources can be other catalogs such as other CKAN instances, CSW "
|
||||
"servers or Web Accessible Folders (WAF) (depending on the actual "
|
||||
"harvesters enabled for this instance). "
|
||||
msgstr ""
|
||||
"Skördningskällor kan användas för att importera metadata till katalogen. "
|
||||
"Källor kan vara kataloger (t ex CKAN-instanser), CSW-servrar eller Web "
|
||||
"Accessible Folders (WAF), beroende på antalet aktiverade skördningsformat"
|
||||
" för instansen. "
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:8
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:8
|
||||
msgid "URL"
|
||||
msgstr "URL"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:10
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:10
|
||||
msgid "This should include the http:// part of the URL"
|
||||
msgstr "Denna URL ska börja med http://"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:14
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:14
|
||||
msgid "Title"
|
||||
msgstr "Rubrik"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:14
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:14
|
||||
msgid "eg. A descriptive title"
|
||||
msgstr "t ex Beskrivande rubrik"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:21
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:21
|
||||
msgid "Name"
|
||||
msgstr "Namn"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:21
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:21
|
||||
msgid "eg. my-dataset"
|
||||
msgstr "t ex mitt-dataset"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:23
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:23
|
||||
msgid "Description"
|
||||
msgstr "Beskrivning"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:43
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:43
|
||||
msgid "Update frequency"
|
||||
msgstr "Uppdateringsfrekvens"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:46
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:46
|
||||
msgid "Configuration"
|
||||
msgstr "Konfiguration"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:66
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:66
|
||||
msgid "No organization"
|
||||
msgstr "Ingen organisation"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:79
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:79
|
||||
msgid "State"
|
||||
msgstr "Status"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:82
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:82
|
||||
msgid "Active"
|
||||
msgstr "Aktiv"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:92
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:92
|
||||
msgid ""
|
||||
"This will flag the source as deleted but keep all its datasets and previous "
|
||||
"jobs. Are you sure you want to delete this harvest source?"
|
||||
msgstr "Källan markeras som borttagen men alla dataset och tidigare jobb sparas. Vill du markera skördningskällan som borttagen?"
|
||||
"This will flag the source as deleted but keep all its datasets and "
|
||||
"previous jobs. Are you sure you want to delete this harvest source?"
|
||||
msgstr ""
|
||||
"Källan markeras som borttagen men alla dataset och tidigare jobb sparas. "
|
||||
"Vill du markera skördningskällan som borttagen?"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:93
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:93
|
||||
msgid ""
|
||||
"Warning: Apart from deleting this source, this command will remove all its "
|
||||
"datasets, as well as all previous job reports. Are you sure you want to "
|
||||
"continue?"
|
||||
msgstr "Varning. Förutom att källan tas bort, raderas även alla källans dataset och tidigare jobbrapporter. Vill du fortsätta med raderingen?"
|
||||
"Warning: Apart from deleting this source, this command will remove all "
|
||||
"its datasets, as well as all previous job reports. Are you sure you want "
|
||||
"to continue?"
|
||||
msgstr ""
|
||||
"Varning. Förutom att källan tas bort, raderas även alla källans dataset "
|
||||
"och tidigare jobbrapporter. Vill du fortsätta med raderingen?"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:96
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:96
|
||||
msgid "Delete"
|
||||
msgstr "Ta bort"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:102
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:102
|
||||
msgid "Delete source"
|
||||
msgstr "Ta bort källa"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/new_source_form.html:107
|
||||
#: ckanext/harvest/templates/source/new_source_form.html:107
|
||||
msgid "Delete and clear source"
|
||||
msgstr "Ta bort och rensa källa"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/old_new_source_form.html:5
|
||||
#: ckanext/harvest/templates/source/old_new_source_form.html:5
|
||||
msgid "Return to the harvest sources list"
|
||||
msgstr "Återgå till listan med skördningskällor"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:15
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:25
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:15
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:25
|
||||
msgid " found for \"{query}\""
|
||||
msgstr " hittades för \"{query}\""
|
||||
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:31
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:31
|
||||
msgid "Search sources..."
|
||||
msgstr "Sök källor..."
|
||||
|
||||
#: ckanext/harvest/templates_new/source/org_source_list.html:32
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:8
|
||||
#: ckanext/harvest/templates/source/org_source_list.html:32
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:8
|
||||
msgid "Search"
|
||||
msgstr "Sök"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:22
|
||||
#: ckanext/harvest/templates/source/read_base.html:22
|
||||
msgid "read more"
|
||||
msgstr "läs mer"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/read_base.html:54
|
||||
#: ckanext/harvest/templates/source/read_base.html:54
|
||||
msgid "About"
|
||||
msgstr "Om"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:44
|
||||
#: ckanext/harvest/templates/source/search.html:44
|
||||
msgid "Relevance"
|
||||
msgstr "Relevans"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:45
|
||||
#: ckanext/harvest/templates/source/search.html:45
|
||||
msgid "Name Ascending"
|
||||
msgstr "Namn (stigande)"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:46
|
||||
#: ckanext/harvest/templates/source/search.html:46
|
||||
msgid "Name Descending"
|
||||
msgstr "Namn (fallande)"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:47
|
||||
#: ckanext/harvest/templates/source/search.html:47
|
||||
msgid "Last Modified"
|
||||
msgstr "Senast ändrad"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:48
|
||||
#: ckanext/harvest/templates/source/search.html:48
|
||||
msgid "Popular"
|
||||
msgstr "Populär"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search.html:50
|
||||
#: ckanext/harvest/templates/source/search.html:50
|
||||
msgid "Search harvest sources..."
|
||||
msgstr "Sök skördningskällor..."
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:7
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:7
|
||||
msgid "Search..."
|
||||
msgstr "Sök..."
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:29
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:29
|
||||
msgid "All harvest sources"
|
||||
msgstr "Alla skördningskällor"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:42
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:42
|
||||
msgid "Remove"
|
||||
msgstr "Radera"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:48
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:48
|
||||
msgid "Try another search term, browse the sources below or "
|
||||
msgstr "Försök med en annan sökning, välj bland källorna nedan eller "
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:49
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:49
|
||||
msgid "add a new one"
|
||||
msgstr "lägg till en ny"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/search_2.0.html:55
|
||||
#: ckanext/harvest/templates/source/search_2.0.html:55
|
||||
msgid ""
|
||||
" <p><strong>There was an error while searching.</strong> Please try "
|
||||
"again.</p> "
|
||||
msgstr " <p><strong>Fel vid sökning.</strong> Försök igen.</p> "
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:5
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:10
|
||||
#: ckanext/harvest/templates/source/job/list.html:5
|
||||
#: ckanext/harvest/templates/source/job/list.html:10
|
||||
msgid "Harvest Jobs"
|
||||
msgstr "Skördningsjobb"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:21
|
||||
#: ckanext/harvest/templates/source/job/list.html:21
|
||||
msgid "Job: "
|
||||
msgstr "Jobb:"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:28
|
||||
#: ckanext/harvest/templates/source/job/list.html:28
|
||||
msgid "Started:"
|
||||
msgstr "Påbörjade:"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:28
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:30
|
||||
#: ckanext/harvest/templates/source/job/list.html:30
|
||||
#: ckanext/harvest/templates/source/job/list.html:35
|
||||
msgid "Not yet"
|
||||
msgstr "Inte ännu"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/list.html:30
|
||||
#: ckanext/harvest/templates/source/job/list.html:33
|
||||
msgid "Finished:"
|
||||
msgstr "Avslutade:"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:3
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:12
|
||||
#: ckanext/harvest/templates/source/job/read.html:3
|
||||
#: ckanext/harvest/templates/source/job/read.html:12
|
||||
msgid "Job Report"
|
||||
msgstr "Jobbrapport"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:9
|
||||
#: ckanext/harvest/templates/source/job/read.html:9
|
||||
msgid "Back to job list"
|
||||
msgstr "Tillbaka till jobblistan"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:18
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:22
|
||||
#: ckanext/harvest/templates/source/job/read.html:18
|
||||
#: ckanext/harvest/templates/source/job/read.html:22
|
||||
msgid "Error Summary"
|
||||
msgstr "Översikt för felaktigheter"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:19
|
||||
#: ckanext/harvest/templates/source/job/read.html:19
|
||||
msgid "No errors for this job"
|
||||
msgstr "Inga felaktigheter för detta jobb"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:23
|
||||
#: ckanext/harvest/templates/source/job/read.html:23
|
||||
msgid "Only the 20 most frequent errors are shown"
|
||||
msgstr "Endast de 20 vanligaste felen visas"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:26
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:40
|
||||
#: ckanext/harvest/templates/source/job/read.html:26
|
||||
#: ckanext/harvest/templates/source/job/read.html:40
|
||||
msgid "Job Errors"
|
||||
msgstr "Jobbfel"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:30
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:57
|
||||
#: ckanext/harvest/templates/source/job/read.html:30
|
||||
#: ckanext/harvest/templates/source/job/read.html:57
|
||||
msgid "Document Errors"
|
||||
msgstr "Dokumentfel"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:37
|
||||
#: ckanext/harvest/templates/source/job/read.html:37
|
||||
msgid "Error Report"
|
||||
msgstr "Felrapport"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:58
|
||||
#: ckanext/harvest/templates/source/job/read.html:58
|
||||
msgid "documents with errors"
|
||||
msgstr "dokument med fel"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:69
|
||||
#: ckanext/harvest/templates/source/job/read.html:69
|
||||
msgid "Remote content"
|
||||
msgstr "Fjärrinnehåll"
|
||||
|
||||
#: ckanext/harvest/templates_new/source/job/read.html:73
|
||||
#: ckanext/harvest/templates/source/job/read.html:73
|
||||
msgid "Local content"
|
||||
msgstr "Lokalt innehåll"
|
||||
|
||||
#~ msgid "Cannot render description"
|
||||
#~ msgstr "Kan inte generera beskrivning"
|
||||
|
||||
#~ msgid "Refresh requested, harvesting will take place within 15 minutes."
|
||||
#~ msgstr "Uppdatering har begärts, skördning sker inom 15 minuter."
|
||||
|
||||
|
|
|
@ -229,12 +229,14 @@ class Harvest(p.SingletonPlugin, DefaultDatasetForm, DefaultTranslation):
|
|||
return map
|
||||
|
||||
def update_config(self, config):
|
||||
# check if new templates
|
||||
templates = 'templates'
|
||||
if p.toolkit.check_ckan_version(min_version='2.0'):
|
||||
if not p.toolkit.asbool(config.get('ckan.legacy_templates', False)):
|
||||
templates = 'templates_new'
|
||||
p.toolkit.add_template_directory(config, templates)
|
||||
if not p.toolkit.check_ckan_version(min_version='2.0'):
|
||||
assert 0, 'CKAN before 2.0 not supported by ckanext-harvest - '\
|
||||
'genshi templates not supported any more'
|
||||
if p.toolkit.asbool(config.get('ckan.legacy_templates', False)):
|
||||
log.warn('Old genshi templates not supported any more by '
|
||||
'ckanext-harvest so you should set ckan.legacy_templates '
|
||||
'option to True any more.')
|
||||
p.toolkit.add_template_directory(config, 'templates')
|
||||
p.toolkit.add_public_directory(config, 'public')
|
||||
p.toolkit.add_resource('fanstatic_library', 'ckanext-harvest')
|
||||
p.toolkit.add_resource('public/ckanext/harvest/javascript', 'harvest-extra-field')
|
||||
|
|
|
@ -1,95 +1,91 @@
|
|||
<html xmlns:py="http://genshi.edgewall.org/"
|
||||
xmlns:i18n="http://genshi.edgewall.org/i18n"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
py:strip="">
|
||||
{% extends "page.html" %}
|
||||
|
||||
<py:def function="page_title">Harvesting Sources</py:def>
|
||||
{% block title %}{{ _('Harvesting Sources') }} - {{ super() }}{% endblock %}
|
||||
|
||||
<py:def function="body_class">harvest no-sidebar</py:def>
|
||||
<py:def function="page_heading">Harvesting Sources</py:def>
|
||||
{% block breadcrumb_content %}
|
||||
{% endblock %}
|
||||
|
||||
<py:def function="optional_head">
|
||||
<link type="text/css" rel="stylesheet" media="all" href="/ckanext/harvest/style.css" />
|
||||
</py:def>
|
||||
<py:def function="optional_footer">
|
||||
<script>$("#show-inactive-sources").click(function(){$("#harvest-sources .inactive").toggle()});</script>
|
||||
</py:def>
|
||||
{% block styles %}
|
||||
{{ super() }}
|
||||
<link type="text/css" rel="stylesheet" media="all" href="/ckanext/harvest/style.css" />
|
||||
{% endblock %}
|
||||
|
||||
<div py:match="content">
|
||||
<div class="harvest-content">
|
||||
{% block scripts %}
|
||||
{{ super() }}
|
||||
<script>$("#show-inactive-sources").click(function(){$("#harvest-sources .inactive").toggle()});</script>
|
||||
{% endblock %}
|
||||
|
||||
<div py:if="c.status" class="status">
|
||||
<h3>Status:</h3>
|
||||
${h.literal(c.status)}
|
||||
</div>
|
||||
{% block primary %}
|
||||
<article class="module">
|
||||
<div class="module-content">
|
||||
<h1>{% trans %}Harvesting Sources{% endtrans %}</h1>
|
||||
{% if c.status %}
|
||||
<div class="status">
|
||||
<h3>{{ _('Status') }}:</h3>
|
||||
{{ h.literal(c.status) }}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div id="new-harvest-source"><a href="harvest/new">Add a harvesting source</a></div>
|
||||
<py:choose>
|
||||
<py:when test="c.sources">
|
||||
<div id="show-inactive-sources-content">
|
||||
<input type="checkbox" id="show-inactive-sources" />
|
||||
<label for="show-inactive-sources"> Show inactive sources</label>
|
||||
</div>
|
||||
<div id="new-harvest-source"><a href="harvest/new">{% trans %}Add a harvesting source{% endtrans %}</a></div>
|
||||
|
||||
<table id="harvest-sources" class="table table-bordered table-condensed ${'publishers' if c.publisher_auth else ''}" >
|
||||
<tr>
|
||||
<th class="action">View</th>
|
||||
<th class="action">Edit</th>
|
||||
<th class="action">Refresh</th>
|
||||
<th>URL</th>
|
||||
<th>Type</th>
|
||||
<th>Active</th>
|
||||
<th>Statistics</th>
|
||||
<th>Next Harvest</th>
|
||||
<th>Created</th>
|
||||
</tr>
|
||||
<?python old_publisher = None ?>
|
||||
<py:for each="source in c.sources">
|
||||
<tr class="publisher" py:if="c.publisher_auth and old_publisher != source['publisher_id']">
|
||||
<py:choose>
|
||||
<py:when test="source.get('publisher_title')">
|
||||
<td colspan="9">${source['publisher_title']}</td>
|
||||
</py:when>
|
||||
<py:otherwise>
|
||||
<td colspan="9">${source['publisher_id']}</td>
|
||||
</py:otherwise>
|
||||
</py:choose>
|
||||
{% if c.sources %}
|
||||
<div id="show-inactive-sources-content">
|
||||
<label for="show-inactive-sources">Show inactive sources</label>
|
||||
<input type="checkbox" id="show-inactive-sources" />
|
||||
</div>
|
||||
|
||||
<table id="harvest-sources" class="table table-bordered table-condensed ${'publishers' if c.publisher_auth else ''}" >
|
||||
<tr>
|
||||
<th class="action">{{ _('View') }}</th>
|
||||
<th class="action">{{ _('Edit') }}</th>
|
||||
<th class="action">{{ _('Refresh'}}</th>
|
||||
<th class="url">URL</th>
|
||||
{# TRANSLATORS: Appears in harvest source table for the type of harvester #}
|
||||
<th>{{ _('Type')}}</th>
|
||||
{# TRANSLATORS: Appears in harvest source table 'is Active' #}
|
||||
<th>{{ _('Active')}}</th>
|
||||
<th>{{ _('Statistics') }}</th>
|
||||
{# TRANSLATORS: Appears in harvest source table 'date of next harvest #}
|
||||
<th>{{ _('Next Harvest') }}</th>
|
||||
{# TRANSLATORS: Appears in harvest source table date created #}
|
||||
<th>{{ _('Created') }}</th>
|
||||
</tr>
|
||||
{% set old_publisher = None %}
|
||||
{% for source in c.sources %}
|
||||
{% if c.publisher_auth and old_publisher != source['publisher_id'] %}
|
||||
<tr class="publisher">
|
||||
{% if source.get('publisher_title') %}
|
||||
<td colspan="9">{{ source['publisher_title'] }}</td>
|
||||
{% else %}
|
||||
<td colspan="9">{{ source['publisher_id'] }}</td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% set old_publisher = source['publisher_id'] %}
|
||||
<tr class="{{ 'active' if source.active else 'inactive' }}">
|
||||
<td class="action"><a href="harvest/{{ source.id }}"><img src="ckanext/harvest/images/icons/source_view.png" alt="View" title="View" /></a></td>
|
||||
<td class="action"><a href="harvest/edit/{{ source.id }}"><img src="ckanext/harvest/images/icons/source_edit.png" alt="Edit" title="Edit" /></a></td>
|
||||
<td class="action"><a href="harvest/refresh/{{ source.id }}"><img src="ckanext/harvest/images/icons/source_refresh.png" alt="Refresh" title="Refresh" /></a></td>
|
||||
<td title="{{ source.url }}">{{ source.url | truncate(50) }}</td>
|
||||
<td>{{ source.type }}</td>
|
||||
<td class="state">{{ source.active }}</td>
|
||||
{% if 'msg' in source.status %}
|
||||
<td>{{ source.status.msg }}</td>
|
||||
<td>{{ source.status.msg }}</td>
|
||||
{% else %}
|
||||
<td>Datasets: <a href="harvest/{{ source.id }}#datasets">{{ source.status.overall_statistics.added }}</a><br/>
|
||||
Last errors: <a href="harvest/{{ source.id }}#errors">{{ source.status.last_harvest_statistics.errors }}</a></td>
|
||||
<td>{{ source.status.next_harvest }}</td>
|
||||
{% endif %}
|
||||
<td>{{ h.render_datetime(source.created) }}</td>
|
||||
</tr>
|
||||
<?python old_publisher = source['publisher_id'] ?>
|
||||
<tr class="${'active' if source.active else 'inactive'}">
|
||||
<td><a href="harvest/${source.id}"><img src="ckanext/harvest/images/icons/source_view.png" alt="View" title="View" /></a></td>
|
||||
<td><a href="harvest/edit/${source.id}"><img src="ckanext/harvest/images/icons/source_edit.png" alt="Edit" title="Edit" /></a></td>
|
||||
<td><a href="harvest/refresh/${source.id}"><img src="ckanext/harvest/images/icons/source_refresh.png" alt="Refresh" title="Refresh" /></a></td>
|
||||
<?python
|
||||
from webhelpers.text import truncate
|
||||
?>
|
||||
<td title="${source.url}">${truncate(source.url, 50)}</td>
|
||||
<td>${source.type}</td>
|
||||
<td class="state">${source.active}</td>
|
||||
<py:choose>
|
||||
<py:when test="'msg' in source.status">
|
||||
<td>${source.status.msg}</td>
|
||||
<td>${source.status.msg}</td>
|
||||
</py:when>
|
||||
<py:otherwise>
|
||||
<td>Datasets: <a href="harvest/${source.id}#datasets">${source.status.overall_statistics.added}</a> <br/>
|
||||
Last errors: <a href="harvest/${source.id}#errors">${source.status.last_harvest_statistics.errors}</a></td>
|
||||
<td>${source.status.next_harvest}</td>
|
||||
</py:otherwise>
|
||||
</py:choose>
|
||||
{% endfor %}
|
||||
</table>
|
||||
{% else %}
|
||||
<div id="no-harvest-sources">{% trans %}No harvest sources defined yet.{% endtrans %}</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</article>
|
||||
{% endblock %}
|
||||
|
||||
<td>${h.render_datetime(source.created)}</td>
|
||||
</tr>
|
||||
</py:for>
|
||||
</table>
|
||||
</py:when>
|
||||
<py:otherwise>
|
||||
<div id="no-harvest-sources">No harvest sources defined yet.</div>
|
||||
</py:otherwise>
|
||||
</py:choose>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<xi:include href="layout.html" />
|
||||
</html>
|
||||
{% block sidebar %}{% endblock %}
|
||||
|
|
|
@ -1,24 +1,16 @@
|
|||
<html xmlns:py="http://genshi.edgewall.org/"
|
||||
xmlns:i18n="http://genshi.edgewall.org/i18n"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
py:strip="">
|
||||
{% extends "source/admin_base.html" %}
|
||||
|
||||
<py:def function="page_title">Edit - Harvest Source</py:def>
|
||||
<py:def function="page_heading">Edit harvest source </py:def>
|
||||
{% block subtitle %}{{ _('Edit harvest source') }}{% endblock %}
|
||||
|
||||
<py:def function="body_class">hide-sidebar</py:def>
|
||||
<py:def function="optional_head">
|
||||
<link rel="stylesheet" href="${g.site_url}/css/forms.css" type="text/css" media="screen, print" />
|
||||
<link type="text/css" rel="stylesheet" media="all" href="/ckanext/harvest/style.css" />
|
||||
</py:def>
|
||||
|
||||
<div py:match="content">
|
||||
<div class="harvest-content">
|
||||
|
||||
|
||||
${h.literal(c.form)}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<xi:include href="../layout.html" />
|
||||
</html>
|
||||
{% block primary_content_inner %}
|
||||
<div class="module-content">
|
||||
{% block form %}
|
||||
{% if c.form %}
|
||||
{# CKAN < 2.3 #}
|
||||
{{ c.form | safe }}
|
||||
{% else %}
|
||||
{{- h.snippet(form_snippet, c=c, **form_vars) -}}
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
|
@ -1,23 +1,40 @@
|
|||
<html xmlns:py="http://genshi.edgewall.org/"
|
||||
xmlns:i18n="http://genshi.edgewall.org/i18n"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
py:strip="">
|
||||
{% extends "source/admin_base.html" %}
|
||||
|
||||
<py:def function="page_title">New - Harvest Source</py:def>
|
||||
<py:def function="page_heading">New harvest source </py:def>
|
||||
{% block breadcrumb_content %}
|
||||
<li>{{ h.nav_named_link(_('Harvest Sources'), '{0}_search'.format(c.dataset_type)) }}</li>
|
||||
<li class="active">{{ h.nav_named_link(_('Create Harvest Source'), '{0}_new'.format(c.dataset_type)) }}</li>
|
||||
{% endblock %}
|
||||
|
||||
<py:def function="body_class">hide-sidebar</py:def>
|
||||
<py:def function="optional_head">
|
||||
<link rel="stylesheet" href="${g.site_url}/css/forms.css" type="text/css" media="screen, print" />
|
||||
<link type="text/css" rel="stylesheet" media="all" href="/ckanext/harvest/style.css" />
|
||||
</py:def>
|
||||
{% block actions_content %}
|
||||
{% endblock %}
|
||||
|
||||
<div py:match="content">
|
||||
<div class="harvest-content">
|
||||
{% block subtitle %}{{ _('Create harvest source') }}{% endblock %}
|
||||
|
||||
${h.literal(c.form)}
|
||||
|
||||
</div>
|
||||
{% block primary_content %}
|
||||
<section class="module">
|
||||
<div class="module-content">
|
||||
{% if c.form %}
|
||||
{# CKAN < 2.3 #}
|
||||
{{ c.form | safe }}
|
||||
{% else %}
|
||||
{{- h.snippet(form_snippet, c=c, **form_vars) -}}
|
||||
{% endif %}
|
||||
</div>
|
||||
<xi:include href="../layout.html" />
|
||||
</html>
|
||||
</section>
|
||||
{% endblock %}
|
||||
|
||||
{% block secondary_content %}
|
||||
<section class="module module-narrow">
|
||||
<h2 class="module-heading"><i class="icon-large icon-info-sign"></i> {{ _('Harvest sources') }}</h2>
|
||||
<div class="module-content">
|
||||
<p>
|
||||
{% trans %}
|
||||
Harvest sources allow importing remote metadata into this catalog.
|
||||
Remote sources can be other catalogs such as other CKAN instances, CSW
|
||||
servers or Web Accessible Folders (WAF) (depending on the actual
|
||||
harvesters enabled for this instance).
|
||||
{% endtrans %}
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
{% endblock %}
|
||||
|
|
|
@ -1,89 +1,118 @@
|
|||
<form id="source-new" class="ckan" method="post"
|
||||
py:attrs="{'class':'has-errors'} if errors else {}"
|
||||
xmlns:i18n="http://genshi.edgewall.org/i18n"
|
||||
xmlns:py="http://genshi.edgewall.org/"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
{% import 'macros/form.html' as form %}
|
||||
{% resource 'harvest-extra-field/main' %}
|
||||
|
||||
<div class="error-explanation" py:if="error_summary">
|
||||
<h2>Errors in form</h2>
|
||||
<p>The form contains invalid entries:</p>
|
||||
<ul>
|
||||
<li py:for="key, error in error_summary.items()">${"%s: %s" % (key, error)}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<form id="source-new" class="form-horizontal" method="post" >
|
||||
|
||||
<fieldset>
|
||||
<legend>Details</legend>
|
||||
<dl>
|
||||
<dt><label class="field_req" for="url">URL for source of metadata *</label></dt>
|
||||
<dd><input id="url" name="url" size="80" type="text" value="${data.get('url', '')}" /></dd>
|
||||
<dd class="field_error" py:if="errors.get('url', '')">${errors.get('url', '')}</dd>
|
||||
<dd class="instructions basic">This should include the <tt>http://</tt> part of the URL</dd>
|
||||
<dt><label class="field_req" for="type">Source Type *</label></dt>
|
||||
<dd>
|
||||
<select id="type" name="type">
|
||||
<py:for each="harvester in harvesters">
|
||||
<option value="${harvester.name}" py:attrs="{'selected': 'selected' if data.get('type', '') == harvester.name else None, 'data-config': harvester.show_config}" >${harvester.title}</option>
|
||||
</py:for>
|
||||
</select>
|
||||
</dd>
|
||||
<dd class="field_error" py:if="errors.get('type', '')">${errors.get('type', '')}</dd>
|
||||
<dd class="instructions basic">Which type of source does the URL above represent?
|
||||
<ul>
|
||||
<py:for each="harvester in harvesters">
|
||||
<li><span class="harvester-title">${harvester.title}</span>: ${harvester.description}</li>
|
||||
</py:for>
|
||||
</ul>
|
||||
</dd>
|
||||
{% block errors %}{{ form.errors(error_summary) }}{% endblock %}
|
||||
|
||||
<dt class="harvest-source-title"><label class="field_req" for="title">Title</label></dt>
|
||||
<dd class="harvest-source-title"><input id="title" name="title" size="80" type="text" value="${data.get('title', '')}" /></dd>
|
||||
<dd class="harvest-source-title field_error" py:if="errors.get('title', '')">${errors.get('title', '')}</dd>
|
||||
<dd class="harvest-source-title instructions basic">This will be shown as the datasets source.</dd>
|
||||
{% call form.input('url', id='field-url', label=_('URL'), value=data.url, error=errors.url, classes=['control-full', 'control-large']) %}
|
||||
<span class="info-block">
|
||||
{{ _('This should include the http:// part of the URL') }}
|
||||
</span>
|
||||
{% endcall %}
|
||||
|
||||
<dt><label class="field_opt" for="description">Description</label></dt>
|
||||
<dd><textarea id="description" name="description" cols="30" rows="2" style="height:75px">${data.get('description', '')}</textarea></dd>
|
||||
<dd class="instructions basic">You can add your own notes here about what the URL above represents to remind you later.</dd>
|
||||
{{ form.input('title', id='field-title', label=_('Title'), placeholder=_('eg. A descriptive title'), value=data.title, error=errors.title, classes=['control-full'], attrs={'data-module': 'slug-preview-target'}) }}
|
||||
|
||||
<dt py:if="c.publisher_auth"><label class="field_opt" for="groups__${len(data.get('groups', []))}__id">Publisher</label></dt>
|
||||
<dd py:if="c.publisher_auth and c.groups">
|
||||
<select id="publisher_id" name="publisher_id">
|
||||
<py:for each="group in c.groups">
|
||||
<option value="${group['id']}" py:attrs="{'selected': 'selected' if group['id'] == data.get('publisher_id',None) else None}">${group['title']}</option>
|
||||
</py:for>
|
||||
</select>
|
||||
</dd>
|
||||
<dd py:if="c.publisher_auth and not c.groups"><em>Cannot add any publishers.</em></dd>
|
||||
{% set prefix = 'harvest' %}
|
||||
{% set domain = h.url_for('{0}_read'.format(c.dataset_type), id='', qualified=true) %}
|
||||
{% set domain = domain|replace("http://", "")|replace("https://", "") %}
|
||||
{% set attrs = {'data-module': 'slug-preview-slug', 'data-module-prefix': domain, 'data-module-placeholder': '<harvest-source>'} %}
|
||||
|
||||
{{ form.prepend('name', id='field-name', label=_('Name'), prepend=prefix, placeholder=_('eg. my-dataset'), value=data.name, error=errors.name, attrs=attrs) }}
|
||||
|
||||
<dt class="harvest-source-config"><label class="field_opt" for="config">Configuration</label></dt>
|
||||
<dd class="harvest-source-config"><textarea id="config" name="config" cols="30" rows="2" style="height:75px">${data.get('config', '')}</textarea></dd>
|
||||
{{ form.markdown('notes', id='field-notes', label=_('Description'), value=data.notes, error=errors.notes) }}
|
||||
|
||||
<dt><label class="field_opt" for="active">State</label></dt>
|
||||
<dd>
|
||||
<select id="active" name="active">
|
||||
<option py:attrs="{'selected': 'selected' if data.get('active') or not 'active' in data else None}" value="True">active</option>
|
||||
<option py:attrs="{'selected': 'selected' if 'active' in data and not data.get('active') else None}" value="False">withdrawn</option>
|
||||
</select>
|
||||
<py:if test="data.get('active') or not 'active' in data">
|
||||
<div>This harvest source is <span class="source-state-active">Active</span></div>
|
||||
</py:if>
|
||||
<py:if test="'active' in data and not data.get('active')">
|
||||
<div>This harvest source is <span class="source-state-inactive">Withdrawn</span></div>
|
||||
</py:if>
|
||||
<div class="harvest-types control-group">
|
||||
<label class="control-label">Source type</label>
|
||||
<div class="controls">
|
||||
{% for harvester in h.harvesters_info() %}
|
||||
{% set checked = False %}
|
||||
{# select first option if nothing in data #}
|
||||
{% if data.source_type == harvester['name'] or (not data.source_type and loop.first) %}
|
||||
{% set checked = True %}
|
||||
{% endif %}
|
||||
<label class="radio">
|
||||
<input type="radio" name="source_type" value="{{ harvester['name'] }}" {{ "checked " if checked }} data-module="harvest-type-change">
|
||||
{{ harvester['title'] }}
|
||||
<i class="icon-question-sign muted" title="{{ harvester['description'] }}" data-toggle="tooltip"></i>
|
||||
</label>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ form.select('frequency', id='field-frequency', label=_('Update frequency'), options=h.harvest_frequencies(), selected=data.frequency, error=errors.frequency) }}
|
||||
|
||||
{% block extra_config %}
|
||||
{{ form.textarea('config', id='field-config', label=_('Configuration'), value=data.config, error=errors.config) }}
|
||||
{% endblock extra_config %}
|
||||
|
||||
{# if we have a default group then this wants remembering #}
|
||||
{% if data.group_id %}
|
||||
<input type="hidden" name="groups__0__id" value="{{ data.group_id }}" />
|
||||
{% endif %}
|
||||
|
||||
{% set dataset_is_draft = data.get('state', 'draft').startswith('draft') or data.get('state', 'none') == 'none' %}
|
||||
{% set dataset_has_organization = data.owner_org or data.group_id %}
|
||||
{% set organizations_available = h.organizations_available('create_dataset') %}
|
||||
{% set user_is_sysadmin = h.check_access('sysadmin') %}
|
||||
{% set show_organizations_selector = organizations_available and (user_is_sysadmin or dataset_is_draft) %}
|
||||
|
||||
{% if show_organizations_selector %}
|
||||
{% set existing_org = data.owner_org %}
|
||||
<div class="control-group">
|
||||
<label for="field-organizations" class="control-label">{{ _('Organization') }}</label>
|
||||
<div class="controls">
|
||||
<select id="field-organizations" name="owner_org" data-module="autocomplete">
|
||||
<option value="" {% if not selected_org and data.id %} selected="selected" {% endif %}>{{ _('No organization') }}</option>
|
||||
{% for organization in organizations_available %}
|
||||
{# get out first org from users list only if there is not an existing org #}
|
||||
{% set selected_org = (existing_org and existing_org == organization.id) or (not existing_org and not data.id and organization.id == organizations_available[0].id) %}
|
||||
<option value="{{ organization.id }}" {% if selected_org %} selected="selected" {% endif %}>{{ organization.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if data.get('id', None) and h.check_access('harvest_source_delete', {'id': data.id}) and data.get('state', 'none') == 'deleted' %}
|
||||
<div class="control-group">
|
||||
<label for="field-state" class="control-label">{{ _('State') }}</label>
|
||||
<div class="controls">
|
||||
<select id="field-state" name="state">
|
||||
<option value="active" {% if data.get('state', 'none') == 'active' %} selected="selected" {% endif %}>{{ _('Active') }}</option>
|
||||
<option value="deleted" {% if data.get('state', 'none') == 'deleted' %} selected="selected" {% endif %}>{{ _('Deleted') }}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<p class="form-actions">
|
||||
{% block delete_button %}
|
||||
{% if data.get('id', None) and h.check_access('harvest_source_delete', {'id': data.id}) and not data.get('state', 'none') == 'deleted' %}
|
||||
{% set locale_delete = h.dump_json({'content': _('This will flag the source as deleted but keep all its datasets and previous jobs. Are you sure you want to delete this harvest source?')}) %}
|
||||
{% set locale_clear = h.dump_json({'content': _('Warning: Apart from deleting this source, this command will remove all its datasets, as well as all previous job reports. Are you sure you want to continue?')}) %}
|
||||
<div class="dropdown btn-group">
|
||||
<a href="#" class="btn btn-danger dropdown-toggle" data-toggle="dropdown">
|
||||
{{ _('Delete') }}
|
||||
<span class="caret"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="{% url_for 'harvest_delete', id=data.name %}" data-module="confirm-action" data-module-i18n="{{ locale_delete }}">
|
||||
{{ _('Delete source') }}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="{% url_for 'harvest_delete', id=data.name %}?clear=True" data-module="confirm-action" data-module-i18n="{{ locale_clear }}">
|
||||
{{ _('Delete and clear source') }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
<input id="save" name="save" value="Save" type="submit" class="btn btn-primary pull-right">
|
||||
</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
<input id="save" name="save" value="Save" type="submit" class="btn"/> or <a href="/harvest">Return to the harvest sources list</a>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
$("#type").change(function(){
|
||||
var show_config = ($("#type option:selected").attr("data-config") == "True");
|
||||
if (!show_config) $("#config").val("");
|
||||
$("#config").attr("disabled", !show_config);
|
||||
});
|
||||
$("#type").trigger("change");
|
||||
});
|
||||
</script>
|
||||
</form>
|
||||
|
|
|
@ -1,149 +1,8 @@
|
|||
<html xmlns:py="http://genshi.edgewall.org/"
|
||||
xmlns:i18n="http://genshi.edgewall.org/i18n"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
py:strip="">
|
||||
{% extends "source/read_base.html" %}
|
||||
|
||||
<py:def function="page_title">Harvest Source Details</py:def>
|
||||
<py:def function="page_heading">Harvest Source Details</py:def>
|
||||
|
||||
<py:def function="optional_head">
|
||||
<link type="text/css" rel="stylesheet" media="all" href="/ckanext/harvest/style.css" />
|
||||
</py:def>
|
||||
|
||||
<div py:match="content">
|
||||
<div class="harvest-content">
|
||||
<py:if test="c.source">
|
||||
<div id="harvest-source-actions">
|
||||
<img src="/ckanext/harvest/images/icons/source_edit.png" alt="Edit" /><a href="/harvest/edit/${c.source.id}">Edit source</a> |
|
||||
<img src="/ckanext/harvest/images/icons/source_refresh.png" alt="Refresh" /><a href="/harvest/refresh/${c.source.id}">Refresh source</a> |
|
||||
<a href="/harvest">Sources list</a>
|
||||
|
||||
</div>
|
||||
<div py:if="not c.source.active" class="alert alert-block">NB: This Harvest Source is Withdrawn. Therefore the Gemini XML will not be harvested again. However, any metadata that was previously harvested, remains in the catalogue.</div>
|
||||
<table id="harvest-source-details" class="table table-bordered table-condensed">
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<td>${c.source.id}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>URL</th>
|
||||
<td>${c.source.url}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Type</th>
|
||||
<td>${c.source.type}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Withdrawn</th>
|
||||
<td>${not c.source.active}</td>
|
||||
</tr>
|
||||
<tr py:if="c.source.title">
|
||||
<th>Title</th>
|
||||
<td>${c.source.title}</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>Description</th>
|
||||
<td>${c.source.description}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Configuration</th>
|
||||
<py:if test="c.source.config">
|
||||
<td>${c.source.config}</td>
|
||||
</py:if>
|
||||
<py:if test="not c.source.config">
|
||||
<td>-</td>
|
||||
</py:if>
|
||||
</tr>
|
||||
<tr py:if="c.publisher_auth">
|
||||
<th>User</th>
|
||||
<td>${c.source.user_id}</td>
|
||||
</tr>
|
||||
<tr py:if="c.publisher_auth">
|
||||
<th>Publisher</th>
|
||||
<py:if test="c.source.publisher_title">
|
||||
<td>${c.source.publisher_title}</td>
|
||||
</py:if>
|
||||
<py:if test="not c.source.publisher_title">
|
||||
<td>${c.source.publisher_id}</td>
|
||||
</py:if>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Created</th>
|
||||
<td>${c.source.created}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Total jobs</th>
|
||||
<td>${c.source.status.job_count}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Status</th>
|
||||
<td>
|
||||
<a name="errors"/>Last Harvest Errors: ${c.source.status.last_harvest_statistics.errors}<br/>
|
||||
<py:choose>
|
||||
<py:when test="len(c.source.status.last_harvest_errors.gather)>0">
|
||||
<i>Gathering errors</i>
|
||||
<ul>
|
||||
<li py:for="error in c.source.status.last_harvest_errors.gather">
|
||||
<?python
|
||||
lines = error.split('\n')
|
||||
?>
|
||||
<div py:for="line in lines">${line}</div>
|
||||
</li>
|
||||
</ul>
|
||||
</py:when>
|
||||
</py:choose>
|
||||
<py:choose>
|
||||
<py:when test="len(c.source.status.last_harvest_errors.object)>0">
|
||||
<i>Object errors</i>
|
||||
<ul>
|
||||
<li py:for="error in c.source.status.last_harvest_errors.object">
|
||||
<div>GUID <a href="${g.site_url}/harvest/object/${error.object_id}">${error.object_guid}</a></div>
|
||||
<?python
|
||||
lines = error['message'].split('\n')
|
||||
?>
|
||||
<div py:for="line in lines">${line}</div>
|
||||
</li>
|
||||
</ul>
|
||||
</py:when>
|
||||
</py:choose>
|
||||
|
||||
Last Harvest Added: ${c.source.status.last_harvest_statistics.added}<br/>
|
||||
Last Harvest Updated: ${c.source.status.last_harvest_statistics.updated}<br/>
|
||||
Last Harvest: ${c.source.status.last_harvest_request} <br/>
|
||||
Next Harvest: ${c.source.status.next_harvest}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Total Errors</th>
|
||||
<td>${c.source.status.overall_statistics.errors}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Total Datasets</th>
|
||||
<td>${c.source.status.overall_statistics.added}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Datasets</th>
|
||||
<td>
|
||||
<a name="datasets"/>
|
||||
<div>There could be a 10 minutes delay before these datasets (or changes to them) appear on
|
||||
the site or on search results.</div>
|
||||
|
||||
<p i18n:msg="item_count">There are <strong>${c.page.item_count}</strong> datasets.</p>
|
||||
|
||||
${c.page.pager()}
|
||||
<py:for each="item in c.page.items">
|
||||
<div>
|
||||
<a href="/dataset/${item}">${item}</a>
|
||||
</div>
|
||||
</py:for>
|
||||
${c.page.pager()}
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</py:if>
|
||||
</div>
|
||||
</div>
|
||||
<xi:include href="../layout.html" />
|
||||
</html>
|
||||
{% block primary_content_inner %}
|
||||
<section class="module-content">
|
||||
<h1 class="hide-heading">{{ _('Datasets') }}</h1>
|
||||
{{ h.package_list_for_source(source.id) }}
|
||||
</section>
|
||||
{% endblock %}
|
||||
|
|
|
@ -1,91 +0,0 @@
|
|||
{% extends "page.html" %}
|
||||
|
||||
{% block title %}{{ _('Harvesting Sources') }} - {{ super() }}{% endblock %}
|
||||
|
||||
{% block breadcrumb_content %}
|
||||
{% endblock %}
|
||||
|
||||
{% block styles %}
|
||||
{{ super() }}
|
||||
<link type="text/css" rel="stylesheet" media="all" href="/ckanext/harvest/style.css" />
|
||||
{% endblock %}
|
||||
|
||||
{% block scripts %}
|
||||
{{ super() }}
|
||||
<script>$("#show-inactive-sources").click(function(){$("#harvest-sources .inactive").toggle()});</script>
|
||||
{% endblock %}
|
||||
|
||||
{% block primary %}
|
||||
<article class="module">
|
||||
<div class="module-content">
|
||||
<h1>{% trans %}Harvesting Sources{% endtrans %}</h1>
|
||||
{% if c.status %}
|
||||
<div class="status">
|
||||
<h3>{{ _('Status') }}:</h3>
|
||||
{{ h.literal(c.status) }}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div id="new-harvest-source"><a href="harvest/new">{% trans %}Add a harvesting source{% endtrans %}</a></div>
|
||||
|
||||
{% if c.sources %}
|
||||
<div id="show-inactive-sources-content">
|
||||
<label for="show-inactive-sources">Show inactive sources</label>
|
||||
<input type="checkbox" id="show-inactive-sources" />
|
||||
</div>
|
||||
|
||||
<table id="harvest-sources" class="table table-bordered table-condensed ${'publishers' if c.publisher_auth else ''}" >
|
||||
<tr>
|
||||
<th class="action">{{ _('View') }}</th>
|
||||
<th class="action">{{ _('Edit') }}</th>
|
||||
<th class="action">{{ _('Refresh'}}</th>
|
||||
<th class="url">URL</th>
|
||||
{# TRANSLATORS: Appears in harvest source table for the type of harvester #}
|
||||
<th>{{ _('Type')}}</th>
|
||||
{# TRANSLATORS: Appears in harvest source table 'is Active' #}
|
||||
<th>{{ _('Active')}}</th>
|
||||
<th>{{ _('Statistics') }}</th>
|
||||
{# TRANSLATORS: Appears in harvest source table 'date of next harvest #}
|
||||
<th>{{ _('Next Harvest') }}</th>
|
||||
{# TRANSLATORS: Appears in harvest source table date created #}
|
||||
<th>{{ _('Created') }}</th>
|
||||
</tr>
|
||||
{% set old_publisher = None %}
|
||||
{% for source in c.sources %}
|
||||
{% if c.publisher_auth and old_publisher != source['publisher_id'] %}
|
||||
<tr class="publisher">
|
||||
{% if source.get('publisher_title') %}
|
||||
<td colspan="9">{{ source['publisher_title'] }}</td>
|
||||
{% else %}
|
||||
<td colspan="9">{{ source['publisher_id'] }}</td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% endif %}
|
||||
{% set old_publisher = source['publisher_id'] %}
|
||||
<tr class="{{ 'active' if source.active else 'inactive' }}">
|
||||
<td class="action"><a href="harvest/{{ source.id }}"><img src="ckanext/harvest/images/icons/source_view.png" alt="View" title="View" /></a></td>
|
||||
<td class="action"><a href="harvest/edit/{{ source.id }}"><img src="ckanext/harvest/images/icons/source_edit.png" alt="Edit" title="Edit" /></a></td>
|
||||
<td class="action"><a href="harvest/refresh/{{ source.id }}"><img src="ckanext/harvest/images/icons/source_refresh.png" alt="Refresh" title="Refresh" /></a></td>
|
||||
<td title="{{ source.url }}">{{ source.url | truncate(50) }}</td>
|
||||
<td>{{ source.type }}</td>
|
||||
<td class="state">{{ source.active }}</td>
|
||||
{% if 'msg' in source.status %}
|
||||
<td>{{ source.status.msg }}</td>
|
||||
<td>{{ source.status.msg }}</td>
|
||||
{% else %}
|
||||
<td>Datasets: <a href="harvest/{{ source.id }}#datasets">{{ source.status.overall_statistics.added }}</a><br/>
|
||||
Last errors: <a href="harvest/{{ source.id }}#errors">{{ source.status.last_harvest_statistics.errors }}</a></td>
|
||||
<td>{{ source.status.next_harvest }}</td>
|
||||
{% endif %}
|
||||
<td>{{ h.render_datetime(source.created) }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
{% else %}
|
||||
<div id="no-harvest-sources">{% trans %}No harvest sources defined yet.{% endtrans %}</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</article>
|
||||
{% endblock %}
|
||||
|
||||
{% block sidebar %}{% endblock %}
|
|
@ -1,16 +0,0 @@
|
|||
{% extends "source/admin_base.html" %}
|
||||
|
||||
{% block subtitle %}{{ _('Edit harvest source') }}{% endblock %}
|
||||
|
||||
{% block primary_content_inner %}
|
||||
<div class="module-content">
|
||||
{% block form %}
|
||||
{% if c.form %}
|
||||
{# CKAN < 2.3 #}
|
||||
{{ c.form | safe }}
|
||||
{% else %}
|
||||
{{- h.snippet(form_snippet, c=c, **form_vars) -}}
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -1,42 +0,0 @@
|
|||
{% extends "source/admin_base.html" %}
|
||||
|
||||
{% block breadcrumb_content %}
|
||||
<li>{{ h.nav_named_link(_('Harvest Sources'), '{0}_search'.format(c.dataset_type)) }}</li>
|
||||
<li class="active">{{ h.nav_named_link(_('Create Harvest Source'), '{0}_new'.format(c.dataset_type)) }}</li>
|
||||
{% endblock %}
|
||||
|
||||
{% block actions_content %}
|
||||
{% endblock %}
|
||||
|
||||
{% block subtitle %}{{ _('Create harvest source') }}{% endblock %}
|
||||
|
||||
{% block primary_content %}
|
||||
<section class="module">
|
||||
<div class="module-content">
|
||||
{% block form %}
|
||||
{% if c.form %}
|
||||
{# CKAN < 2.3 #}
|
||||
{{ c.form | safe }}
|
||||
{% else %}
|
||||
{{- h.snippet(form_snippet, c=c, **form_vars) -}}
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
</div>
|
||||
</section>
|
||||
{% endblock %}
|
||||
|
||||
{% block secondary_content %}
|
||||
<section class="module module-narrow">
|
||||
<h2 class="module-heading"><i class="icon-large icon-info-sign"></i> {{ _('Harvest sources') }}</h2>
|
||||
<div class="module-content">
|
||||
<p>
|
||||
{% trans %}
|
||||
Harvest sources allow importing remote metadata into this catalog.
|
||||
Remote sources can be other catalogs such as other CKAN instances, CSW
|
||||
servers or Web Accessible Folders (WAF) (depending on the actual
|
||||
harvesters enabled for this instance).
|
||||
{% endtrans %}
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
{% endblock %}
|
|
@ -1,118 +0,0 @@
|
|||
{% import 'macros/form.html' as form %}
|
||||
{% resource 'harvest-extra-field/main' %}
|
||||
|
||||
<form id="source-new" class="form-horizontal" method="post" >
|
||||
|
||||
{% block errors %}{{ form.errors(error_summary) }}{% endblock %}
|
||||
|
||||
{% call form.input('url', id='field-url', label=_('URL'), value=data.url, error=errors.url, classes=['control-full', 'control-large']) %}
|
||||
<span class="info-block">
|
||||
{{ _('This should include the http:// part of the URL') }}
|
||||
</span>
|
||||
{% endcall %}
|
||||
|
||||
{{ form.input('title', id='field-title', label=_('Title'), placeholder=_('eg. A descriptive title'), value=data.title, error=errors.title, classes=['control-full'], attrs={'data-module': 'slug-preview-target'}) }}
|
||||
|
||||
{% set prefix = 'harvest' %}
|
||||
{% set domain = h.url_for('{0}_read'.format(c.dataset_type), id='', qualified=true) %}
|
||||
{% set domain = domain|replace("http://", "")|replace("https://", "") %}
|
||||
{% set attrs = {'data-module': 'slug-preview-slug', 'data-module-prefix': domain, 'data-module-placeholder': '<harvest-source>'} %}
|
||||
|
||||
{{ form.prepend('name', id='field-name', label=_('Name'), prepend=prefix, placeholder=_('eg. my-dataset'), value=data.name, error=errors.name, attrs=attrs) }}
|
||||
|
||||
{{ form.markdown('notes', id='field-notes', label=_('Description'), value=data.notes, error=errors.notes) }}
|
||||
|
||||
<div class="harvest-types control-group">
|
||||
<label class="control-label">Source type</label>
|
||||
<div class="controls">
|
||||
{% for harvester in h.harvesters_info() %}
|
||||
{% set checked = False %}
|
||||
{# select first option if nothing in data #}
|
||||
{% if data.source_type == harvester['name'] or (not data.source_type and loop.first) %}
|
||||
{% set checked = True %}
|
||||
{% endif %}
|
||||
<label class="radio">
|
||||
<input type="radio" name="source_type" value="{{ harvester['name'] }}" {{ "checked " if checked }} data-module="harvest-type-change">
|
||||
{{ harvester['title'] }}
|
||||
<i class="icon-question-sign muted" title="{{ harvester['description'] }}" data-toggle="tooltip"></i>
|
||||
</label>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ form.select('frequency', id='field-frequency', label=_('Update frequency'), options=h.harvest_frequencies(), selected=data.frequency, error=errors.frequency) }}
|
||||
|
||||
{% block extra_config %}
|
||||
{{ form.textarea('config', id='field-config', label=_('Configuration'), value=data.config, error=errors.config) }}
|
||||
{% endblock extra_config %}
|
||||
|
||||
{# if we have a default group then this wants remembering #}
|
||||
{% if data.group_id %}
|
||||
<input type="hidden" name="groups__0__id" value="{{ data.group_id }}" />
|
||||
{% endif %}
|
||||
|
||||
{% set dataset_is_draft = data.get('state', 'draft').startswith('draft') or data.get('state', 'none') == 'none' %}
|
||||
{% set dataset_has_organization = data.owner_org or data.group_id %}
|
||||
{% set organizations_available = h.organizations_available('create_dataset') %}
|
||||
{% set user_is_sysadmin = h.check_access('sysadmin') %}
|
||||
{% set show_organizations_selector = organizations_available and (user_is_sysadmin or dataset_is_draft) %}
|
||||
|
||||
{% if show_organizations_selector %}
|
||||
{% set existing_org = data.owner_org %}
|
||||
<div class="control-group">
|
||||
<label for="field-organizations" class="control-label">{{ _('Organization') }}</label>
|
||||
<div class="controls">
|
||||
<select id="field-organizations" name="owner_org" data-module="autocomplete">
|
||||
<option value="" {% if not selected_org and data.id %} selected="selected" {% endif %}>{{ _('No organization') }}</option>
|
||||
{% for organization in organizations_available %}
|
||||
{# get out first org from users list only if there is not an existing org #}
|
||||
{% set selected_org = (existing_org and existing_org == organization.id) or (not existing_org and not data.id and organization.id == organizations_available[0].id) %}
|
||||
<option value="{{ organization.id }}" {% if selected_org %} selected="selected" {% endif %}>{{ organization.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if data.get('id', None) and h.check_access('harvest_source_delete', {'id': data.id}) and data.get('state', 'none') == 'deleted' %}
|
||||
<div class="control-group">
|
||||
<label for="field-state" class="control-label">{{ _('State') }}</label>
|
||||
<div class="controls">
|
||||
<select id="field-state" name="state">
|
||||
<option value="active" {% if data.get('state', 'none') == 'active' %} selected="selected" {% endif %}>{{ _('Active') }}</option>
|
||||
<option value="deleted" {% if data.get('state', 'none') == 'deleted' %} selected="selected" {% endif %}>{{ _('Deleted') }}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<p class="form-actions">
|
||||
{% block delete_button %}
|
||||
{% if data.get('id', None) and h.check_access('harvest_source_delete', {'id': data.id}) and not data.get('state', 'none') == 'deleted' %}
|
||||
{% set locale_delete = h.dump_json({'content': _('This will flag the source as deleted but keep all its datasets and previous jobs. Are you sure you want to delete this harvest source?')}) %}
|
||||
{% set locale_clear = h.dump_json({'content': _('Warning: Apart from deleting this source, this command will remove all its datasets, as well as all previous job reports. Are you sure you want to continue?')}) %}
|
||||
<div class="dropdown btn-group">
|
||||
<a href="#" class="btn btn-danger dropdown-toggle" data-toggle="dropdown">
|
||||
{{ _('Delete') }}
|
||||
<span class="caret"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="{% url_for 'harvest_delete', id=data.name %}" data-module="confirm-action" data-module-i18n="{{ locale_delete }}">
|
||||
{{ _('Delete source') }}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="{% url_for 'harvest_delete', id=data.name %}?clear=True" data-module="confirm-action" data-module-i18n="{{ locale_clear }}">
|
||||
{{ _('Delete and clear source') }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
<input id="save" name="save" value="Save" type="submit" class="btn btn-primary pull-right">
|
||||
</p>
|
||||
|
||||
</form>
|
|
@ -1,8 +0,0 @@
|
|||
{% extends "source/read_base.html" %}
|
||||
|
||||
{% block primary_content_inner %}
|
||||
<section class="module-content">
|
||||
<h1 class="hide-heading">{{ _('Datasets') }}</h1>
|
||||
{{ h.package_list_for_source(source.id) }}
|
||||
</section>
|
||||
{% endblock %}
|
2
setup.py
2
setup.py
|
@ -46,7 +46,7 @@ setup(
|
|||
'ckanext': [
|
||||
('**.py', 'python', None),
|
||||
('**.js', 'javascript', None),
|
||||
('**/templates_new/**.html', 'ckan', None),
|
||||
('**/templates/**.html', 'ckan', None),
|
||||
],
|
||||
}
|
||||
)
|
||||
|
|
|
@ -17,7 +17,7 @@ use = config:../ckan/test-core.ini
|
|||
# run fast.
|
||||
ckan.plugins = harvest ckan_harvester test_harvester test_action_harvester
|
||||
ckan.harvest.mq.type = redis
|
||||
ckan.legacy_templates = no
|
||||
ckan.legacy_templates = false
|
||||
# NB: other test configuration should go in test-core.ini, which is
|
||||
# what the postgres tests use.
|
||||
|
||||
|
|
Loading…
Reference in New Issue