Skip to content

Commit

Permalink
Indent templates with djhtml
Browse files Browse the repository at this point in the history
  • Loading branch information
stevedya authored and thibaudcolas committed Feb 12, 2022
1 parent 72886c0 commit 01986cf
Show file tree
Hide file tree
Showing 143 changed files with 2,071 additions and 2,071 deletions.
142 changes: 71 additions & 71 deletions docs/_templates/layout.html
Expand Up @@ -4,83 +4,83 @@
{% set docsearch_base = 'https://cdn.jsdelivr.net/npm/docsearch.js@' ~ docsearch_version ~ '/dist/cdn/' %}

{% block extrahead %}
<link rel="stylesheet" href="{{ docsearch_base ~ 'docsearch.min.css' }}"/>
<link rel="stylesheet" href="{{ pathto('_static/css/docsearch.overrides.css', 1) }}" />
<link rel="stylesheet" href="{{ pathto('_static/css/custom.css', 1) }}" />
<link rel="stylesheet" href="{{ docsearch_base ~ 'docsearch.min.css' }}"/>
<link rel="stylesheet" href="{{ pathto('_static/css/docsearch.overrides.css', 1) }}" />
<link rel="stylesheet" href="{{ pathto('_static/css/custom.css', 1) }}" />
{% endblock %}

{% block search %}
<script async defer data-domain="docs.wagtail.org" src="https://plausible.io/js/plausible.js"></script>
<script src="{{ docsearch_base }}docsearch.min.js"></script>
<script>
/**
* Get version of the currently served docs.
*
* PR builds have their version set to the PR ID (e.g. "6753").
* If the docs are built for a PR, use the "latest" search index.
* Otherwise, use the search index for the current version.
*/
function getReadTheDocsVersion() {
const rtd_version = (window.READTHEDOCS_DATA || {}).version || 'latest'
const version = rtd_version.match(/^\d+$/) ? 'latest' : rtd_version
return version
}
<script async defer data-domain="docs.wagtail.org" src="https://plausible.io/js/plausible.js"></script>
<script src="{{ docsearch_base }}docsearch.min.js"></script>
<script>
/**
* Get version of the currently served docs.
*
* PR builds have their version set to the PR ID (e.g. "6753").
* If the docs are built for a PR, use the "latest" search index.
* Otherwise, use the search index for the current version.
*/
function getReadTheDocsVersion() {
const rtd_version = (window.READTHEDOCS_DATA || {}).version || 'latest'
const version = rtd_version.match(/^\d+$/) ? 'latest' : rtd_version
return version
}

function getVersionFacetFilter() {
return `version:${getReadTheDocsVersion()}`;
}
function getVersionFacetFilter() {
return `version:${getReadTheDocsVersion()}`;
}

/**
* Return true (debug: on) for local builds or Read the Docs PR previews.
*
* The debug mode allows inspection of the dropodown.
*/
function getSearchDebugMode() {
let debug = false
if (window.READTHEDOCS_DATA === undefined) {
// When developing locally, the `window.READTHEDOCS_DATA` object does not exist.
debug = true
} else {
// When PR preview on Readthedocs, then the version can be converted into
// a number. This does not work for the production version identifiers
// like 'stable', 'latest', 'v2.12', etc. In that case `Number()` is `NaN`.
const versionNumber = Number(window.READTHEDOCS_DATA.version)
debug = !isNaN(versionNumber)
}
return debug
}
/**
* Return true (debug: on) for local builds or Read the Docs PR previews.
*
* The debug mode allows inspection of the dropodown.
*/
function getSearchDebugMode() {
let debug = false
if (window.READTHEDOCS_DATA === undefined) {
// When developing locally, the `window.READTHEDOCS_DATA` object does not exist.
debug = true
} else {
// When PR preview on Readthedocs, then the version can be converted into
// a number. This does not work for the production version identifiers
// like 'stable', 'latest', 'v2.12', etc. In that case `Number()` is `NaN`.
const versionNumber = Number(window.READTHEDOCS_DATA.version)
debug = !isNaN(versionNumber)
}
return debug
}

function docSearchReady() {
/**
* Configure Algolia DocSearch.
* See https://github.com/algolia/docsearch-configs/blob/master/configs/wagtail.json for index configuration.
*/
const search = docsearch({
apiKey: '8325c57d16798633e29d211c26c7b6f9',
indexName: 'wagtail',
inputSelector: '#searchbox [name="q"]',
algoliaOptions: {
facetFilters: [getVersionFacetFilter()],
},
autocompleteOptions: {
// Do NOT automatically select the first suggestion in the dropdown.
// https://github.com/algolia/autocomplete/blob/45fa32d008620cf52bf4a90530be338543dfba7f/README.md#global-options
autoSelect: false
},
debug: getSearchDebugMode(),
})
function docSearchReady() {
/**
* Configure Algolia DocSearch.
* See https://github.com/algolia/docsearch-configs/blob/master/configs/wagtail.json for index configuration.
*/
const search = docsearch({
apiKey: '8325c57d16798633e29d211c26c7b6f9',
indexName: 'wagtail',
inputSelector: '#searchbox [name="q"]',
algoliaOptions: {
facetFilters: [getVersionFacetFilter()],
},
autocompleteOptions: {
// Do NOT automatically select the first suggestion in the dropdown.
// https://github.com/algolia/autocomplete/blob/45fa32d008620cf52bf4a90530be338543dfba7f/README.md#global-options
autoSelect: false
},
debug: getSearchDebugMode(),
})

// Change page styles when the dropdown is open, to lock scrolling.
search.autocomplete.on('autocomplete:updated', function (event) {
const isOpen = event.target.value.trim() !== '';
document.body.classList.toggle('body--autocomplete-open', isOpen);
});
search.autocomplete.on('autocomplete:closed', function (event) {
document.body.classList.toggle('body--autocomplete-open', false);
});
return search
}
// Change page styles when the dropdown is open, to lock scrolling.
search.autocomplete.on('autocomplete:updated', function (event) {
const isOpen = event.target.value.trim() !== '';
document.body.classList.toggle('body--autocomplete-open', isOpen);
});
search.autocomplete.on('autocomplete:closed', function (event) {
document.body.classList.toggle('body--autocomplete-open', false);
});
return search
}

docSearchReady();
</script>
docSearchReady();
</script>
{% endblock %}
186 changes: 93 additions & 93 deletions docs/_templates/search.html
Expand Up @@ -2,100 +2,100 @@
{% set title = _('Search') %}

{% block body %}
<noscript>
<div id="fallback" class="admonition warning">
<p class="last">
{% trans trimmed %}Please activate JavaScript to enable the search
functionality.{% endtrans %}
</p>
</div>
</noscript>

<div id="search-results">
</div>
<noscript>
<div id="fallback" class="admonition warning">
<p class="last">
{% trans trimmed %}Please activate JavaScript to enable the search
functionality.{% endtrans %}
</p>
</div>
</noscript>

<div id="search-results">
</div>
{% endblock %}

{% block footer %}
{{ super() }}
<script>

function runSearchPageSearch() {
const urlParams = new URLSearchParams(window.location.search)
const query = urlParams.get('q')

const searchResultsContainer = document.getElementById('search-results')
addHeadingForQuery(query, searchResultsContainer)

const docSearch = docSearchReady()
const index = docSearch.client.initIndex('wagtail')
index.search(
query,
{
hitsPerPage: 50,
facetFilters: [getVersionFacetFilter()]
}
)
.then(({ hits }) => addResultsList(hits, query, searchResultsContainer))
.catch((error) => console.log(error))
}

function addHeadingForQuery(query, parentElement) {
const searchHeading = document.createElement('h1')
searchHeading.textContent = `Search results for “${query}”`
parentElement.appendChild(searchHeading)
}

function addResultsList(hits, query, parentElement) {
const searchResultsList = document.createElement('ul')
searchResultsList.className = "search"
for (hit of hits) {
const hitElement = createHitElement(hit, query)
searchResultsList.appendChild(hitElement)
}
parentElement.appendChild(searchResultsList)
}

function createHitElement(hitData, query) {
const pageURL = new URL(hitData.url)
pageURL.hash = '';
pageURL.searchParams.set('highlight', query);
const anchorURL = new URL(hitData.url);
anchorURL.searchParams.set('highlight', query);
const result = hitData._highlightResult

const hitListElement = document.createElement('li')

const hierarchies = Object.values(result.hierarchy);
const firstHierarchyLevel = hierarchies[0];
const lastHierarchyLevel = hierarchies[hierarchies.length - 1];

const pageLink = document.createElement('a')
hitListElement.appendChild(pageLink)
pageLink.innerHTML = firstHierarchyLevel.value
pageLink.href = pageURL

const contextElement = document.createElement('div')
hitListElement.appendChild(contextElement)
contextElement.className = 'context'

if (lastHierarchyLevel && lastHierarchyLevel !== firstHierarchyLevel ) {
const contextLinkContainer = document.createElement('div')
contextElement.appendChild(contextLinkContainer)
const contextLink = document.createElement('a')
contextLinkContainer.appendChild(contextLink)
contextLink.innerHTML = lastHierarchyLevel.value
contextLink.href = anchorURL
}

if (result.content) {
const contentElement = document.createElement('div')
contentElement.innerHTML = result.content.value
contextElement.appendChild(contentElement)
}

return hitListElement
}

window.addEventListener('DOMContentLoaded', runSearchPageSearch)
</script>
{{ super() }}
<script>

function runSearchPageSearch() {
const urlParams = new URLSearchParams(window.location.search)
const query = urlParams.get('q')

const searchResultsContainer = document.getElementById('search-results')
addHeadingForQuery(query, searchResultsContainer)

const docSearch = docSearchReady()
const index = docSearch.client.initIndex('wagtail')
index.search(
query,
{
hitsPerPage: 50,
facetFilters: [getVersionFacetFilter()]
}
)
.then(({ hits }) => addResultsList(hits, query, searchResultsContainer))
.catch((error) => console.log(error))
}

function addHeadingForQuery(query, parentElement) {
const searchHeading = document.createElement('h1')
searchHeading.textContent = `Search results for “${query}”`
parentElement.appendChild(searchHeading)
}

function addResultsList(hits, query, parentElement) {
const searchResultsList = document.createElement('ul')
searchResultsList.className = "search"
for (hit of hits) {
const hitElement = createHitElement(hit, query)
searchResultsList.appendChild(hitElement)
}
parentElement.appendChild(searchResultsList)
}

function createHitElement(hitData, query) {
const pageURL = new URL(hitData.url)
pageURL.hash = '';
pageURL.searchParams.set('highlight', query);
const anchorURL = new URL(hitData.url);
anchorURL.searchParams.set('highlight', query);
const result = hitData._highlightResult

const hitListElement = document.createElement('li')

const hierarchies = Object.values(result.hierarchy);
const firstHierarchyLevel = hierarchies[0];
const lastHierarchyLevel = hierarchies[hierarchies.length - 1];

const pageLink = document.createElement('a')
hitListElement.appendChild(pageLink)
pageLink.innerHTML = firstHierarchyLevel.value
pageLink.href = pageURL

const contextElement = document.createElement('div')
hitListElement.appendChild(contextElement)
contextElement.className = 'context'

if (lastHierarchyLevel && lastHierarchyLevel !== firstHierarchyLevel ) {
const contextLinkContainer = document.createElement('div')
contextElement.appendChild(contextLinkContainer)
const contextLink = document.createElement('a')
contextLinkContainer.appendChild(contextLink)
contextLink.innerHTML = lastHierarchyLevel.value
contextLink.href = anchorURL
}

if (result.content) {
const contentElement = document.createElement('div')
contentElement.innerHTML = result.content.value
contextElement.appendChild(contentElement)
}

return hitListElement
}

window.addEventListener('DOMContentLoaded', runSearchPageSearch)
</script>
{% endblock %}
12 changes: 6 additions & 6 deletions docs/_templates/searchbox.html
@@ -1,8 +1,8 @@
{%- if builder != "singlehtml" %}
<div id="searchbox" class="" role="search">
<form id="search-form" action="{{ pathto('search') }}" autocomplete="off" method="get">
<input class="form-control p-3 h-100" type="text" name="q" placeholder="Search" aria-label="Search" id="searchinput" />
<input type="submit" style="visibility:hidden;position:absolute">
</form>
</div>
<div id="searchbox" class="" role="search">
<form id="search-form" action="{{ pathto('search') }}" autocomplete="off" method="get">
<input class="form-control p-3 h-100" type="text" name="q" placeholder="Search" aria-label="Search" id="searchinput" />
<input type="submit" style="visibility:hidden;position:absolute">
</form>
</div>
{%- endif %}
2 changes: 1 addition & 1 deletion wagtail/admin/templates/wagtailadmin/404.html
Expand Up @@ -19,7 +19,7 @@

<div class="page404__text-container">
<h1 class="page404__header">
{% trans "Error 404" %}
{% trans "Error 404" %}
</h1>

<p class="page404__text">
Expand Down

0 comments on commit 01986cf

Please sign in to comment.