Bugzilla – Attachment 102892 Details for
Bug 21927
Acq: Allow blank values in pull downs in the item form when subfield is mandatory
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 21927: Acq - Add blank values in pull downs of mandatory item subfields
Bug-21927-Acq---Add-blank-values-in-pull-downs-of-.patch (text/plain), 4.14 KB, created by
Katrin Fischer
on 2020-04-14 06:47:05 UTC
(
hide
)
Description:
Bug 21927: Acq - Add blank values in pull downs of mandatory item subfields
Filename:
MIME Type:
Creator:
Katrin Fischer
Created:
2020-04-14 06:47:05 UTC
Size:
4.14 KB
patch
obsolete
>From 3bd11b11d427005803a14b7db472e1d89fe0ea83 Mon Sep 17 00:00:00 2001 >From: Katrin Fischer <katrin.fischer.83@web.de> >Date: Sun, 12 Apr 2020 03:19:03 +0000 >Subject: [PATCH] Bug 21927: Acq - Add blank values in pull downs of mandatory > item subfields > >This is the same fix as on bug 14662, which fixed the behaviour in >cataloguing, but for the item form in acquisitions. > >The code assumes that if a subfield is marked as mandatory, there >should be no empty entry in the pull downs. > >This assumption is not correct, as it leads to the first entry of the >pull down being preselected if there is no default set. As the field >can never be 'unset', there will never be a 'required' warning. >Furthermore, it might be counterproductive to use mandatory fields, >as it might be easily forgotten to change the preselected value and >those mistakes will be hard to find. > >Correct behaviour would be to preselect the empty value when there is >no default. This means on saving the item an error message is triggered >and the cataloger is forced to set the value. > >To test: >- This is best tested with an ACQ framework, but default can be used > when no ACQ framework was created. >- In your MARC bibliographic framework: > - In 952 make itemtype, classification source and some other pull downs > like location or collection mandatory and set them to visibel if needed >- Create a new basket with 'items created while ordering' >- Add a new order, an existing record with 942$c set will work best >- Add items for your order line > - Verify that the first value of each pull down is preselected, > there is no way to trigger the 'required' error >- Apply patch > - Add a new order line > - Verify that classification source is preselected according to the > DefaultClassificationSource system preference (try unsetting it later) > - Verify all mandatory fields can be set to empty > - Verify that you can't save before correctly setting them > - Change your frameworks and set a default for itemtype (Ex: BK) and > another mandatory and non-mandatory field of your choice > - Add a new order line and item and verify the defaults are selected >--- > C4/Items.pm | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > >diff --git a/C4/Items.pm b/C4/Items.pm >index 94808084ac..c49963f271 100644 >--- a/C4/Items.pm >+++ b/C4/Items.pm >@@ -1668,8 +1668,7 @@ sub PrepareItemrecordDisplay { > #----- itemtypes > } elsif ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "itemtypes" ) { > my $itemtypes = Koha::ItemTypes->search_with_localization; >- push @authorised_values, "" >- unless ( $tagslib->{$tag}->{$subfield}->{mandatory} ); >+ push @authorised_values, ""; > while ( my $itemtype = $itemtypes->next ) { > push @authorised_values, $itemtype->itemtype; > $authorised_lib{$itemtype->itemtype} = $itemtype->translated_description; >@@ -1680,7 +1679,7 @@ sub PrepareItemrecordDisplay { > > #---- class_sources > } elsif ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "cn_source" ) { >- push @authorised_values, "" unless ( $tagslib->{$tag}->{$subfield}->{mandatory} ); >+ push @authorised_values, ""; > > my $class_sources = GetClassSources(); > my $default_source = $defaultvalue || C4::Context->preference("DefaultClassificationSource"); >@@ -1700,8 +1699,7 @@ sub PrepareItemrecordDisplay { > $tagslib->{$tag}->{$subfield}->{authorised_value}, > $branch_limit ? $branch_limit : () > ); >- push @authorised_values, "" >- unless ( $tagslib->{$tag}->{$subfield}->{mandatory} ); >+ push @authorised_values, ""; > while ( my ( $value, $lib ) = $authorised_values_sth->fetchrow_array ) { > push @authorised_values, $value; > $authorised_lib{$value} = $lib; >-- >2.11.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 21927
:
102892
|
103632
|
103682