Enhance exam order editing: hide edit button during editing, improve save button attributes, and clean up controls after saving
This commit is contained in:
@@ -143,7 +143,8 @@
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
$("#button-edit-order").click(function (evt) {
|
$("#button-edit-order").click(function (evt) {
|
||||||
$(this).remove();
|
// hide the edit button while in edit mode so we can restore it after saving
|
||||||
|
$(this).addClass('d-none').prop('disabled', true);
|
||||||
sortable('.sortable');
|
sortable('.sortable');
|
||||||
$("#full-question-list").addClass('sorting');
|
$("#full-question-list").addClass('sorting');
|
||||||
|
|
||||||
@@ -215,7 +216,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
$("#full-question-list").after($(
|
$("#full-question-list").after($(
|
||||||
"<button title='click and drag questions to change order'>Save exam order</button>"
|
"<button id='save-order-button' class='btn btn-primary btn-sm' title='click and drag questions to change order'>Save exam order</button>"
|
||||||
).click(() => {
|
).click(() => {
|
||||||
new_order = [];
|
new_order = [];
|
||||||
$("#full-question-list li").each((n, el) => {
|
$("#full-question-list li").each((n, el) => {
|
||||||
@@ -237,6 +238,20 @@
|
|||||||
if (data.status == "success") {
|
if (data.status == "success") {
|
||||||
toastr.info('Exam order changed.')
|
toastr.info('Exam order changed.')
|
||||||
renumber();
|
renumber();
|
||||||
|
|
||||||
|
// cleanup ordering controls and restore edit button
|
||||||
|
$('#random-order-button').remove();
|
||||||
|
$('#save-order-button').remove();
|
||||||
|
$('#cancel-order-button').remove();
|
||||||
|
// remove per-item move controls
|
||||||
|
$('#full-question-list .move-up, #full-question-list .move-down').remove();
|
||||||
|
// remove fallback delete buttons if desired (keep server-side removes intact)
|
||||||
|
$('#full-question-list .exam-question-delete').remove();
|
||||||
|
// remove visual sorting state
|
||||||
|
$('#full-question-list').removeClass('sorting');
|
||||||
|
|
||||||
|
// restore the edit button so the user can re-enter edit mode
|
||||||
|
$('#button-edit-order').removeClass('d-none').prop('disabled', false);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.always(function () {
|
.always(function () {
|
||||||
|
|||||||
Reference in New Issue
Block a user