2023-09-12 15:52:16 +00:00
|
|
|
<script setup lang="ts">
|
|
|
|
|
|
|
|
|
|
|
|
import {saveSettingsToFile} from '../js/settingsHandler';
|
|
|
|
|
|
|
|
import { setActivePinia } from 'pinia';
|
|
|
|
import pinia from '../store/index';
|
|
|
|
setActivePinia(pinia);
|
2023-09-14 19:45:07 +00:00
|
|
|
import {deleteChatByCallsign} from '../js/chatHandler'
|
2023-09-12 15:52:16 +00:00
|
|
|
|
|
|
|
import { useSettingsStore } from '../store/settingsStore.js';
|
|
|
|
const settings = useSettingsStore(pinia);
|
|
|
|
|
|
|
|
import { useStateStore } from '../store/stateStore.js';
|
|
|
|
const state = useStateStore(pinia);
|
|
|
|
|
|
|
|
import { useChatStore } from '../store/chatStore.js';
|
|
|
|
const chat = useChatStore(pinia);
|
|
|
|
|
2023-09-14 19:45:07 +00:00
|
|
|
function deleteChat(callsign){
|
|
|
|
deleteChatByCallsign(callsign)
|
|
|
|
}
|
2023-09-12 15:52:16 +00:00
|
|
|
|
|
|
|
|
|
|
|
import chat_conversations_entry from './chat_conversations_entry.vue'
|
2023-09-20 04:46:37 +00:00
|
|
|
|
|
|
|
function chatSelected(callsign){
|
2023-09-20 05:37:32 +00:00
|
|
|
|
|
|
|
chat.selectedCallsign = callsign.toUpperCase()
|
2023-09-20 04:46:37 +00:00
|
|
|
|
|
|
|
// scroll message container to bottom
|
|
|
|
var messageBody = document.getElementById("message-container");
|
|
|
|
messageBody.scrollTop = messageBody.scrollHeight - messageBody.clientHeight;
|
|
|
|
|
2023-10-01 11:24:54 +00:00
|
|
|
try{
|
|
|
|
chat.beaconLabelArray = Object.values(chat.sorted_beacon_list[chat.selectedCallsign].timestamp)
|
|
|
|
chat.beaconDataArray = Object.values(chat.sorted_beacon_list[chat.selectedCallsign].snr)
|
|
|
|
} catch(e){
|
|
|
|
console.log("beacon data not fetched: " + e)
|
|
|
|
chat.beaconLabelArray = []
|
|
|
|
chat.beaconDataArray = []
|
|
|
|
}
|
|
|
|
|
|
|
|
console.log(chat.beaconDataArray)
|
|
|
|
|
|
|
|
|
|
|
|
|
2023-09-20 04:46:37 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
2023-10-01 11:24:54 +00:00
|
|
|
|
|
|
|
|
2023-09-12 15:52:16 +00:00
|
|
|
</script>
|
|
|
|
<template>
|
|
|
|
|
2023-09-20 18:59:29 +00:00
|
|
|
<div class="list-group m-0 p-0" id="chat-list-tab" role="chat-tablist">
|
2023-09-14 20:45:29 +00:00
|
|
|
<template v-for="(item, key) in chat.callsign_list" :key="item.dxcallsign">
|
2023-10-02 12:45:47 +00:00
|
|
|
<a class="list-group-item list-group-item-action border-0 border-bottom rounded-0" :class="{ active: key==0 }" :id="`list-chat-list-${item}`" data-bs-toggle="list" :href="`#list-${item}-messages`" role="tab" aria-controls="list-{{item}}-messages" @click="chatSelected(item)">
|
2023-09-14 19:45:07 +00:00
|
|
|
<div class="row">
|
|
|
|
<div class="col-9">{{item}}</div>
|
|
|
|
<div class="col-3">
|
2023-09-30 19:57:23 +00:00
|
|
|
|
|
|
|
<button class="btn btn-sm btn-outline-danger ms-2" @click="deleteChat(item)"><i class="bi bi-trash"></i></button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2023-09-14 19:45:07 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</a>
|
2023-09-12 15:52:16 +00:00
|
|
|
</template>
|
|
|
|
<!--<chat_conversations_entry/>-->
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</template>
|