From bbb8649a55faf00006424e1f9da57e5eea1eebc0 Mon Sep 17 00:00:00 2001 From: amercader Date: Thu, 31 Oct 2024 13:23:14 +0100 Subject: [PATCH] Add tab for harvest sources in sysadmin page --- README.rst | 5 +++++ ckanext/harvest/templates/admin/base.html | 6 ++++++ docs/admin-tab.png | Bin 0 -> 15681 bytes 3 files changed, 11 insertions(+) create mode 100644 ckanext/harvest/templates/admin/base.html create mode 100644 docs/admin-tab.png diff --git a/README.rst b/README.rst index a454a77d..d3508ac0 100644 --- a/README.rst +++ b/README.rst @@ -104,6 +104,11 @@ After installation, the harvest source listing should be available under /harves http://localhost/harvest +There is a "Harvest" tab in the sysadmin pages as well: + +![Harvest admin tab](https://github.com/ckan/ckanext-harvest/blob/master/docs/admin-tab.png?raw=true) + + Database logger configuration(optional) ======================================= diff --git a/ckanext/harvest/templates/admin/base.html b/ckanext/harvest/templates/admin/base.html new file mode 100644 index 00000000..7da68bc0 --- /dev/null +++ b/ckanext/harvest/templates/admin/base.html @@ -0,0 +1,6 @@ +{% ckan_extends %} + +{% block content_primary_nav %} + {{ super() }} + {{ h.build_nav_icon('harvest.search', _('Harvest'), icon='download') }} +{% endblock %} diff --git a/docs/admin-tab.png b/docs/admin-tab.png new file mode 100644 index 0000000000000000000000000000000000000000..b975e097e0952e332a7d22e1d231d091ece5a73b GIT binary patch literal 15681 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 literal 0 HcmV?d00001