my $tagslib = &MARCgettagslib($dbh,1,$itemtype);
my $record =MARCgetbiblio($dbh,$bibid);
+warn "=>".$record->as_formatted;
# open template
my ($template, $loggedinuser, $cookie)
= get_template_and_user({template_name => "catalogue/MARCdetail.tmpl",
# loop through each tag
my @fields = $record->fields();
my @loop_data =();
- foreach my $field (@fields) {
- my @subfields_data;
+# foreach my $field (@fields) {
+ my @subfields_data;
+ for (my $x_i=0;$x_i<=$#fields;$x_i++) {
+ warn "$tabloop => $x_i";
# if tag <10, there's no subfield, use the "@" trick
- if ($field->tag()<10) {
- next if ($tagslib->{$field->tag()}->{'@'}->{tab} ne $tabloop);
- next if ($tagslib->{$field->tag()}->{'@'}->{hidden});
+ if ($fields[$x_i]->tag()<10) {
+ next if ($tagslib->{$fields[$x_i]->tag()}->{'@'}->{tab} ne $tabloop);
+ next if ($tagslib->{$fields[$x_i]->tag()}->{'@'}->{hidden});
my %subfield_data;
- $subfield_data{marc_lib}=$tagslib->{$field->tag()}->{'@'}->{lib};
- $subfield_data{marc_value}=$field->data();
+ $subfield_data{marc_lib}=$tagslib->{$fields[$x_i]->tag()}->{'@'}->{lib};
+ $subfield_data{marc_value}=$fields[$x_i]->data();
$subfield_data{marc_subfield}='@';
- $subfield_data{marc_tag}=$field->tag();
+ $subfield_data{marc_tag}=$fields[$x_i]->tag();
push(@subfields_data, \%subfield_data);
} else {
- my @subf=$field->subfields;
+ my @subf=$fields[$x_i]->subfields;
# loop through each subfield
for my $i (0..$#subf) {
$subf[$i][0] = "@" unless $subf[$i][0];
- next if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{tab} ne $tabloop);
- next if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{hidden});
+ next if ($tagslib->{$fields[$x_i]->tag()}->{$subf[$i][0]}->{tab} ne $tabloop);
+ next if ($tagslib->{$fields[$x_i]->tag()}->{$subf[$i][0]}->{hidden});
my %subfield_data;
- $subfield_data{marc_lib}=$tagslib->{$field->tag()}->{$subf[$i][0]}->{lib};
- if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{isurl}) {
+ $subfield_data{marc_lib}=$tagslib->{$fields[$x_i]->tag()}->{$subf[$i][0]}->{lib};
+ if ($tagslib->{$fields[$x_i]->tag()}->{$subf[$i][0]}->{isurl}) {
$subfield_data{marc_value}="<a href=\"$subf[$i][1]\">$subf[$i][1]</a>";
} else {
- if ($tagslib->{$field->tag()}->{$subf[$i][0]}->{authtypecode}) {
- $subfield_data{authority}=$field->subfield(9);
+ if ($tagslib->{$fields[$x_i]->tag()}->{$subf[$i][0]}->{authtypecode}) {
+ $subfield_data{authority}=$fields[$x_i]->subfield(9);
}
$subfield_data{marc_value}=$subf[$i][1];
}
$subfield_data{marc_subfield}=$subf[$i][0];
- $subfield_data{marc_tag}=$field->tag();
+ $subfield_data{marc_tag}=$fields[$x_i]->tag();
push(@subfields_data, \%subfield_data);
}
}
if ($#subfields_data>=0) {
my %tag_data;
- $tag_data{tag}=$field->tag().' -'. $tagslib->{$field->tag()}->{lib};
- $tag_data{subfield} = \@subfields_data;
+ if ($fields[$x_i]->tag() eq $fields[$x_i-1]->tag()) {
+ $tag_data{tag}="";
+ } else {
+ $tag_data{tag}=$fields[$x_i]->tag().' -'. $tagslib->{$fields[$x_i]->tag()}->{lib};
+ }
+ my @tmp = @subfields_data;
+ $tag_data{subfield} = \@tmp;
push (@loop_data, \%tag_data);
+ undef @subfields_data;
}
}
$template->param($tabloop."XX" =>\@loop_data);
<div name="0XX" id="0XX" class="tab" style="visibility:visible">
<!-- TMPL_LOOP NAME="0XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="1XX" class="tab">
<!-- TMPL_LOOP NAME="1XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="2XX" class="tab">
<!-- TMPL_LOOP NAME="2XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="3XX" class="tab">
<!-- TMPL_LOOP NAME="3XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="4XX" class="tab">
<!-- TMPL_LOOP NAME="4XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="5XX" class="tab">
<!-- TMPL_LOOP NAME="5XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="6XX" class="tab">
<!-- TMPL_LOOP NAME="6XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="7XX" class="tab">
<!-- TMPL_LOOP NAME="7XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="8XX" class="tab">
<!-- TMPL_LOOP NAME="8XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">
<div id="9XX" class="tab">
<!-- TMPL_LOOP NAME="9XX" -->
- <p class="MARCtag">
- <!-- TMPL_VAR NAME="tag" -->
- </p>
+ <!-- TMPL_IF name="tag" -->
+ <p class="MARCtag">
+ <!-- TMPL_VAR NAME="tag" -->
+ </p>
+ <!-- TMPL_ELSE -->
+ <br />
+ <!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="subfield" -->
<p>
<label class="labelsubfield">