From 73b6f99eebd7b55031712323f8a6e7ea8ee4b64f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Jul 2022 20:40:44 +0000 Subject: [PATCH 1/5] build(deps): Bump django-celery-results in /requirements Bumps [django-celery-results](https://github.com/celery/django-celery-results) from 2.3.1 to 2.4.0. - [Release notes](https://github.com/celery/django-celery-results/releases) - [Changelog](https://github.com/celery/django-celery-results/blob/master/Changelog) - [Commits](https://github.com/celery/django-celery-results/compare/v2.3.1...v2.4.0) --- updated-dependencies: - dependency-name: django-celery-results dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- requirements/local.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/local.txt b/requirements/local.txt index cdad86b14..62a1329ff 100644 --- a/requirements/local.txt +++ b/requirements/local.txt @@ -44,4 +44,4 @@ pyopenssl # for running dev server under https Fabric3==1.14.post1 # https://github.com/mathiasertl/fabric celery==5.2.6 -django-celery-results==2.3.1 +django-celery-results==2.4.0 From 0013e58513b9644601f23337474fb3fa75a3fce0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 Feb 2023 18:07:20 +0000 Subject: [PATCH 2/5] build(deps): Bump terser from 5.13.1 to 5.16.4 Bumps [terser](https://github.com/terser/terser) from 5.13.1 to 5.16.4. - [Release notes](https://github.com/terser/terser/releases) - [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md) - [Commits](https://github.com/terser/terser/compare/v5.13.1...v5.16.4) --- updated-dependencies: - dependency-name: terser dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 210 +++++++++++++++++++++++++--------------------- 1 file changed, 115 insertions(+), 95 deletions(-) diff --git a/package-lock.json b/package-lock.json index c82a49835..95fdb3a8b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,6 +44,64 @@ "node": ">=10.0.0" } }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, "node_modules/@types/eslint": { "version": "8.4.1", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", @@ -1073,12 +1131,6 @@ "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", "dev": true }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", - "dev": true - }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -1588,14 +1640,14 @@ } }, "node_modules/terser": { - "version": "5.13.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz", - "integrity": "sha512-hn4WKOfwnwbYfe48NgrQjqNOH9jzLqRcIfbYytOXCOv46LBfWr9bDS17MQqOi+BWGD0sJK3Sj5NC/gJjiojaoA==", + "version": "5.16.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.4.tgz", + "integrity": "sha512-5yEGuZ3DZradbogeYQ1NaGz7rXVBDWujWlx1PT8efXO6Txn+eWbfKqB2bTDVmFXmePFkoLU6XI8UektMIEA0ug==", "dev": true, "dependencies": { + "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", "commander": "^2.20.0", - "source-map": "~0.8.0-beta.0", "source-map-support": "~0.5.20" }, "bin": { @@ -1639,27 +1691,6 @@ } } }, - "node_modules/terser/node_modules/source-map": { - "version": "0.8.0-beta.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", - "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", - "dev": true, - "dependencies": { - "whatwg-url": "^7.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, "node_modules/uikit": { "version": "3.14.0", "resolved": "https://registry.npmjs.org/uikit/-/uikit-3.14.0.tgz", @@ -1711,12 +1742,6 @@ "node": ">=10.13.0" } }, - "node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, "node_modules/webpack": { "version": "5.72.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.72.0.tgz", @@ -1893,17 +1918,6 @@ "node": ">=10.13.0" } }, - "node_modules/whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dev": true, - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, "node_modules/wildcard": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", @@ -1933,6 +1947,55 @@ "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", "dev": true }, + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, "@types/eslint": { "version": "8.4.1", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", @@ -2778,12 +2841,6 @@ "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", "dev": true }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", - "dev": true - }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -3165,26 +3222,15 @@ "dev": true }, "terser": { - "version": "5.13.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.13.1.tgz", - "integrity": "sha512-hn4WKOfwnwbYfe48NgrQjqNOH9jzLqRcIfbYytOXCOv46LBfWr9bDS17MQqOi+BWGD0sJK3Sj5NC/gJjiojaoA==", + "version": "5.16.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.4.tgz", + "integrity": "sha512-5yEGuZ3DZradbogeYQ1NaGz7rXVBDWujWlx1PT8efXO6Txn+eWbfKqB2bTDVmFXmePFkoLU6XI8UektMIEA0ug==", "dev": true, "requires": { + "@jridgewell/source-map": "^0.3.2", "acorn": "^8.5.0", "commander": "^2.20.0", - "source-map": "~0.8.0-beta.0", "source-map-support": "~0.5.20" - }, - "dependencies": { - "source-map": { - "version": "0.8.0-beta.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", - "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", - "dev": true, - "requires": { - "whatwg-url": "^7.0.0" - } - } } }, "terser-webpack-plugin": { @@ -3200,15 +3246,6 @@ "terser": "^5.7.2" } }, - "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, "uikit": { "version": "3.14.0", "resolved": "https://registry.npmjs.org/uikit/-/uikit-3.14.0.tgz", @@ -3257,12 +3294,6 @@ "graceful-fs": "^4.1.2" } }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, "webpack": { "version": "5.72.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.72.0.tgz", @@ -3384,17 +3415,6 @@ "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", "dev": true }, - "whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, "wildcard": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", From bb2377aae3ca3927c5a911260555c7ae333e751b Mon Sep 17 00:00:00 2001 From: Jay Varner Date: Wed, 25 Mar 2026 14:20:28 -0400 Subject: [PATCH 3/5] Add Matomo to local settings. Bump version --- apps/readux/__init__.py | 2 +- apps/readux/context_processors.py | 15 +- apps/templates/base.html | 252 ++++++++++++++++-------------- config/settings/base.py | 1 + 4 files changed, 146 insertions(+), 124 deletions(-) diff --git a/apps/readux/__init__.py b/apps/readux/__init__.py index 82190396f..fd24f3852 100644 --- a/apps/readux/__init__.py +++ b/apps/readux/__init__.py @@ -1 +1 @@ -__version__ = '2.3.0' +__version__ = "3.0" diff --git a/apps/readux/context_processors.py b/apps/readux/context_processors.py index a9c831ab2..2b2a3ef5f 100644 --- a/apps/readux/context_processors.py +++ b/apps/readux/context_processors.py @@ -1,4 +1,4 @@ -""" Global template contexts. """ +"""Global template contexts.""" from os import environ from git import Repo @@ -13,7 +13,7 @@ def current_version(_=None): { "DJANGO_ENV": "dev", - "APP_VERSION": "Readux 2.3.0", + "APP_VERSION": "Readux 3.0", "BRANCH": "develop", "COMMIT": "deeb939f41c001658d9f3ce82d6fa6add6158d5c", "COMMIT_DATE": "01/13/2025, 13:13:18" @@ -70,3 +70,14 @@ def site_meta(_): "META_KEYWORDS": getattr(settings, "META_KEYWORDS", ""), "META_DESCRIPTION": getattr(settings, "META_DESCRIPTION", ""), } + + +def matomo_id(_): + """Expose Matomo ID for analytics. + Args: + _ (WSGIRequest): Current request. Not used. + + Returns: + dict: Dict with key 'MATOMO_ID' for use in analytics script tag. + """ + return {"MATOMO_ID": getattr(settings, "MATOMO_ID", "")} diff --git a/apps/templates/base.html b/apps/templates/base.html index 8810db8c5..65cb21f36 100644 --- a/apps/templates/base.html +++ b/apps/templates/base.html @@ -1,163 +1,173 @@ {% load static i18n %} - -{% load menu_tags %} -{% load sass_tags %} -{% load wagtailcore_tags %} -{% wagtail_site as current_site %} + +{% load menu_tags %} {% load sass_tags %} {% load wagtailcore_tags %} {% +wagtail_site as current_site %} - {% block title %} - {{ request.site.name }} - {% endblock title %} + {% block title %} {{ request.site.name }} {% endblock title %} {% block extra_head %} - - + + {% endblock extra_head %} {% if collection.label %} - - - - - - - + + + + + + + {% elif volume.label %} - - - - - - - - - - - - {% for lang in volume.languages.all %} - - {% endfor %} - + + + + + + + + + + + + {% for lang in volume.languages.all %} + + {% endfor %} + - {% for page in volume.canvas_set.all %} - {% if forloop.first %} - - - - {% if "/cantaloupe/iiif/2" in page.social_media %} - - {% else %} - - {% endif %} - - {% endif %} - {% endfor %} - {% elif page.title %} - - - - - + {% for page in volume.canvas_set.all %} {% if forloop.first %} + + + + {% if "/cantaloupe/iiif/2" in page.social_media %} + {% else %} - - - - - - + {% endif %} - + + {% endif %} {% endfor %} {% elif page.title %} + + + + + + {% else %} + + + + + + + {% endif %} + {% block css %} - - - - {% endblock css %} - {% block extra_css %} - {% endblock extra_css %} - + + + + {% endblock css %} {% block extra_css %} {% endblock extra_css %} {# NOTE: Jump to main content required for accessibility #} Jump to main content - {# Primary container; host for Vue application #} - {% block nav %} - {% endblock nav %} + {# Primary container; host for Vue application #} {% block nav %} {% + endblock nav %}
- {# Content container #}
- {# Django errors and alerts #} - {% if messages %} - {% for message in messages %} -
- -

{{ message }}

-
- {% endfor %} - {% endif %} - - {% block modal %} - {% endblock modal %} - - {% block wrapper %} - {% block content %} - {% endblock content %} - {% endblock wrapper %} - {# IIIF viewer #} - {% block viewer %} - {% endblock viewer %} + {# Django errors and alerts #} {% if messages %} {% for message in + messages %} +
+ +

{{ message }}

+
+ {% endfor %} {% endif %} {% block modal %} {% endblock modal %} {% block + wrapper %} {% block content %} {% endblock content %} {% endblock + wrapper %} {# IIIF viewer #} {% block viewer %} {% endblock viewer %}
- {# prevent duplicate footer on homepage bug #} - {% if request.path != '/' %} - {% include "_home/_footer.html" %} - {% endif %} + {# prevent duplicate footer on homepage bug #} {% if request.path != '/' + %} {% include "_home/_footer.html" %} {% endif %}
- + {% block javascript %} - - {% if has_ga_tracking_id %} - - - - - {% endif %} - {% endblock javascript %} - {% block extra_javascript %} - {% endblock extra_javascript %} - {% csrf_token %} + + {% if has_ga_tracking_id %} + + + + + {% endif %} {% endblock javascript %} {% block extra_javascript %} {% + endblock extra_javascript %} {% csrf_token %} diff --git a/config/settings/base.py b/config/settings/base.py index eca889768..db70c0198 100644 --- a/config/settings/base.py +++ b/config/settings/base.py @@ -247,6 +247,7 @@ "apps.readux.context_processors.current_version", "apps.readux.context_processors.footer_template", "apps.readux.context_processors.site_meta", + "apps.readux.context_processors.matomo_id", "apps.custom_styles.context_processors.background_image_url", ], }, From e49aed70599db5339269673e47b22f312e1054c7 Mon Sep 17 00:00:00 2001 From: Jay Varner Date: Wed, 25 Mar 2026 15:07:34 -0400 Subject: [PATCH 4/5] Fix formatting --- apps/templates/base.html | 254 +++++++++++++++++++-------------------- 1 file changed, 122 insertions(+), 132 deletions(-) diff --git a/apps/templates/base.html b/apps/templates/base.html index 65cb21f36..845e53c4d 100644 --- a/apps/templates/base.html +++ b/apps/templates/base.html @@ -1,173 +1,163 @@ {% load static i18n %} - -{% load menu_tags %} {% load sass_tags %} {% load wagtailcore_tags %} {% -wagtail_site as current_site %} + +{% load menu_tags %} +{% load sass_tags %} +{% load wagtailcore_tags %} +{% wagtail_site as current_site %} - {% block title %} {{ request.site.name }} {% endblock title %} + {% block title %} + {{ request.site.name }} + {% endblock title %} {% block extra_head %} - - + + {% endblock extra_head %} {% if collection.label %} - - - - - - - + + + + + + + {% elif volume.label %} - - - - - - - - - - - - {% for lang in volume.languages.all %} - - {% endfor %} - + + + + + + + + + + + + {% for lang in volume.languages.all %} + + {% endfor %} + - {% for page in volume.canvas_set.all %} {% if forloop.first %} - - - - {% if "/cantaloupe/iiif/2" in page.social_media %} - + {% for page in volume.canvas_set.all %} + {% if forloop.first %} + + + + {% if "/cantaloupe/iiif/2" in page.social_media %} + + {% else %} + + {% endif %} + + {% endif %} + {% endfor %} + {% elif page.title %} + + + + + {% else %} - + + + + + + {% endif %} - - {% endif %} {% endfor %} {% elif page.title %} - - - - - - {% else %} - - - - - - - {% endif %} - + {% block css %} - - - - {% endblock css %} {% block extra_css %} {% endblock extra_css %} + + + + {% endblock css %} + {% block extra_css %} + {% endblock extra_css %} + {# NOTE: Jump to main content required for accessibility #} Jump to main content - {# Primary container; host for Vue application #} {% block nav %} {% - endblock nav %} + {# Primary container; host for Vue application #} + {% block nav %} + {% endblock nav %}
+ {# Content container #}
- {# Django errors and alerts #} {% if messages %} {% for message in - messages %} -
- -

{{ message }}

-
- {% endfor %} {% endif %} {% block modal %} {% endblock modal %} {% block - wrapper %} {% block content %} {% endblock content %} {% endblock - wrapper %} {# IIIF viewer #} {% block viewer %} {% endblock viewer %} + {# Django errors and alerts #} + {% if messages %} + {% for message in messages %} +
+ +

{{ message }}

+
+ {% endfor %} + {% endif %} + + {% block modal %} + {% endblock modal %} + + {% block wrapper %} + {% block content %} + {% endblock content %} + {% endblock wrapper %} + {# IIIF viewer #} + {% block viewer %} + {% endblock viewer %}
- {# prevent duplicate footer on homepage bug #} {% if request.path != '/' - %} {% include "_home/_footer.html" %} {% endif %} + {# prevent duplicate footer on homepage bug #} + {% if request.path != '/' %} + {% include "_home/_footer.html" %} + {% endif %}
- + {% block javascript %} - - {% if has_ga_tracking_id %} - - - - - {% endif %} {% endblock javascript %} {% block extra_javascript %} {% - endblock extra_javascript %} {% csrf_token %} + + {% if has_ga_tracking_id %} + + + + + {% endif %} + {% endblock javascript %} + {% block extra_javascript %} + {% endblock extra_javascript %} + {% csrf_token %} - + \ No newline at end of file From 8cb4258fbfca3cf6ae9daea9d6dc14afbfe3d7a8 Mon Sep 17 00:00:00 2001 From: Jay Varner Date: Wed, 25 Mar 2026 15:49:01 -0400 Subject: [PATCH 5/5] Update base.html --- apps/templates/base.html | 240 +++++++++++++++++++-------------------- 1 file changed, 116 insertions(+), 124 deletions(-) diff --git a/apps/templates/base.html b/apps/templates/base.html index a0ed94022..9c7cdea37 100644 --- a/apps/templates/base.html +++ b/apps/templates/base.html @@ -1,143 +1,134 @@ {% load static i18n %} - -{% load menu_tags %} {% load sass_tags %} {% load wagtailcore_tags %} {% -wagtail_site as current_site %} + +{% load menu_tags %} +{% load sass_tags %} +{% load wagtailcore_tags %} +{% wagtail_site as current_site %} - {% block title %} {{ request.site.name }} {% endblock title %} + {% block title %} + {{ request.site.name }} + {% endblock title %} {% block extra_head %} - - + + {% endblock extra_head %} {% if collection.label %} - - - - - - - + + + + + + + {% elif volume.label %} - - - - - - - - - - - - {% for lang in volume.languages.all %} - - {% endfor %} - + + + + + + + + + + + + {% for lang in volume.languages.all %} + + {% endfor %} + - {% for page in volume.canvas_set.all %} {% if forloop.first %} - - - - {% if "/cantaloupe/iiif/2" in page.social_media %} - + {% with first_page=volume.canvas_set.first %} + {% if first_page %} + + + + {% if "/cantaloupe/iiif/2" in first_page.social_media %} + + {% else %} + + {% endif %} + + {% endif %} + {% endwith %} + {% elif page.title %} + + + + + {% else %} - + + + + + + {% endif %} - - {% endif %} {% endfor %} {% elif page.title %} - - - - - - {% else %} - - - - - - - {% endif %} - + {% block css %} - - - - {% endblock css %} {% block extra_css %} {% endblock extra_css %} + + + + {% endblock css %} + {% block extra_css %} + {% endblock extra_css %} + {# NOTE: Jump to main content required for accessibility #} Jump to main content - {# Primary container; host for Vue application #} {% block nav %} {% - endblock nav %} + {# Primary container; host for Vue application #} + {% block nav %} + {% endblock nav %}
+ {# Content container #}
- {# Django errors and alerts #} {% if messages %} {% for message in - messages %} -
- -

{{ message }}

-
- {% endfor %} {% endif %} {% block modal %} {% endblock modal %} {% block - wrapper %} {% block content %} {% endblock content %} {% endblock - wrapper %} {# IIIF viewer #} {% block viewer %} {% endblock viewer %} + {# Django errors and alerts #} + {% if messages %} + {% for message in messages %} +
+ +

{{ message }}

+
+ {% endfor %} + {% endif %} + + {% block modal %} + {% endblock modal %} + + {% block wrapper %} + {% block content %} + {% endblock content %} + {% endblock wrapper %} + {# IIIF viewer #} + {% block viewer %} + {% endblock viewer %}
- {# prevent duplicate footer on homepage bug #} {% if request.path != '/' - %} {% include "_home/_footer.html" %} {% endif %} + {# prevent duplicate footer on homepage bug #} + {% if request.path != '/' %} + {% include "_home/_footer.html" %} + {% endif %}
@@ -150,22 +141,23 @@ {% block javascript %} - - {% if has_ga_tracking_id %} - - - - - {% endif %} {% endblock javascript %} {% block extra_javascript %} {% - endblock extra_javascript %} {% csrf_token %} + + {% if has_ga_tracking_id %} + + + + + {% endif %} + {% endblock javascript %} + {% block extra_javascript %} + {% endblock extra_javascript %} + {% csrf_token %} - \ No newline at end of file +