Integrated FlexSearch.js and removed DuckDuckGo search.
This commit is contained in:
parent
20474a435f
commit
fcde1683d1
7 changed files with 219 additions and 37 deletions
|
|
@ -21,7 +21,6 @@
|
|||
</h1>
|
||||
<div class="region header__region">
|
||||
{{ if .Site.IsMultiLingual }}{{ partial "language-selector.html" . }}{{ end -}}
|
||||
{{ if $.Param "search" }}{{ partialCached "search.html" . }}{{ end -}}
|
||||
</div>
|
||||
</header>
|
||||
|
||||
|
|
|
|||
5
layouts/home.searchindex.json
Normal file
5
layouts/home.searchindex.json
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{{- $.Scratch.Add "searchindex" slice -}}
|
||||
{{- range $index, $element := .Site.RegularPages -}}
|
||||
{{- $.Scratch.Add "searchindex" (dict "id" $index "title" $element.Title "permalink" $element.RelPermalink "tags" (delimit ($element.Params.tags | default "") " ") "content" $element.Plain "summary" $element.Summary "date" ($element.Date.Format ($.Param "dateformat" | default "2 January, 2006"))) -}}
|
||||
{{- end -}}
|
||||
{{- $.Scratch.Get "searchindex" | jsonify -}}
|
||||
|
|
@ -4,7 +4,6 @@
|
|||
<div class="mobile-nav__sheet">
|
||||
<div class="mobile-nav__region">
|
||||
{{ if .Site.IsMultiLingual }}{{ partial "language-selector.html" . }}{{ end }}
|
||||
{{ if $.Param "search" }}{{ partialCached "search.html" . }}{{ end }}
|
||||
</div>
|
||||
<nav class="mobile-nav__main-menu">
|
||||
<h2 class="visually-hidden">{{ i18n "menu_title" }}</h2>
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
{{ if $.Param "jquery" -}}
|
||||
{{ $jquery := resources.Get "js/jquery.slim.min.js" | fingerprint -}}
|
||||
{{ $jquery := resources.Get "js/lib/jquery.slim.min.js" | fingerprint -}}
|
||||
<script defer src="{{ $jquery.RelPermalink }}"></script>
|
||||
{{ end -}}
|
||||
{{ $umbrella := resources.Get "js/umbrella.min.js" | fingerprint -}}
|
||||
{{ $umbrella := resources.Get "js/lib/umbrella.min.js" | fingerprint -}}
|
||||
<script defer src="{{ $umbrella.RelPermalink }}"></script>
|
||||
{{ if $.Param "mobilemenu" -}}
|
||||
{{ $mobilemenu := resources.Get "js/mobile.js" | minify | fingerprint -}}
|
||||
|
|
@ -12,5 +12,11 @@
|
|||
{{ $contact := resources.Get "js/contact.js" | minify | fingerprint -}}
|
||||
<script defer src="{{ $contact.RelPermalink }}"></script>
|
||||
{{ end -}}
|
||||
{{ if $.Param "searchform" -}}
|
||||
{{ $flexsearch := resources.Get "js/lib/flexsearch.min.js" | fingerprint -}}
|
||||
<script defer src="{{ $flexsearch.RelPermalink }}"></script>
|
||||
{{ $search := resources.Get "js/search.js" | resources.ExecuteAsTemplate "js/search.js" . | minify | fingerprint -}}
|
||||
<script defer src="{{ $search.RelPermalink }}"></script>
|
||||
{{ end -}}
|
||||
{{ $script := resources.Get "js/script.js" | minify | fingerprint -}}
|
||||
<script defer src="{{ $script.RelPermalink }}"></script>
|
||||
|
|
|
|||
|
|
@ -1,6 +0,0 @@
|
|||
{{ $domain := .Site.BaseURL | replaceRE "^https?://(www\\.)?([^/]+)/?" "$2" }}
|
||||
<form class="search-form" method="get" action="https://duckduckgo.com/" role="search">
|
||||
<input type="search" name="q" class="search-text" placeholder="{{ i18n "search_placeholder" }}" title="{{ i18n "search_title" }}" size="{{ $.Param "searchSize" | default "20" }}" maxlength="128">
|
||||
<input type="hidden" name="sites" value="{{ $domain }}">
|
||||
<input type="submit" value="DuckDuckGo Search" class="hidden">
|
||||
</form>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
<p class="contact-no-js error message">{{ i18n "contact_js" }}</p>
|
||||
<p class="error message js-hidden">{{ i18n "js_required" }}</p>
|
||||
<p class="contact-submitted status message hidden">{{ i18n "contact_submitted" }}</p>
|
||||
<p class="contact-error error message hidden">{{ i18n "contact_error" }}</p>
|
||||
|
||||
|
|
|
|||
22
layouts/shortcodes/search.html
Normal file
22
layouts/shortcodes/search.html
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
<p class="error message js-hidden">{{ i18n "js_required" }}</p>
|
||||
<p class="search-loading status message hidden">{{ i18n "search_loading" }}</p>
|
||||
|
||||
<div class="search-input hidden">
|
||||
<form id="search-form" class="search-form" action="#" method="post" accept-charset="UTF-8" role="search">
|
||||
<label for="query" class="visually-hidden">{{ i18n "search_title" }}</label>
|
||||
<input type="search" id="query" name="query" class="search-text" placeholder="{{ i18n "search_placeholder" }}" maxlength="128">
|
||||
<button type="submit" name="submit" class="form-submit" >{{ i18n "search_title" }}</button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="search-results"></div>
|
||||
|
||||
<template>
|
||||
<article class="search-result list-view">
|
||||
<header>
|
||||
<h2 class="title title-submitted"><a href="#">Title here</a></h2>
|
||||
<div class="submitted"><time class="created-date">Date here</time></div>
|
||||
</header>
|
||||
<div class="content">Summary here</div>
|
||||
</article>
|
||||
</template>
|
||||
Loading…
Reference in a new issue