projects
/
koha_gimpoz
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Bug 6716 Document deleteditems table
[koha_gimpoz]
/
C4
/
Koha.pm
diff --git
a/C4/Koha.pm
b/C4/Koha.pm
index
0836669
..
06b2ec5
100644
(file)
--- a/
C4/Koha.pm
+++ b/
C4/Koha.pm
@@
-1051,7
+1051,7
@@
sub GetAuthorisedValueCategories {
my $sth = $dbh->prepare("SELECT DISTINCT category FROM authorised_values ORDER BY category");
$sth->execute;
my @results;
my $sth = $dbh->prepare("SELECT DISTINCT category FROM authorised_values ORDER BY category");
$sth->execute;
my @results;
- while (
my $category = $sth->fetchrow_array
) {
+ while (
defined (my $category = $sth->fetchrow_array)
) {
push @results, $category;
}
return \@results;
push @results, $category;
}
return \@results;
@@
-1203,21
+1203,22
@@
sub GetNormalizedUPC {
my ($record,$marcflavour) = @_;
my (@fields,$upc);
my ($record,$marcflavour) = @_;
my (@fields,$upc);
- if ($marcflavour eq '
MARC21
') {
- @fields = $record->field('0
24
');
+ if ($marcflavour eq '
UNIMARC
') {
+ @fields = $record->field('0
72
');
foreach my $field (@fields) {
foreach my $field (@fields) {
- my $indicator = $field->indicator(1);
my $upc = _normalize_match_point($field->subfield('a'));
my $upc = _normalize_match_point($field->subfield('a'));
- if ($
indicator == 1 and $
upc ne '') {
+ if ($upc ne '') {
return $upc;
}
}
return $upc;
}
}
+
}
}
- else { # assume
unimarc if not marc21
- @fields = $record->field('0
72
');
+ else { # assume
marc21 if not unimarc
+ @fields = $record->field('0
24
');
foreach my $field (@fields) {
foreach my $field (@fields) {
+ my $indicator = $field->indicator(1);
my $upc = _normalize_match_point($field->subfield('a'));
my $upc = _normalize_match_point($field->subfield('a'));
- if ($upc ne '') {
+ if ($
indicator == 1 and $
upc ne '') {
return $upc;
}
}
return $upc;
}
}
@@
-1237,10
+1238,10
@@
sub GetNormalizedISBN {
}
return undef unless $record;
}
return undef unless $record;
- if ($marcflavour eq '
MARC21
') {
- @fields = $record->field('0
2
0');
+ if ($marcflavour eq '
UNIMARC
') {
+ @fields = $record->field('0
1
0');
foreach my $field (@fields) {
foreach my $field (@fields) {
- $isbn = $field->subfield('a');
+
my
$isbn = $field->subfield('a');
if ($isbn) {
return _isbn_cleanup($isbn);
} else {
if ($isbn) {
return _isbn_cleanup($isbn);
} else {
@@
-1248,10
+1249,10
@@
sub GetNormalizedISBN {
}
}
}
}
}
}
- else { # assume
unimarc if not marc21
- @fields = $record->field('0
1
0');
+ else { # assume
marc21 if not unimarc
+ @fields = $record->field('0
2
0');
foreach my $field (@fields) {
foreach my $field (@fields) {
-
my
$isbn = $field->subfield('a');
+ $isbn = $field->subfield('a');
if ($isbn) {
return _isbn_cleanup($isbn);
} else {
if ($isbn) {
return _isbn_cleanup($isbn);
} else {
@@
-1259,28
+1260,27
@@
sub GetNormalizedISBN {
}
}
}
}
}
}
-
}
sub GetNormalizedEAN {
my ($record,$marcflavour) = @_;
my (@fields,$ean);
}
sub GetNormalizedEAN {
my ($record,$marcflavour) = @_;
my (@fields,$ean);
- if ($marcflavour eq '
MARC21
') {
- @fields = $record->field('0
24
');
+ if ($marcflavour eq '
UNIMARC
') {
+ @fields = $record->field('0
73
');
foreach my $field (@fields) {
foreach my $field (@fields) {
- my $indicator = $field->indicator(1);
$ean = _normalize_match_point($field->subfield('a'));
$ean = _normalize_match_point($field->subfield('a'));
- if ($
indicator == 3 and $
ean ne '') {
+ if ($ean ne '') {
return $ean;
}
}
}
return $ean;
}
}
}
- else { # assume
unimarc if not marc21
- @fields = $record->field('0
73
');
+ else { # assume
marc21 if not unimarc
+ @fields = $record->field('0
24
');
foreach my $field (@fields) {
foreach my $field (@fields) {
+ my $indicator = $field->indicator(1);
$ean = _normalize_match_point($field->subfield('a'));
$ean = _normalize_match_point($field->subfield('a'));
- if ($ean ne '') {
+ if ($
indicator == 3 and $
ean ne '') {
return $ean;
}
}
return $ean;
}
}
@@
-1290,7
+1290,10
@@
sub GetNormalizedOCLCNumber {
my ($record,$marcflavour) = @_;
my (@fields,$oclc);
my ($record,$marcflavour) = @_;
my (@fields,$oclc);
- if ($marcflavour eq 'MARC21') {
+ if ($marcflavour eq 'UNIMARC') {
+ # TODO: add UNIMARC fields
+ }
+ else { # assume marc21 if not unimarc
@fields = $record->field('035');
foreach my $field (@fields) {
$oclc = $field->subfield('a');
@fields = $record->field('035');
foreach my $field (@fields) {
$oclc = $field->subfield('a');
@@
-1302,8
+1305,6
@@
sub GetNormalizedOCLCNumber {
}
}
}
}
}
}
- else { # TODO: add UNIMARC fields
- }
}
sub _normalize_match_point {
}
sub _normalize_match_point {