Adds async update from flask with other content

This commit is contained in:
kvan7 2024-01-22 03:23:35 +00:00
parent b50ef14dce
commit f797519944
9 changed files with 49 additions and 61 deletions

View file

@ -1,48 +1,23 @@
<aside class="chat_box" aria-label="{{ chat_box.chat_box }}">
<h2 class="title"><bdi>{{ chat_box.chat_box }}</bdi></h2>
<!-- {%- if infobox.img_src -%}<img src="{{ image_proxify(infobox.img_src) }}" title="{{ infobox.infobox|striptags }}" alt="{{ infobox.infobox|striptags }}">{%- endif -%} -->
<!-- <p><bdi>{{ infobox.content | safe }}</bdi></p> -->
<!-- {%- if infobox.attributes -%}
<div class="attributes">
{%- for attribute in infobox.attributes -%}
<dl>
<dt><bdi>{{ attribute.label }} :</bdi></dt>
{%- if attribute.image -%}
<dd><img src="{{ image_proxify(attribute.image.src) }}" alt="{{ attribute.image.alt }}"></dd>
{%- else -%}
<dd><bdi>{{ attribute.value }}</bdi></dd>
{%- endif -%}
</dl>
{%- endfor -%}
</div>
{%- endif -%} -->
<!-- {%- if infobox.urls -%}
<div class="urls">
<ul>
{%- for url in infobox.urls -%}
<li class="url"><bdi><a href="{{ url.url }}" {%- if results_on_new_tab -%}target="_blank" rel="noopener noreferrer"{%- else -%}rel="noreferrer"{%- endif -%}>{{ url.title }}</a></bdi></li>
{%- endfor -%}
</ul>
</div>
{%- endif -%} -->
<!-- {%- if infobox.relatedTopics -%}
<div class="relatedTopics">
{%- for topic in infobox.relatedTopics -%}
<div>
<h3><bdi>{{ topic.name }}</bdi></h3>
{%- for suggestion in topic.suggestions -%}
<form method="{{ method or 'POST' }}" action="{{ url_for('search') }}">
<input type="hidden" name="q" value="{{ suggestion }}">
<input type="hidden" name="time_range" value="{{ time_range }}">
<input type="hidden" name="language" value="{{ current_language }}">
<input type="hidden" name="safesearch" value="{{ safesearch }}">
<input type="hidden" name="theme" value="{{ theme }}">
{%- if timeout_limit -%}<input type="hidden" name="timeout_limit" value="{{ timeout_limit|e }}" >{%- endif -%}
<input type="submit" value="{{ suggestion }}" />
</form>
{%- endfor -%}
</div>
{%- endfor -%}
</div>
{%- endif -%} -->
</aside>
<p><bdi>{{ chat_box.content | safe }}</bdi></p>
</aside>
<script>
document.addEventListener("DOMContentLoaded", function () {
function updateChatBox() {
fetch('/get-chat-content')
.then(response => response.json())
.then(data => {
const chatBox = document.querySelector('.chat_box');
console.log('response from api', data);
chatBox.querySelector('bdi').textContent = data.chat_box;
chatBox.querySelector('p').textContent = data.content;
})
.catch(error => console.error('Error:', error));
}
// Call updateChatBox after search is completed
// This might be tied to an event, depending on how your search functionality is implemented
updateChatBox();
});
</script>

View file

@ -47,7 +47,7 @@
<div id="chat_box">
<details open class="sidebar-collapsable">
<summary class="title">{{ _('Chat') }}</summary>
{%- for infobox in chat_box -%}
{%- for chat_box in chat_box -%}
{%- include 'kvanDark/elements/chat_box.html' -%}
{%- endfor -%}
</details>