|
|
|
@@ -61,9 +61,20 @@
|
|
|
|
|
<div class="form-text">Nombre total d'exercices à générer (entre 1 et 100)</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="mb-3 form-check">
|
|
|
|
|
<input type="checkbox" class="form-check-input" id="multiplicationOnly">
|
|
|
|
|
<label class="form-check-label" for="multiplicationOnly">Générer uniquement des multiplications</label>
|
|
|
|
|
<div class="mb-3">
|
|
|
|
|
<label class="form-label">Types d'exercices</label>
|
|
|
|
|
<div class="form-check">
|
|
|
|
|
<input class="form-check-input" type="radio" name="exerciseType" id="multiplicationOnly" value="multiplication" checked>
|
|
|
|
|
<label class="form-check-label" for="multiplicationOnly">
|
|
|
|
|
Multiplications uniquement
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="form-check">
|
|
|
|
|
<input class="form-check-input" type="radio" name="exerciseType" id="multiplicationAndDivision" value="both">
|
|
|
|
|
<label class="form-check-label" for="multiplicationAndDivision">
|
|
|
|
|
Multiplications ET divisions
|
|
|
|
|
</label>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="mb-3">
|
|
|
|
@@ -258,7 +269,7 @@
|
|
|
|
|
minTable: document.getElementById('minTable').value,
|
|
|
|
|
maxTable: document.getElementById('maxTable').value,
|
|
|
|
|
numExercises: document.getElementById('numExercises').value,
|
|
|
|
|
multiplicationOnly: document.getElementById('multiplicationOnly').checked,
|
|
|
|
|
exerciseType: document.querySelector('input[name="exerciseType"]:checked').value,
|
|
|
|
|
maxFirstOperand: document.getElementById('maxFirstOperand').value
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
@@ -279,7 +290,18 @@
|
|
|
|
|
document.getElementById('minTable').value = exerciseValues.minTable || 1;
|
|
|
|
|
document.getElementById('maxTable').value = exerciseValues.maxTable || 10;
|
|
|
|
|
document.getElementById('numExercises').value = exerciseValues.numExercises || 15;
|
|
|
|
|
document.getElementById('multiplicationOnly').checked = exerciseValues.multiplicationOnly || false;
|
|
|
|
|
|
|
|
|
|
// Restore radio button selection
|
|
|
|
|
if (exerciseValues.exerciseType) {
|
|
|
|
|
const radio = document.querySelector(`input[name="exerciseType"][value="${exerciseValues.exerciseType}"]`);
|
|
|
|
|
if (radio) {
|
|
|
|
|
radio.checked = true;
|
|
|
|
|
}
|
|
|
|
|
} else if (exerciseValues.multiplicationOnly !== undefined) {
|
|
|
|
|
// Handle legacy storage format
|
|
|
|
|
document.getElementById('multiplicationOnly').checked = exerciseValues.multiplicationOnly;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
document.getElementById('maxFirstOperand').value = exerciseValues.maxFirstOperand || 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -471,10 +493,14 @@
|
|
|
|
|
document.getElementById('minTable').addEventListener('change', saveFormValues);
|
|
|
|
|
document.getElementById('maxTable').addEventListener('change', saveFormValues);
|
|
|
|
|
document.getElementById('numExercises').addEventListener('change', saveFormValues);
|
|
|
|
|
document.getElementById('multiplicationOnly').addEventListener('change', saveFormValues);
|
|
|
|
|
document.getElementById('maxFirstOperand').addEventListener('change', saveFormValues);
|
|
|
|
|
document.getElementById('numOperationExercises').addEventListener('change', saveFormValues);
|
|
|
|
|
|
|
|
|
|
// Add event listeners for radio buttons
|
|
|
|
|
document.querySelectorAll('input[name="exerciseType"]').forEach(radio => {
|
|
|
|
|
radio.addEventListener('change', saveFormValues);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// Event listener for select all button
|
|
|
|
|
document.getElementById('selectAllBtn').addEventListener('click', function() {
|
|
|
|
|
document.querySelectorAll('.file-checkbox').forEach(checkbox => {
|
|
|
|
@@ -577,7 +603,8 @@
|
|
|
|
|
const minTable = parseInt(document.getElementById('minTable').value);
|
|
|
|
|
const maxTable = parseInt(document.getElementById('maxTable').value);
|
|
|
|
|
const numExercises = parseInt(document.getElementById('numExercises').value);
|
|
|
|
|
const multiplicationOnly = document.getElementById('multiplicationOnly').checked;
|
|
|
|
|
const exerciseType = document.querySelector('input[name="exerciseType"]:checked').value;
|
|
|
|
|
const multiplicationOnly = (exerciseType === 'multiplication');
|
|
|
|
|
const maxFirstOperand = parseInt(document.getElementById('maxFirstOperand').value);
|
|
|
|
|
|
|
|
|
|
const generateBtn = document.getElementById('generateBtn');
|
|
|
|
|