This commit is contained in:
2024-05-31 12:15:28 +02:00
parent bf361851aa
commit 183244e07b
4 changed files with 50 additions and 18 deletions
+5 -10
View File
@@ -14,7 +14,7 @@
{% for Conversation in Conversations %}
<div class="icon-text has-text unselected icon-conv {% if Conversation.Selected %} selected {% endif %}"
data-id="{{ Conversation.ID.String() }}" style="cursor: pointer;"
onclick="toggleConversationSelection(this)"
onclick="toggleConversationSelection(this, '{{ Conversation.Name }}')"
hx-get="/selectConversation?conversation-id={{ Conversation.ID.String() }}" hx-swap="outerHTML"
hx-target="#chat-container">
<span>{{ Conversation.Name }}</span>
@@ -61,22 +61,18 @@
return document.getElementsByClassName('icon-conv selected')[0].getAttribute('data-id');
}
function toggleConversationSelection(element) {
function toggleConversationSelection(element, name) {
const elements = Array.from(document.getElementsByClassName('icon-conv'));
// If the conversation is already selected, keep it
if (element.classList.contains('selected')) {
// Do nothing
return;
} else if (element.classList.contains('unselected')) {
if (element.classList.contains('unselected')) {
for (let i = 0; i < elements.length; i++) {
elements[i].classList.remove('selected');
elements[i].classList.add('unselected');
}
element.classList.remove('unselected');
element.classList.add('selected');
return;
} else {
} else if (!element.classList.contains('selected')) {
// Otherwise, select it
for (let i = 0; i < elements.length; i++) {
elements[i].classList.remove('selected');
@@ -86,8 +82,7 @@
element.classList.add('selected');
}
// If the text inside the selected button is Default
if (element.textContent === 'Default') {
if (name === 'Default') {
document.getElementById('delete-conversation-button').disabled = true;
} else {
document.getElementById('delete-conversation-button').disabled = false;