Bug 15030 - Certain values in serials' items are lost on next edit
When editing serials subscription, we can edit them but some values are not pulled from the DB correctly to be put in the edit box. If not noticed, the value will be overwritten on the next save. Test: - Create a subscription - Edit itemcallnumber (952o?) and make sure to have a different value than the default one. - Save. - Edit it again - The saved value is not there. This is true for itemcallnumber and a few other fields. This was caused by calls to ->field($subfield). This would always fail, of course. Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Josef Moravec <josef.moravec@gmail.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> (cherry picked from commit4cdcdb3cb5) Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> (cherry picked from commit3f084924e6) Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
This commit is contained in:
parent
7abba8fccb
commit
9bc4064947
|
|
@ -2967,7 +2967,7 @@ sub PrepareItemrecordDisplay {
|
|||
if ( $tagslib->{$tag}->{$subfield}->{kohafield} eq 'items.itemcallnumber'
|
||||
&& $defaultvalues
|
||||
&& $defaultvalues->{'callnumber'} ) {
|
||||
if( $itemrecord and $defaultvalues and not $itemrecord->field($subfield) ){
|
||||
if( $itemrecord and $defaultvalues and not $itemrecord->subfield($tag,$subfield) ){
|
||||
# if the item record exists, only use default value if the item has no callnumber
|
||||
$defaultvalue = $defaultvalues->{callnumber};
|
||||
} elsif ( !$itemrecord and $defaultvalues ) {
|
||||
|
|
@ -2978,7 +2978,7 @@ sub PrepareItemrecordDisplay {
|
|||
if ( ( $tagslib->{$tag}->{$subfield}->{kohafield} eq 'items.holdingbranch' || $tagslib->{$tag}->{$subfield}->{kohafield} eq 'items.homebranch' )
|
||||
&& $defaultvalues
|
||||
&& $defaultvalues->{'branchcode'} ) {
|
||||
if ( $itemrecord and $defaultvalues and not $itemrecord->field($subfield) ) {
|
||||
if ( $itemrecord and $defaultvalues and not $itemrecord->subfield($tag,$subfield) ) {
|
||||
$defaultvalue = $defaultvalues->{branchcode};
|
||||
}
|
||||
}
|
||||
|
|
@ -2986,7 +2986,7 @@ sub PrepareItemrecordDisplay {
|
|||
&& $defaultvalues
|
||||
&& $defaultvalues->{'location'} ) {
|
||||
|
||||
if ( $itemrecord and $defaultvalues and not $itemrecord->field($subfield) ) {
|
||||
if ( $itemrecord and $defaultvalues and not $itemrecord->subfield($tag,$subfield) ) {
|
||||
# if the item record exists, only use default value if the item has no locationr
|
||||
$defaultvalue = $defaultvalues->{location};
|
||||
} elsif ( !$itemrecord and $defaultvalues ) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue