--- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/showdiffmarc.tt
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/showdiffmarc.tt
@@ -1,50 +0,0 @@
-[% INCLUDE 'doc-head-open.inc' %]
-
-
-
Original
- [% IF ( ERROR_FORMATTED1 ) %]
-
The biblionumber [% BIBLIONUMBER %] doesn't match to any record.
- [% ELSE %]
-
[% BIBLIOTITLE %]
-
[% MARC_FORMATTED1 %]
- [% END %]
-
-
-
Imported
- [% IF ( ERROR_FORMATTED2 ) %]
-
The importid [% IMPORTID %] doesn't match to any record.
- [% ELSE %]
-
[% IMPORTTITLE %]
-
[% MARC_FORMATTED2 %]
- [% END %]
-
-
-
-[% INCLUDE 'intranet-bottom.inc' %]
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/showdiffmarc.tt
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/showdiffmarc.tt
@@ -0,0 +1,55 @@
+[% INCLUDE 'doc-head-open.inc' %]
+
+
+
+
Original
+ [% IF ( ERROR_FORMATTED1 ) %]
+
+
The biblionumber [% BIBLIONUMBER %] doesn't match any existing record.
+
+ [% ELSE %]
+
[% BIBLIOTITLE %]
+
[% MARC_FORMATTED1 %]
+ [% END %]
+
+
+
Imported
+ [% IF ( ERROR_FORMATTED2 ) %]
+
+
The import id number [% IMPORTID %] doesn't match any existing record.
+
+ [% ELSE %]
+
[% IMPORTTITLE %]
+
[% MARC_FORMATTED2 %]
+ [% END %]
+
+
+
+
Return to staged MARC batch [% batchid %]
+[% INCLUDE 'intranet-bottom.inc' %]
--- a/tools/batch_records_ajax.pl
+++ a/tools/batch_records_ajax.pl
@@ -107,7 +107,7 @@ foreach my $record (@$records) {
|| q{},
score => $#$match > -1 ? $match->[0]->{'score'} : 0,
match_id => $match_id,
- diff_url => $match_id ? "/cgi-bin/koha/catalogue/showdiffmarc.pl?importid=$record->{import_record_id}&id=$match_id" : undef
+ diff_url => $match_id ? "/cgi-bin/koha/tools/showdiffmarc.pl?batchid=$import_batch_id&importid=$record->{import_record_id}&id=$match_id" : undef
};
}
--- a/tools/showdiffmarc.pl
+++ a/tools/showdiffmarc.pl
@@ -0,0 +1,101 @@
+#!/usr/bin/perl
+
+# Koha library project www.koha-community.org
+
+# Copyright 2011 Libéo
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 3 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+use strict;
+use warnings;
+
+# standard or CPAN modules used
+use CGI qw(:standard);
+use DBI;
+
+# Koha modules used
+use C4::Context;
+use C4::Output;
+use C4::Auth;
+use C4::Biblio;
+use C4::ImportBatch;
+use XML::LibXSLT;
+use XML::LibXML;
+
+
+# Input params
+my $input = new CGI;
+my $biblionumber = $input->param('id');
+my $importid = $input->param('importid');
+my $batchid = $input->param('batchid');
+
+
+if ( $biblionumber and $importid ) {
+
+ # Init vars
+ my ($recordBiblionumber, $recordImportid, $biblioTitle, $importTitle, $formatted1, $formatted2,
+ $errorFormatted1, $errorFormatted2);
+
+
+ # Prepare template
+ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+ {
+ template_name => "tools/showdiffmarc.tt",
+ query => $input,
+ type => "intranet",
+ authnotrequired => 0,
+ flagsrequired => { tools => 'manage_staged_marc' },
+ debug => 1,
+ }
+ );
+
+
+ $recordBiblionumber =GetMarcBiblio($biblionumber);
+ if( $recordBiblionumber ) {
+ $formatted1 = $recordBiblionumber->as_formatted;
+ my $data = GetBiblioData($biblionumber);
+ $biblioTitle = $data->{title};
+ } else {
+ $errorFormatted1 = 1;
+ }
+
+ my ($marc,$encoding) = GetImportRecordMarc($importid);
+ if( $marc ) {
+ $recordImportid = MARC::Record->new_from_usmarc($marc) ;
+ $formatted2 = $recordImportid->as_formatted;
+ my $biblio = GetImportBiblios($importid);
+ $importTitle = $biblio->[0]->{'title'};
+ } else {
+ $errorFormatted2 = 1;
+ }
+
+
+ $template->param( SCRIPT_NAME => $ENV{'SCRIPT_NAME'},
+ BIBLIONUMBER => $biblionumber,
+ IMPORTID => $importid,
+ BIBLIOTITLE => $biblioTitle,
+ IMPORTTITLE => $importTitle,
+ MARC_FORMATTED1 => $formatted1,
+ MARC_FORMATTED2 => $formatted2,
+ ERROR_FORMATTED1 => $errorFormatted1,
+ ERROR_FORMATTED2 => $errorFormatted2,
+ batchid => $batchid
+ );
+
+ output_html_with_http_headers $input, $cookie, $template->output;
+} else {
+ exit;
+}
--