Bug 32610: Add date option to extended patron attributes administration page

With this page it will be possible to configure patron attributes
to be a date.

To test:
* Go to administration > patron attribute types
* Add a new patron attribute of type date
  * Dates cannot be repeatable or linked to an AV category, so:
  * Verify, if you check repeatable, date is disabled
  * Verify, if you select an AV category, date disabled
  * Verify, if you check date, AV category and repeatable are disabled
* Save the new patron attribute
* Edit the patron attribute
  * Verify all settings have been kept/stored correctly

Signed-off-by: Philip Orr <philip.orr@lmscloud.de>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This commit is contained in:
Katrin Fischer 2023-03-18 10:05:32 +00:00 committed by Katrin Fischer
parent 4d8228c8fe
commit ff306da736
No known key found for this signature in database
GPG Key ID: 0EF6E2C03357A834
2 changed files with 36 additions and 0 deletions

View File

@ -114,6 +114,7 @@ sub add_update_attribute_type {
my $description = $input->param('description');
my $repeatable = $input->param('repeatable') ? 1 : 0;
my $unique_id = $input->param('unique_id') ? 1 : 0;
my $is_date = $input->param('is_date') ? 1 : 0;
my $opac_display = $input->param('opac_display') ? 1 : 0;
my $opac_editable = $input->param('opac_editable') ? 1 : 0;
my $staff_searchable = $input->param('staff_searchable') ? 1 : 0;
@ -150,6 +151,7 @@ sub add_update_attribute_type {
{
repeatable => $repeatable,
unique_id => $unique_id,
is_date => $is_date,
opac_display => $opac_display,
opac_editable => $opac_editable,
staff_searchable => $staff_searchable,

View File

@ -149,6 +149,16 @@
cannot be given to a different record.</span>
</li>
<li>
<label for="is_date">Is a date: </label>
[% IF attribute_type.is_date %]
<input type="checkbox" id="is_date" name="is_date" checked="checked" />
[% ELSE %]
<input type="checkbox" id="is_date" name="is_date" />
[% END %]
<span class="hint">If checked, attribute will be a date. Date attributes cannot be repeatable or linked to an authorised value category.</span>
</li>
<li><label for="opac_display">Display in OPAC: </label>
[% IF attribute_type AND attribute_type.opac_display %]
<input type="checkbox" id="opac_display" name="opac_display" checked="checked" />
@ -431,6 +441,30 @@
}
} ).change();
$("#is_date").change( function() {
if ( this.checked ) {
$("#repeatable, #authorised_value_category").attr('disabled', true).parent().attr('aria-disabled', 'true');
} else {
$("#repeatable, #authorised_value_category").removeAttr('disabled').parent().removeAttr('aria-disabled');
}
} ).change();
$("#repeatable").change( function() {
if ( this.checked ) {
$("#is_date").attr('disabled', true).parent().attr('aria-disabled', 'true');
} else {
$("#is_date").removeAttr('disabled').parent().removeAttr('aria-disabled');
}
} ).change();
$("#authorised_value_category").change( function() {
if ( $(this).val() != "" ) {
$("#is_date").attr('disabled', true).parent().attr('aria-disabled', 'true');
} else {
$("#is_date").removeAttr('disabled').parent().removeAttr('aria-disabled');
}
} ).change();
$(".patron_attributes_types").each(function(){
var tableid = $(this).attr("id");
KohaTable( tableid, {