From 7122ecc154245273b03b3ac26b7c76f47bbb419d Mon Sep 17 00:00:00 2001 From: anthony-ricci Date: Fri, 18 Oct 2024 20:45:21 -0400 Subject: [PATCH] Recording Seek (#7163) --- app/call_recordings/call_recordings.php | 2 +- app/ivr_menus/ivr_menu_edit.php | 8 ++++---- app/music_on_hold/music_on_hold.php | 2 +- app/recordings/recordings.php | 3 ++- app/voicemail_greetings/voicemail_greetings.php | 2 +- app/voicemails/voicemail_messages.php | 2 +- app/xml_cdr/xml_cdr.php | 2 +- themes/default/css.php | 3 ++- themes/default/template.php | 13 +++++++++++++ 9 files changed, 26 insertions(+), 11 deletions(-) diff --git a/app/call_recordings/call_recordings.php b/app/call_recordings/call_recordings.php index c8cbe4ee30..10081a2b4d 100644 --- a/app/call_recordings/call_recordings.php +++ b/app/call_recordings/call_recordings.php @@ -277,7 +277,7 @@ //playback progress bar if (permission_exists('call_recording_play')) { - echo "".(permission_exists('xml_cdr_details') ? "" : null)."\n"; + echo "".(permission_exists('xml_cdr_details') ? "" : null)."\n"; echo "\n"; // dummy row to maintain alternating background color } if (permission_exists('call_recording_play')) { diff --git a/app/ivr_menus/ivr_menu_edit.php b/app/ivr_menus/ivr_menu_edit.php index 2a7e02e796..5be1133117 100644 --- a/app/ivr_menus/ivr_menu_edit.php +++ b/app/ivr_menus/ivr_menu_edit.php @@ -838,7 +838,7 @@ echo "\n"; echo " ".$text['label-'.$instance_label]."\n"; echo "\n"; - echo "\n"; + echo "\n"; echo "\n"; echo "\n"; echo "\n"; @@ -911,7 +911,7 @@ echo "\n"; echo " ".$text['label-'.$instance_label]."\n"; echo "\n"; - echo "\n"; + echo "\n"; echo "\n"; echo "\n"; echo "\n"; @@ -1221,7 +1221,7 @@ echo "\n"; echo " ".$text['label-'.$instance_label]."\n"; echo "\n"; - echo "\n"; + echo "\n"; echo "\n"; echo "\n"; echo "\n"; @@ -1294,7 +1294,7 @@ echo "\n"; echo " ".$text['label-'.$instance_label]."\n"; echo "\n"; - echo "\n"; + echo "\n"; echo "\n"; echo "\n"; echo "\n"; diff --git a/app/music_on_hold/music_on_hold.php b/app/music_on_hold/music_on_hold.php index 9188550ae3..b594b5764a 100644 --- a/app/music_on_hold/music_on_hold.php +++ b/app/music_on_hold/music_on_hold.php @@ -566,7 +566,7 @@ case "ogg" : $stream_file_type = "audio/ogg"; break; } //playback progress bar - echo "\n"; + echo "\n"; echo "\n"; // dummy row to maintain alternating background color $list_row_link = "javascript:recording_play('".$row_uuid."','".urlencode($stream_file)."');"; echo "\n"; diff --git a/app/recordings/recordings.php b/app/recordings/recordings.php index e28c3a6e6b..61ab5ddad6 100644 --- a/app/recordings/recordings.php +++ b/app/recordings/recordings.php @@ -488,6 +488,7 @@ $col_count++; echo th_order_by('recording_description', $text['label-description'], $order_by, $order, null, "class='hide-sm-dn pct-25'"); + $col_count++; if (permission_exists('recording_edit') && !empty($_SESSION['theme']['list_row_edit_button']['boolean']) && $_SESSION['theme']['list_row_edit_button']['boolean'] == 'true') { echo "  \n"; } @@ -498,7 +499,7 @@ foreach ($recordings as $row) { //playback progress bar if (permission_exists('recording_play')) { - echo "\n"; + echo "\n"; echo "\n"; // dummy row to maintain alternating background color } if (permission_exists('recording_edit')) { diff --git a/app/voicemail_greetings/voicemail_greetings.php b/app/voicemail_greetings/voicemail_greetings.php index c0dbdb53c8..bc2eefcbb9 100644 --- a/app/voicemail_greetings/voicemail_greetings.php +++ b/app/voicemail_greetings/voicemail_greetings.php @@ -433,7 +433,7 @@ foreach ($greetings as $row) { //playback progress bar if (permission_exists('voicemail_greeting_play')) { - echo "\n"; + echo "\n"; echo "\n"; // dummy row to maintain alternating background color } if (permission_exists('voicemail_greeting_edit')) { diff --git a/app/voicemails/voicemail_messages.php b/app/voicemails/voicemail_messages.php index 803d213765..746d88b67c 100644 --- a/app/voicemails/voicemail_messages.php +++ b/app/voicemails/voicemail_messages.php @@ -434,7 +434,7 @@ $list_row_url = "javascript:recording_play('".escape($row['voicemail_message_uuid'])."','".$row['voicemail_id'].'|'.$row['voicemail_uuid']."','message');"; //playback progress bar - echo "\n"; + echo "\n"; echo "\n"; // dummy row to maintain alternating background color echo "\n"; diff --git a/app/xml_cdr/xml_cdr.php b/app/xml_cdr/xml_cdr.php index 5a95f420f2..301e744238 100644 --- a/app/xml_cdr/xml_cdr.php +++ b/app/xml_cdr/xml_cdr.php @@ -843,7 +843,7 @@ //recording playback if ($permission['xml_cdr_recording_play']) { - $content .= "\n"; + $content .= "\n"; $content .= "\n"; // dummy row to maintain alternating background color } if ($permission['xml_cdr_details']) { diff --git a/themes/default/css.php b/themes/default/css.php index c91ce2e4d1..1efe733e68 100644 --- a/themes/default/css.php +++ b/themes/default/css.php @@ -2049,6 +2049,7 @@ else { //default: white -webkit-box-shadow: 0 0 3px 0px rgba(); -moz-box-shadow: 0 0 3px 0px rgba(); box-shadow: 0 0 3px 0px rgba(); + pointer-events: none; } td.vtable.playback_progress_bar_background, @@ -2063,7 +2064,7 @@ else { //default: white background-image: linear-gradient(to bottom, rgba(0,0,0,0.10) 0%, transparent 100%); overflow: hidden; - padding-bottom: 3px; + padding-bottom: 0px; background-size: 100% 100% !important; background-repeat: no-repeat; cursor: pointer; diff --git a/themes/default/template.php b/themes/default/template.php index 2518eba074..a58db3a4bd 100644 --- a/themes/default/template.php +++ b/themes/default/template.php @@ -821,6 +821,19 @@ } } + function recording_seek(event, player_id, data, audio_type) { + if (recording_audio) { + if (document.getElementById('playback_progress_bar_background_' + player_id)) { + audio_player = document.getElementById('playback_progress_bar_background_' + player_id); + } + else if (document.getElementById('recording_progress_bar_' + player_id)) { + audio_player = document.getElementById('recording_progress_bar_' + player_id); + } + recording_audio.currentTime = (event.offsetX / audio_player.offsetWidth) * recording_audio.duration; + update_progress(recording_id_playing); + } + } + {/literal} //handle action bar style on scroll