mirror of
https://github.com/m1k1o/neko.git
synced 2024-07-24 14:40:50 +12:00
file transfer permission state management
This commit is contained in:
@ -52,6 +52,15 @@ export const actions = actionTree(
|
||||
accessor.files._removeTransfer(transfer)
|
||||
},
|
||||
|
||||
cancelAllTransfers(store) {
|
||||
for (const t of accessor.files.transfers) {
|
||||
if (t.status !== 'completed') {
|
||||
t.abortController?.abort()
|
||||
}
|
||||
accessor.files.removeTransfer(t)
|
||||
}
|
||||
},
|
||||
|
||||
refresh(store) {
|
||||
if (!accessor.connected) {
|
||||
return
|
||||
|
@ -20,6 +20,9 @@ export const state = () => {
|
||||
|
||||
keyboard_layouts_list: {} as KeyboardLayouts,
|
||||
|
||||
file_transfer: false,
|
||||
unpriv_file_transfer: false,
|
||||
|
||||
broadcast_is_active: false,
|
||||
broadcast_url: '',
|
||||
}
|
||||
@ -58,6 +61,14 @@ export const mutations = mutationTree(state, {
|
||||
set('keyboard_layout', value)
|
||||
},
|
||||
|
||||
setFileTransfer(state, value: boolean) {
|
||||
state.file_transfer = value
|
||||
},
|
||||
|
||||
setUnprivFileTransfer(state, value: boolean) {
|
||||
state.unpriv_file_transfer = value
|
||||
},
|
||||
|
||||
setKeyboardLayoutsList(state, value: KeyboardLayouts) {
|
||||
state.keyboard_layouts_list = value
|
||||
},
|
||||
@ -79,6 +90,23 @@ export const actions = actionTree(
|
||||
}
|
||||
},
|
||||
|
||||
setLocalFileTransferStatus({ getters }, { admin, unpriv }) {
|
||||
accessor.settings.setFileTransfer(admin)
|
||||
accessor.settings.setUnprivFileTransfer(unpriv)
|
||||
|
||||
if (!admin || !accessor.user.admin && !unpriv) {
|
||||
accessor.files.cancelAllTransfers()
|
||||
}
|
||||
|
||||
if (accessor.client.tab === 'files' && !unpriv) {
|
||||
accessor.client.setTab('chat')
|
||||
}
|
||||
},
|
||||
|
||||
setGlobalFileTransferStatus({ getters}, { admin, unpriv }) {
|
||||
$client.sendMessage(EVENT.FILETRANSFER.STATUS, { admin, unpriv })
|
||||
},
|
||||
|
||||
broadcastStatus({ getters }, { url, isActive }) {
|
||||
accessor.settings.setBroadcastStatus({ url, isActive })
|
||||
},
|
||||
|
Reference in New Issue
Block a user