61 lines
2.4 KiB
JavaScript
61 lines
2.4 KiB
JavaScript
function persistPatronSelections(form) {
|
|
var selected_patrons;
|
|
var persistence_checkbox = $("#maintain_selections_" + form)[0];
|
|
var persist = persistence_checkbox.checked
|
|
if (form === 'patron-merge-form' && persist) {
|
|
// We should only keep the id for the patron that is being kept in the merge
|
|
var keeper_checkboxes = $(".keeper")
|
|
var patron_to_keep = keeper_checkboxes.filter(":checked")
|
|
var patron_id = patron_to_keep[0].value
|
|
selected_patrons = [ patron_id ]
|
|
} else {
|
|
selected_patrons = persist ? JSON.parse(localStorage.getItem("patron_search_selections")) : [];
|
|
}
|
|
localStorage.setItem('patron_search_selections', JSON.stringify(selected_patrons));
|
|
}
|
|
|
|
function showPatronSelections(number) {
|
|
if (number === 0) {
|
|
$("#table_search_selections").hide()
|
|
} else {
|
|
$("#table_search_selections").show().find("span").text(__("Patrons selected: %s").format(number));
|
|
}
|
|
}
|
|
|
|
function prepSelections() {
|
|
var selected_patrons = JSON.parse(localStorage.getItem("patron_search_selections"));
|
|
if (selected_patrons && selected_patrons.length > 0) {
|
|
showPatronSelections(selected_patrons.length);
|
|
|
|
$('#merge-patrons').prop('disabled', true);
|
|
$("input.selection").each(function () {
|
|
var cardnumber = $(this).val();
|
|
if (selected_patrons.indexOf(cardnumber) >= 0) {
|
|
$(this).prop("checked", true);
|
|
}
|
|
});
|
|
|
|
if (selected_patrons.length > 1) {
|
|
$('#batch-mod-patrons, #merge-patrons, #patronlist-menu').removeClass("disabled").prop('disabled', false);
|
|
}
|
|
} else {
|
|
showPatronSelections(0);
|
|
$('#merge-patrons').prop('disabled', true);
|
|
$("input.selection").each(function () {
|
|
$(this).prop("checked", false);
|
|
});
|
|
$('#batch-mod-patrons, #merge-patrons, #patronlist-menu').addClass("disabled").prop('disabled', true);
|
|
}
|
|
}
|
|
|
|
$(document).ready(function () {
|
|
var form_identifier = $("#form-identifier").data();
|
|
if(form_identifier && form_identifier.hasOwnProperty('identifier') && form_identifier.identifier) {
|
|
var form_id = form_identifier.identifier;
|
|
if (form_id !== 'new-patron-list_form') {
|
|
$("#" + form_id).on("submit", function(e){
|
|
persistPatronSelections(form_id)
|
|
});
|
|
}
|
|
}
|
|
})
|