SCVからマスターをインポートするレイアウトを復元
This commit is contained in:
parent
1afeaa6022
commit
c3fcf7ea13
@ -244,6 +244,41 @@
|
||||
}
|
||||
}
|
||||
|
||||
async function uploadCsvFile(event) {
|
||||
event.preventDefault();
|
||||
const form = event.target;
|
||||
const formData = new FormData(form);
|
||||
|
||||
try {
|
||||
const response = await fetch('/upload_quiz_master', {
|
||||
method: 'POST',
|
||||
body: formData
|
||||
});
|
||||
const result = await response.json();
|
||||
document.getElementById('message').innerText = result.message || result.error;
|
||||
if (!result.error) {
|
||||
form.reset();
|
||||
}
|
||||
} catch (error) {
|
||||
document.getElementById('message').innerText = 'エラーが発生しました: ' + error.message;
|
||||
}
|
||||
}
|
||||
|
||||
async function importCsvData() {
|
||||
try {
|
||||
const response = await fetch('/import_quiz_master', {
|
||||
method: 'POST'
|
||||
});
|
||||
const result = await response.json();
|
||||
document.getElementById('message').innerText = result.message || result.error;
|
||||
if (!result.error) {
|
||||
fetchQuizMasters();
|
||||
}
|
||||
} catch (error) {
|
||||
document.getElementById('message').innerText = 'エラーが発生しました: ' + error.message;
|
||||
}
|
||||
}
|
||||
|
||||
function closeUpdateModal() {
|
||||
document.getElementById('updateModal').style.display = 'none';
|
||||
document.getElementById('addQuizMasterForm').style.display = 'block';
|
||||
@ -295,6 +330,18 @@
|
||||
<button type="submit">追加</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- CSVファイルアップロードフォーム -->
|
||||
<form id="uploadCsvForm" onsubmit="uploadCsvFile(event)" style="margin-top: 20px;">
|
||||
<div class="form-group">
|
||||
<label for="csvFile">CSVファイルを選択:</label>
|
||||
<input type="file" name="file" id="csvFile" accept=".csv" required>
|
||||
</div>
|
||||
<div class="button-group">
|
||||
<button type="submit">アップロード</button>
|
||||
</div>
|
||||
</form>
|
||||
<button onclick="importCsvData()">CSVデータをインポート</button>
|
||||
</div>
|
||||
|
||||
<!-- 編集用モーダル -->
|
||||
@ -334,9 +381,9 @@
|
||||
|
||||
<!-- 音量調整と停止ボタン -->
|
||||
<div style="margin-top: 20px;">
|
||||
<label for="volumeSlider">プレビュー音量:</label>
|
||||
<label for="volumeSlider">プレビュー再生音量:</label>
|
||||
<input type="range" id="volumeSlider" min="0" max="100" value="10" oninput="changeVolume(this.value)">
|
||||
<button onclick="stopAudio()">レビュー再生停止</button>
|
||||
<button onclick="stopAudio()">プレビュー再生停止</button>
|
||||
</div>
|
||||
|
||||
<div class="table-container">
|
||||
|
Loading…
Reference in New Issue
Block a user