2023-09-10 06:23:40 +00:00
< script setup lang = "ts" >
import { saveSettingsToFile } from '../js/settingsHandler'
import { setActivePinia } from 'pinia' ;
import pinia from '../store/index' ;
setActivePinia ( pinia ) ;
import { useStateStore } from '../store/stateStore.js' ;
const state = useStateStore ( pinia ) ;
import { useSettingsStore } from '../store/settingsStore.js' ;
const settings = useSettingsStore ( pinia ) ;
2023-09-10 13:05:28 +00:00
import { startTNC , stopTNC } from '../js/daemon.js'
function startStopTNC ( ) {
switch ( state . tnc _running _state ) {
2023-09-13 17:33:03 +00:00
2023-09-10 13:05:28 +00:00
case 'stopped' :
2023-09-13 17:33:03 +00:00
// todo: is there another way of doing this, maybe more VueJS like?
settings . rx _audio = document . getElementById ( "audio_input_selectbox" ) . value
settings . tx _audio = document . getElementById ( "audio_output_selectbox" ) . value
startTNC ( )
2023-09-10 13:05:28 +00:00
break ;
case 'running' :
stopTNC ( )
break ;
default :
}
}
2023-09-10 06:23:40 +00:00
< / script >
< template >
< nav class = "navbar bg-body-tertiary border-bottom" >
< div class = "mx-auto" >
< div class = "btn-group" role = "group" >
< button
type = "button"
id = "startTNC"
class = "btn btn-sm btn-outline-secondary disabled me-4"
> TNC address : { { settings . tnc _host } }
< / button >
< / div >
< div class = "btn-group me-4" role = "group" >
< button
type = "button"
id = "startTNC"
class = "btn btn-sm btn-outline-success"
data - bs - toggle = "tooltip"
data - bs - trigger = "hover"
data - bs - html = "false"
title = "Start the TNC. Please set your audio and radio settings first!"
@ click = "startStopTNC()"
2023-09-10 13:05:28 +00:00
v - bind : class = "{ 'disabled' : state.tnc_running_state === 'running'}"
2023-09-10 06:23:40 +00:00
>
< i class = "bi bi-play-fill" > < / i >
< span class = "ms-2" > Start tnc < / span >
< / button >
< button
type = "button"
id = "stopTNC"
class = "btn btn-sm btn-outline-danger"
data - bs - toggle = "tooltip"
data - bs - trigger = "hover"
data - bs - html = "false"
title = "Stop the TNC."
@ click = "startStopTNC()"
2023-09-10 13:05:28 +00:00
v - bind : class = "{ 'disabled' : state.tnc_running_state === 'stopped'}"
2023-09-10 06:23:40 +00:00
>
< i class = "bi bi-stop-fill" > < / i >
< span class = "ms-2" > Stop tnc < / span >
< / button >
< / div >
< div class = "btn-group me-1" role = "group" >
< button
type = "button"
id = "startTNC"
class = "btn btn-sm btn-outline-secondary disabled"
2023-09-10 13:05:28 +00:00
> TNC state : { { state . tnc _running _state } }
2023-09-10 06:23:40 +00:00
< / button >
< / div >
< button
type = "button"
id = "openHelpModalStartStopTNC"
data - bs - toggle = "modal"
data - bs - target = "#startStopTNCHelpModal"
class = "btn me-4 p-0 border-0"
>
< i class = "bi bi-question-circle" style = "font-size: 1rem" > < / i >
< / button >
< / div >
<!--
< div class = "btn-toolbar" role = "toolbar" >
< span data -bs -placement = " bottom " data -bs -toggle = " tooltip " data -bs -trigger = " hover " data -bs -html = " false "
title = "View the received files. This is currently under development!" >
< button class = "btn btn-sm btn-primary me-2" data -bs -toggle = " offcanvas " data -bs -target = " # receivedFilesSidebar " id = "openReceivedFiles" type = "button" > < strong > Files < / strong >
< i class = "bi bi-file-earmark-arrow-up-fill" style = "font-size: 1rem; color: white;" > < / i >
< i class = "bi bi-file-earmark-arrow-down-fill" style = "font-size: 1rem; color: white;" > < / i >
< / button >
< / span > < span data -bs -placement = " bottom " data -bs -toggle = " tooltip " data -bs -trigger = " hover " data -bs -html = " false " title = "Send files through HF. This is currently under development!" >
< button class = "btn btn-sm btn-primary me-2" id = "openDataModule" data -bs -toggle = " offcanvas " data -bs -target = " # transmitFileSidebar " type = "button" style = "display: None;" > < strong > TX File < / strong >
< i class = "bi bi-file-earmark-arrow-up-fill" style = "font-size: 1rem; color: white;" > < / i >
< / button >
< / span > < span data -bs -placement = " bottom " data -bs -toggle = " tooltip " data -bs -trigger = " hover " data -bs -html = " true "
title = "Settings and Info" >
< / span >
< / div >
-- >
< / nav >
< / template >