Bug 29173: Fixed pre-filling of the search form from the "Replace record with ZR39.50/SRU" (Authority page detail)
Now this action has the same pre-filling behaviour as the "Edit" -> "Edit Record" -> "Replace Record via Z39.50/SRU Search" action.
Author Personal - Author Meeting/Conf. - Uniform Title and Subject are filled in if the subfield contains data (like the "Edit->Replace" action).
Unimarc and Marc21 specificities are supported.
Test Plan :
1) You must have a Z39.50/SRU server for authorities
2) Go to an authority detail page (Author - Uniform title - Subject)
3)After go to "Edit"-> "Edit record" -> "Replace record via..." or
choose "Replace Record.." directly
4) See that form is also prefilled with data now
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 26c26164ba
)
Signed-off-by: Jacob O'Mara <jacob.omara@ptfs-europe.com>
This commit is contained in:
parent
27d128c3ab
commit
d788bf07c2
1 changed files with 37 additions and 5 deletions
|
@ -24,19 +24,51 @@ use C4::Auth qw( get_template_and_user );
|
|||
use C4::Output qw( output_html_with_http_headers );
|
||||
use C4::Context;
|
||||
use C4::Breeding qw( Z3950Search Z3950SearchAuth );
|
||||
use MARC::Record;
|
||||
use Koha::Authorities;
|
||||
use Koha::Authority::Types;
|
||||
use C4::AuthoritiesMarc qw( GetAuthority );
|
||||
|
||||
my $input = CGI->new;
|
||||
my $dbh = C4::Context->dbh;
|
||||
my $error = $input->param('error');
|
||||
my $authid = $input->param('authid') || 0;
|
||||
|
||||
my $record = GetAuthority($authid);
|
||||
my $marc_flavour = C4::Context->preference('marcflavour');
|
||||
my $authfields_mapping = {
|
||||
'authorpersonal' => $marc_flavour eq 'MARC21' ? '100' : '200',
|
||||
'authorcorp' => $marc_flavour eq 'MARC21' ? '110' : '210',
|
||||
'authormeetingcon' => $marc_flavour eq 'MARC21' ? '111' : '210',
|
||||
'uniformtitle' => $marc_flavour eq 'MARC21' ? '130' : '230',
|
||||
'subject' => $marc_flavour eq 'MARC21' ? '150' : '250',
|
||||
};
|
||||
|
||||
my $nameany = $input->param('nameany');
|
||||
my $authorany = $input->param('authorany');
|
||||
my $authorcorp = $input->param('authorcorp');
|
||||
my $authorpersonal = $input->param('authorpersonal');
|
||||
my $authormeetingcon = $input->param('authormeetingcon');
|
||||
my $authorcorp =
|
||||
$record
|
||||
? $record->subfield( $authfields_mapping->{'authorcorp'}, 'a' )
|
||||
: $input->param('authorcorp');
|
||||
my $authorpersonal =
|
||||
$record
|
||||
? $record->subfield( $authfields_mapping->{'authorpersonal'}, 'a' )
|
||||
: $input->param('authorpersonal');
|
||||
my $authormeetingcon =
|
||||
$record
|
||||
? $record->subfield( $authfields_mapping->{'authormeetingcon'}, 'a' )
|
||||
: $input->param('authormeetingcon');
|
||||
|
||||
my $title = $input->param('title');
|
||||
my $uniformtitle = $input->param('uniformtitle');
|
||||
my $subject = $input->param('subject');
|
||||
my $uniformtitle =
|
||||
$record
|
||||
? $record->subfield( $authfields_mapping->{'uniformtitle'}, 'a' )
|
||||
: $input->param('uniformtitle');
|
||||
my $subject =
|
||||
$record
|
||||
? $record->subfield( $authfields_mapping->{'subject'}, 'a' )
|
||||
: $input->param('subject');
|
||||
|
||||
my $subjectsubdiv = $input->param('subjectsubdiv');
|
||||
my $srchany = $input->param('srchany');
|
||||
my $op = $input->param('op')||'';
|
||||
|
|
Loading…
Reference in a new issue