transcribe audio dialog

This commit is contained in:
j 2025-01-24 19:54:18 +05:30
parent c67f7c122b
commit 34d1285e4b
3 changed files with 39 additions and 0 deletions

View file

@ -56,6 +56,7 @@
"canExportAnnotations": {"member": true, "staff": true, "admin": true},
"canImportAnnotations": {"member": true, "staff": true, "admin": true},
"canImportItems": {"member": true, "staff": true, "admin": true},
"canTranscribeAudio": {"staff": true, "admin": true},
"canManageDocuments": {"member": true, "staff": true, "admin": true},
"canManageEntities": {"member": true, "staff": true, "admin": true},
"canManageHome": {"staff": true, "admin": true},

View file

@ -63,6 +63,7 @@ examples (config.SITENAME.jsonc) that are part of this pan.do/ra distribution.
"canExportAnnotations": {"member": true, "staff": true, "admin": true},
"canImportAnnotations": {"member": true, "staff": true, "admin": true},
"canImportItems": {"member": true, "staff": true, "admin": true},
"canTranscribeAudio": {},
"canManageDocuments": {"member": true, "staff": true, "admin": true},
"canManageEntities": {"member": true, "staff": true, "admin": true},
"canManageHome": {"staff": true, "admin": true},

View file

@ -27,6 +27,7 @@ pandora.ui.editor = function(data) {
enableDownload: pandora.hasCapability('canDownloadVideo') >= data.rightslevel || data.editable,
enableExport: pandora.hasCapability('canExportAnnotations') || data.editable,
enableImport: pandora.hasCapability('canImportAnnotations') || data.editable,
enableTranscribe: pandora.hasCapability('canTranscribeAudio') && data.editable,
enableSetPosterFrame: !pandora.site.media.importFrames && data.editable,
enableSubtitles: ui.videoSubtitles,
find: ui.itemFind,
@ -432,6 +433,42 @@ pandora.ui.editor = function(data) {
togglesize: function(data) {
pandora.UI.set({videoSize: data.size});
},
transcribeaudio: function() {
const $dialog = pandora.ui.iconDialog({
buttons: [
Ox.Button({
id: 'cancel',
title: Ox._('Cancel')
})
.bindEvent({
click: function() {
$dialog.close();
}
}),
Ox.Button({
id: 'transcribe',
title: Ox._('Transcribe Audio')
})
.bindEvent({
click: function() {
$dialog.close();
pandora.api.transcribeAudio({
item: pandora.user.ui.item
})
}
})
],
content: Ox._(
'Are you sure you want to add automated transcription to "{0}"',
[data.title]
),
keys: {enter: 'transcribe', escape: 'cancel'},
title: Ox._(
'Transcribe {0} {1}', [data.title]
)
});
$dialog.open()
},
pandora_showannotations: function(data) {
that.options({showAnnotations: data.value});
},