<script>
$(function() {
var inputFileElement = $('#admin_product_audio_file');
// 音声ファイルがアップロードされるときの処理
inputFileElement.on('change', function(event) {
var inputFileElement = event.target;
var file = inputFileElement.files[0];
var validMimeTypes = [
'audio/mpeg',
'audio/mp3',
'audio/wav',
'audio/x-wav',
'audio/ogg',
'audio/midi',
'audio/x-midi'
];
if (file) {
if (validMimeTypes.includes(file.type)) {
const formData = new FormData();
formData.append("audio_file", file);
$.ajax({
url: "{{ url('admin_product_audio_file') }}",
type: 'POST',
data: formData,
contentType: false,
processData: false
}).done(function(data) {
var audioFileName = $('#admin_product_audio_file_name');
audioFileName.val(data);
}).fail(function() {
alert('更新に失敗しました。入力内容を確認してください。');
});
} else {
alert('音声ファイル形式でアップロードしてください (MP3, WAV, OGG, MIDI).');
inputFileElement.value = '';
}
}
});
});
</script>
<script>
$(function() {
var deleteAudioButton = $('#remove_audio_file');
var inputFileElement = $('#admin_product_audio_file');
var file = inputFileElement[0];
// 音声ファイル削除ボタンが押されるときの処理
deleteAudioButton.on('click', function(event) {
// URLから商品IDを取得
var currentUrl = location.href;
var urlParts = currentUrl.split('/');
var idIndex = urlParts.indexOf('product') + 2;
var productId = urlParts[idIndex].toString();
var baseUrl = "{{ url('admin_product_audio_delete', {'id': 0}) }}";
baseUrl = baseUrl.replace('/0', "");
var deleteUrl = baseUrl + '/' + productId;
if(confirm("この音声ファイルを削除しますか?")){
if (file) {
const formData = new FormData();
$.ajax({
url: deleteUrl,
type: 'DELETE',
data: null,
contentType: false,
processData: false
}).done(function(data) {
var audioDeleteMessage = $('#audio_delete_message');
audioDeleteMessage.text("音声ファイルを削除しました、完了するには登録ボタンを押してください");
var deleteAudioFileName = $('#admin_product_delete_audio_file_name');
deleteAudioFileName.val(data);
}).fail(function() {
alert('更新に失敗しました。入力内容を確認してください。');
});
} else {
alert('音声ファイル形式でアップロードしてください (MP3, WAV, OGG, MIDI).');
file.value = '';
}
}
});
});
</script>