Lines 27-32
use C4::Auth qw/check_api_auth/;
Link Here
|
27 |
use C4::Biblio; |
27 |
use C4::Biblio; |
28 |
use C4::Items; |
28 |
use C4::Items; |
29 |
use XML::Simple; |
29 |
use XML::Simple; |
|
|
30 |
use C4::Charset; |
30 |
|
31 |
|
31 |
my $query = new CGI; |
32 |
my $query = new CGI; |
32 |
binmode STDOUT, ':encoding(UTF-8)'; |
33 |
binmode STDOUT, ':encoding(UTF-8)'; |
Lines 82-93
sub update_bib {
Link Here
|
82 |
my $inxml = $query->param('POSTDATA'); |
83 |
my $inxml = $query->param('POSTDATA'); |
83 |
print $query->header(-type => 'text/xml'); |
84 |
print $query->header(-type => 'text/xml'); |
84 |
|
85 |
|
85 |
my $record = eval {MARC::Record::new_from_xml( $inxml, "utf8", C4::Context->preference('marcflavour'))}; |
86 |
my $marcflavour = C4::Context->preference('marcflavour'); |
|
|
87 |
my $record = eval {MARC::Record::new_from_xml( $inxml, "utf8", $marcflavour)}; |
86 |
my $do_not_escape = 0; |
88 |
my $do_not_escape = 0; |
87 |
if ($@) { |
89 |
if ($@) { |
88 |
$result->{'status'} = "failed"; |
90 |
$result->{'status'} = "failed"; |
89 |
$result->{'error'} = $@; |
91 |
$result->{'error'} = $@; |
90 |
} else { |
92 |
} else { |
|
|
93 |
# fix character set |
94 |
if ($record->encoding() eq 'MARC-8') { |
95 |
my ($guessed_charset, $charset_errors); |
96 |
($record, $guessed_charset, $charset_errors) = MarcToUTF8Record($record, $marcflavour); |
97 |
} |
98 |
|
91 |
my $fullrecord = $record->clone(); |
99 |
my $fullrecord = $record->clone(); |
92 |
my ( $itemtag, $itemsubfield ) = |
100 |
my ( $itemtag, $itemsubfield ) = |
93 |
GetMarcFromKohaField( "items.itemnumber", '' ); |
101 |
GetMarcFromKohaField( "items.itemnumber", '' ); |
94 |
- |
|
|