Init Instant Answers
Some checks failed
Run Integration Tests / test (push) Failing after 49s

This commit is contained in:
partisan 2025-06-25 23:23:33 +02:00
parent c33a997dc5
commit 57507756ec
14 changed files with 864 additions and 97 deletions

View file

@ -10,6 +10,7 @@
<title>{{ .Query }} - {{ translate "site_name" }}</title>
<link rel="stylesheet" href="/static/css/style.css">
<link rel="stylesheet" href="/static/css/{{.Theme}}.css">
<link rel="stylesheet" href="/static/css/style-instantanswer.css">
<link rel="stylesheet" href="/static/css/style-fonts.css">
<link rel="stylesheet" href="/static/css/style-loadingcircle.css">
<link rel="stylesheet" href="/static/css/style-menu.css">
@ -163,6 +164,58 @@
</form>
<p class="fetched fetched_dif_files fetched_tor">{{ translate "fetched_in" .Fetched }}</p>
<!-- Instant Answers Container -->
{{if .Instant}}
<div class="instant-container">
<div class="instant-box">
<h3>{{.Instant.Title}}</h3>
{{if eq .Instant.Type "currency"}}
<div class="instant-result">
{{index .Instant.Content "display"}}
</div>
{{end}}
{{if eq .Instant.Type "calc"}}
<div class="instant-result">
<!-- Static result for non-JS users -->
<div id="static-calc">{{.Instant.Content}}</div>
<!-- Calculator UI for JS users -->
<div id="dynamic-calc" class="calc-container" style="display:none;">
<div class="calc-history" id="calc-history"></div>
<input type="text" class="calc-input" id="calc-input" value="{{.Query}}" readonly>
<div class="calc-buttons">
<button data-value="C"></button>
<button data-value="(">(</button>
<button data-value=")">)</button>
<button data-value="%">mod</button>
<button data-value="7">7</button>
<button data-value="8">8</button>
<button data-value="9">9</button>
<button data-value="/">÷</button>
<button data-value="4">4</button>
<button data-value="5">5</button>
<button data-value="6">6</button>
<button data-value="*">×</button>
<button data-value="1">1</button>
<button data-value="2">2</button>
<button data-value="3">3</button>
<button data-value="-">-</button>
<button data-value="0">0</button>
<button data-value=".">,</button>
<button data-value="=" class="equals">=</button>
<button data-value="+">+</button>
</div>
</div>
</div>
{{end}}
{{if eq .Instant.Type "wiki"}}
<div class="instant-result">{{index .Instant.Content "text"}}</div>
<div><a href="{{index .Instant.Content "link"}}" target="_blank">Read more on Wikipedia →</a></div>
{{end}}
</div>
</div>
{{end}}
<div class="results" id="results">
{{ if .Results }}
{{ range .Results }}
@ -196,10 +249,12 @@
</div>
{{ end }}
</div>
<div id="message-bottom-right" class="message-bottom-right">
<span id="loading-text">{{ translate "searching_for_new_results" }}</span><span class="dot">.</span><span
class="dot">.</span><span class="dot">.</span>
</div>
<div class="prev-next prev-img" id="prev-next">
<form action="/search" method="get">
<input type="hidden" name="q" value="{{ .Query }}">
@ -218,6 +273,7 @@
data-hard-cache-enabled="{{ .HardCacheEnabled }}"></div>
<script defer src="/static/js/dynamicscrollingtext.js"></script>
<script defer src="/static/js/autocomplete.js"></script>
<script defer src="/static/js/calculator.js"></script>
<script defer src="/static/js/minimenu.js"></script>
<script>
document.querySelectorAll('.js-enabled').forEach(el => el.classList.remove('js-enabled'));