Bugzilla – Attachment 19965 Details for
Bug 10648
In records merge greatest field can not be added
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
[3.12.x] Bug 10648 - In records merge greatest field can not be added
0001-Bug-10648-In-records-merge-greatest-field-can-not-be.patch (text/plain), 3.32 KB, created by
Fridolin Somers
on 2013-07-26 15:23:13 UTC
(
hide
)
Description:
[3.12.x] Bug 10648 - In records merge greatest field can not be added
Filename:
MIME Type:
Creator:
Fridolin Somers
Created:
2013-07-26 15:23:13 UTC
Size:
3.32 KB
patch
obsolete
>From 1b242876d02a9a0d200541c1d01f19fcbfebae70 Mon Sep 17 00:00:00 2001 >From: Fridolyn SOMERS <fridolyn.somers@biblibre.com> >Date: Fri, 26 Jul 2013 17:21:14 +0200 >Subject: [PATCH] Bug 10648 - In records merge greatest field can not be added > >When merging 2 records (/cgi-bin/koha/cataloguing/merge.pl), the destination record is build using the fields and subfields checked in source records. >When a field is checked, the javascript code searches in destination record a field with a greater tag number to insert new field before. >When the new field tag number is greater than all existing field tag numbers, the field is not added. > >This patch corrects this by adding at end if no greater field tag number exists. Also adds a sort of fields by tag number because all mergo code is based on this. > >Test plan : >- Add to a framework a repeatable field with the greates non existing tag number. For example 998. >- Edit to records with this framework and add them a value in this tag. >- Put those records is a list >- Go to this list and check the two records >- Click on "Merge selected" >- Click on next >- Go to second source record >- Click on the greatest tag number. for example 998. >=> The field is added at the end of destination record >--- > cataloguing/merge.pl | 2 +- > .../prog/en/modules/cataloguing/merge.tt | 23 +++++++++++++------- > 2 files changed, 16 insertions(+), 9 deletions(-) > >diff --git a/cataloguing/merge.pl b/cataloguing/merge.pl >index 019b468..cc510ed 100755 >--- a/cataloguing/merge.pl >+++ b/cataloguing/merge.pl >@@ -238,7 +238,7 @@ sub _createMarcHash { > my @fields = $record->fields(); > > >- foreach my $field (@fields) { >+ foreach my $field ( sort { $a->tag() <=> $b->tag() } @fields) { > my $fieldtag = $field->tag(); > if ($fieldtag < 10) { > if ($tagslib->{$fieldtag}->{'@'}->{'tab'} >= 0) { >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/merge.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/merge.tt >index 3ccd77f..9f4fa51 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/merge.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/merge.tt >@@ -101,8 +101,9 @@ $(document).ready(function(){ > // If not, we add the subfield to the first matching field > var where = 0; > $("#resultul li span.field").each(function() { >- if (where == 0 && $(this).text() == field) { >+ if ($(this).text() == field) { > where = this; >+ return false; // break each() > } > }); > >@@ -127,14 +128,20 @@ $(document).ready(function(){ > } else { > // If we are a field > var where = 0; >- // Find where to add the field >- $("#resultul li span.field").each(function() { >- if (where == 0 && $(this).text() > field) { >- where = this; >- } >- }); >+ // Find a greater field to add before >+ $("#resultul li span.field").each(function() { >+ if ($(this).text() > field) { >+ where = this; >+ return false; // break each() >+ } >+ }); >+ if (where) { >+ $(where).parent().before(clone); >+ } else { >+ // No greater field, add to the end >+ $("#resultul").append(clone); >+ } > >- $(where).parent().before(clone); > } > } > } else { >-- >1.7.10.4 >
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 10648
:
19963
|
19965
|
21176
|
21177
|
21205
|
21838
|
22697
|
23877
|
29581
|
29843