Music On Hold - List: Fix waveform for non-default audio files.

This commit is contained in:
fusionate
2026-01-27 09:03:03 -07:00
parent 048eb3a3cc
commit 2c30e7bcbc
3 changed files with 5 additions and 8 deletions

View File

@@ -594,7 +594,7 @@
echo " <td class='overflow'>".escape($stream_file)."</td>\n";
echo " <td class='button center no-link no-wrap'>";
echo "<audio id='recording_audio_".$row_uuid."' style='display: none;' preload='none' ontimeupdate=\"update_progress('".$row_uuid."')\" onended=\"recording_reset('".$row_uuid."');\" src='music_on_hold.php?action=download&id=".escape($row['music_on_hold_uuid'])."&file=".urlencode($stream_file)."' type='".$stream_file_type."'></audio>";
echo button::create(['type'=>'button','title'=>$text['label-play'].' / '.$text['label-pause'],'icon'=>$settings->get('theme', 'button_icon_play'),'id'=>'recording_button_'.$row_uuid,'onclick'=>"recording_play('".$row_uuid."','".urlencode($stream_file)."');"]);
echo button::create(['type'=>'button','title'=>$text['label-play'].' / '.$text['label-pause'],'icon'=>$settings->get('theme', 'button_icon_play'),'id'=>'recording_button_'.$row_uuid,'onclick'=>"recording_play('".$row_uuid."','".urlencode($stream_file)."&moh_id=".urlencode($row['music_on_hold_uuid'])."');"]);
echo button::create(['type'=>'button','title'=>$text['label-download'],'icon'=>$settings->get('theme', 'button_icon_download'),'link'=>"?action=download&id=".urlencode($row['music_on_hold_uuid'])."&file=".urlencode($stream_file)]);
echo " </td>\n";
echo " <td class='right no-wrap hide-xs'>".escape($stream_file_size)."</td>\n";

View File

@@ -403,7 +403,7 @@ class switch_music_on_hold {
$sql .= "and (domain_uuid = :domain_uuid " . (permission_exists('music_on_hold_global') ? "or domain_uuid is null " : null) . ") ";
$parameters['domain_uuid'] = $this->domain_uuid;
}
$rows = $this->database->select($sql, $parameters, 'all');
$rows = $this->database->select($sql, $parameters ?? null, 'all');
if (is_array($rows) && @sizeof($rows) != 0) {
foreach ($rows as $row) {
$streams[$row['music_on_hold_uuid']] = $row;

View File

@@ -40,19 +40,16 @@
}
//create the waveform file
if (is_uuid($_GET['id']) && !empty($_GET['data'])) {
if (is_uuid($_GET['id']) && is_uuid($_GET['moh_id']) && !empty($_GET['data'])) {
//get the music_on_hold array
$sql = "select music_on_hold_path from v_music_on_hold ";
$sql .= "where music_on_hold_uuid = :id ";
$sql .= "where music_on_hold_uuid = :moh_id ";
if (!permission_exists('music_on_hold_all')) {
$sql .= "and (domain_uuid = :domain_uuid or domain_uuid is null) ";
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
}
if (permission_exists('music_on_hold_domain')) {
$sql .= "or domain_uuid is null ";
}
$parameters['id'] = $_GET['id'];
$parameters['moh_id'] = $_GET['moh_id'];
$stream_path = $database->select($sql, $parameters ?? null, 'column');
unset($sql, $parameters);