mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
commit
0f5736cdcc
|
@ -12,7 +12,6 @@
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<button
|
<button
|
||||||
|
|
||||||
class="btn btn-outline-secondary border-0 me-1"
|
class="btn btn-outline-secondary border-0 me-1"
|
||||||
@click="repeatMessage"
|
@click="repeatMessage"
|
||||||
>
|
>
|
||||||
|
|
|
@ -162,12 +162,10 @@ export async function sendFreedataMessage(destination, body) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export async function retransmitFreedataMessage(id) {
|
export async function retransmitFreedataMessage(id) {
|
||||||
return await apiPost(`/freedata/messages/${id}`);
|
return await apiPost(`/freedata/messages/${id}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export async function deleteFreedataMessage(id) {
|
export async function deleteFreedataMessage(id) {
|
||||||
return await apiDelete(`/freedata/messages/${id}`);
|
return await apiDelete(`/freedata/messages/${id}`);
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,11 @@ setActivePinia(pinia);
|
||||||
import { useChatStore } from "../store/chatStore.js";
|
import { useChatStore } from "../store/chatStore.js";
|
||||||
const chatStore = useChatStore(pinia);
|
const chatStore = useChatStore(pinia);
|
||||||
|
|
||||||
import { sendFreedataMessage, deleteFreedataMessage, retransmitFreedataMessage } from "./api"
|
import {
|
||||||
|
sendFreedataMessage,
|
||||||
|
deleteFreedataMessage,
|
||||||
|
retransmitFreedataMessage,
|
||||||
|
} from "./api";
|
||||||
|
|
||||||
interface Message {
|
interface Message {
|
||||||
id: string;
|
id: string;
|
||||||
|
@ -20,35 +24,47 @@ interface Message {
|
||||||
statistics: any;
|
statistics: any;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export async function processFreedataMessages(data) {
|
export async function processFreedataMessages(data) {
|
||||||
if(typeof(data) != "undefined"){
|
if (typeof data != "undefined") {
|
||||||
chatStore.callsign_list = createCallsignListFromAPI(data)
|
chatStore.callsign_list = createCallsignListFromAPI(data);
|
||||||
chatStore.sorted_chat_list = createSortedMessagesList(data)
|
chatStore.sorted_chat_list = createSortedMessagesList(data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function createCallsignListFromAPI(data: { total_messages: number, messages: Message[] }): {[key: string]: {timestamp: string, body: string}} {
|
function createCallsignListFromAPI(data: {
|
||||||
const callsignList: {[key: string]: {timestamp: string, body: string}} = {};
|
total_messages: number;
|
||||||
|
messages: Message[];
|
||||||
|
}): { [key: string]: { timestamp: string; body: string } } {
|
||||||
|
const callsignList: { [key: string]: { timestamp: string; body: string } } =
|
||||||
|
{};
|
||||||
|
|
||||||
data.messages.forEach(message => {
|
data.messages.forEach((message) => {
|
||||||
let callsign = message.direction === 'receive' ? message.origin : message.destination;
|
let callsign =
|
||||||
|
message.direction === "receive" ? message.origin : message.destination;
|
||||||
|
|
||||||
if (!callsignList[callsign] || callsignList[callsign].timestamp < message.timestamp) {
|
if (
|
||||||
callsignList[callsign] = { timestamp: message.timestamp, body: message.body };
|
!callsignList[callsign] ||
|
||||||
|
callsignList[callsign].timestamp < message.timestamp
|
||||||
|
) {
|
||||||
|
callsignList[callsign] = {
|
||||||
|
timestamp: message.timestamp,
|
||||||
|
body: message.body,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
return callsignList;
|
return callsignList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function createSortedMessagesList(data: {
|
||||||
|
total_messages: number;
|
||||||
function createSortedMessagesList(data: { total_messages: number, messages: Message[] }): {[key: string]: Message[]} {
|
messages: Message[];
|
||||||
|
}): { [key: string]: Message[] } {
|
||||||
const callsignMessages: { [key: string]: Message[] } = {};
|
const callsignMessages: { [key: string]: Message[] } = {};
|
||||||
|
|
||||||
data.messages.forEach(message => {
|
data.messages.forEach((message) => {
|
||||||
let callsign = message.direction === 'receive' ? message.origin : message.destination;
|
let callsign =
|
||||||
|
message.direction === "receive" ? message.origin : message.destination;
|
||||||
|
|
||||||
if (!callsignMessages[callsign]) {
|
if (!callsignMessages[callsign]) {
|
||||||
callsignMessages[callsign] = [];
|
callsignMessages[callsign] = [];
|
||||||
|
@ -60,24 +76,19 @@ function createSortedMessagesList(data: { total_messages: number, messages: Mess
|
||||||
return callsignMessages;
|
return callsignMessages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export function newMessage(dxcall, body) {
|
export function newMessage(dxcall, body) {
|
||||||
sendFreedataMessage(dxcall, body)
|
sendFreedataMessage(dxcall, body);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* ------ TEMPORARY DUMMY FUNCTIONS --- */
|
/* ------ TEMPORARY DUMMY FUNCTIONS --- */
|
||||||
export function repeatMessageTransmission(id) {
|
export function repeatMessageTransmission(id) {
|
||||||
retransmitFreedataMessage(id);
|
retransmitFreedataMessage(id);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export function deleteCallsignFromDB(callsign) {
|
export function deleteCallsignFromDB(callsign) {
|
||||||
for (var message of chatStore.sorted_chat_list[callsign]) {
|
for (var message of chatStore.sorted_chat_list[callsign]) {
|
||||||
deleteFreedataMessage(message["id"]);
|
deleteFreedataMessage(message["id"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export function deleteMessageFromDB(id) {
|
export function deleteMessageFromDB(id) {
|
||||||
|
@ -85,10 +96,9 @@ export function deleteMessageFromDB(id){
|
||||||
}
|
}
|
||||||
|
|
||||||
export function requestMessageInfo(id) {
|
export function requestMessageInfo(id) {
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getMessageAttachment(id) {
|
export function getMessageAttachment(id) {
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue