$value =~ s/DD/$day/g;
}
my $dbh = C4::Context->dbh;
+
+ # map '@' as "subfield" label for fixed fields
+ # to something that's allowed in a div id.
+ my $id_subfield = $subfield;
+ $id_subfield = "00" if $id_subfield eq "@";
+
my %subfield_data = (
tag => $tag,
- subfield => $subfield,
+ subfield => $id_subfield,
marc_lib => substr( $tagslib->{$tag}->{$subfield}->{lib}, 0, 22 ),
marc_lib_plain => $tagslib->{$tag}->{$subfield}->{lib},
tag_mandatory => $tagslib->{$tag}->{mandatory},
repeatable => $tagslib->{$tag}->{$subfield}->{repeatable},
kohafield => $tagslib->{$tag}->{$subfield}->{kohafield},
index => $index_tag,
- id => "tag_".$tag."_subfield_".$subfield."_".$index_tag."_".$index_subfield,
+ id => "tag_".$tag."_subfield_".$id_subfield."_".$index_tag."_".$index_subfield,
value => $value,
random => CreateKey(),
);
- # deal with a <010 tag
- if($subfield eq '@'){
- $subfield_data{id} = "tag_".$tag."_subfield_00_".$index_tag."_".$index_subfield;
- } else {
- $subfield_data{id} = "tag_".$tag."_subfield_".$subfield."_".$index_tag."_".$index_subfield;
- }
if(exists $mandatory_z3950->{$tag.$subfield}){
$subfield_data{z3950_mandatory} = $mandatory_z3950->{$tag.$subfield};
# it's a thesaurus / authority field
}
elsif ( $tagslib->{$tag}->{$subfield}->{authtypecode} ) {
+ if (C4::Context->preference("BiblioAddsAuthorities")) {
+ $subfield_data{marc_value} =
+ "<input type=\"text\"
+ id=\"".$subfield_data{id}."\"
+ name=\"".$subfield_data{id}."\"
+ value=\"$value\"
+ class=\"input_marceditor\"
+ tabindex=\"1\"
+ size=\"67\"
+ maxlength=\"255\"
+ \/>
+ <a href=\"#\" class=\"buttonDot\"
+ onclick=\"Dopop('/cgi-bin/koha/authorities/auth_finder.pl?authtypecode=".$tagslib->{$tag}->{$subfield}->{authtypecode}."&index=$subfield_data{id}','$subfield_data{id}'); return false;\" title=\"Tag Editor\">...</a>
+ ";
+ } else {
$subfield_data{marc_value} =
"<input type=\"text\"
id=\"".$subfield_data{id}."\"
tabindex=\"1\"
size=\"67\"
maxlength=\"255\"
+ readonly=\"readonly\"
\/>
<a href=\"#\" class=\"buttonDot\"
- onclick=\"Dopop('/cgi-bin/koha/authorities/auth_finder.pl?authtypecode=".$tagslib->{$tag}->{$subfield}->{authtypecode}."&index=$subfield_data{id}','$subfield_data{id}'); return false;\" title=\"Tag Editor\">...</a>
- ";
+ onclick=\"Dopop('/cgi-bin/koha/authorities/auth_finder.pl?authtypecode=".$tagslib->{$tag}->{$subfield}->{authtypecode}."&index=$subfield_data{id}','$subfield_data{id}'); return false;\" title=\"Tag Editor\">...</a>
+ ";
+ }
# it's a plugin field
}
elsif ( $tagslib->{$tag}->{$subfield}->{'value_builder'} ) {
name=\"".$subfield_data{id}."\"
class=\"input_marceditor\"
tabindex=\"1\"
- size=\"67\"
- maxlength=\"255\"
>$value</textarea>
";
}
# Search if there is any authorities to link to.
my $query='at='.$data->{authtypecode}.' ';
map {$query.= ' and he,ext="'.$_->[1].'"' if ($_->[0]=~/[A-z]/)} $field->subfields();
- my ($error,$results)=SimpleSearch($query,"authorityserver");
+ my ($error, $results, $total_hits)=SimpleSearch( $query, undef, undef, [ "authorityserver" ] );
# there is only 1 result
+ if ( $error ) {
+ warn "BIBLIOADDSAUTHORITIES: $error";
+ return (0,0) ;
+ }
if ($results && scalar(@$results)==1) {
my $marcrecord = MARC::File::USMARC::decode($results->[0]);
$field->add_subfields('9'=>$marcrecord->field('001')->data);
}
);
-#Getting the list of all frameworks
-my $queryfwk = $dbh->prepare("select frameworktext, frameworkcode from biblio_framework");
-$queryfwk->execute;
-my %select_fwk;
-my @select_fwk;
-my $curfwk;
-push @select_fwk, "Default";
-$select_fwk{"Default"} = "Default";
-
-while ( my ( $description, $fwk ) = $queryfwk->fetchrow ) {
- push @select_fwk, $fwk;
- $select_fwk{$fwk} = $description;
-}
-$curfwk = $frameworkcode;
-my $framework = CGI::scrolling_list(
- -name => 'Frameworks',
- -id => 'Frameworks',
- -default => $curfwk,
- -onchange => 'Changefwk(this);',
- -values => \@select_fwk,
- -labels => \%select_fwk,
- -size => 1,
- -multiple => 0
-);
-$template->param( framework => $framework, breedingid => $breedingid );
+# Getting the list of all frameworks
+# get framework list
+my $frameworks = getframeworks;
+my @frameworkcodeloop;
+foreach my $thisframeworkcode ( keys %$frameworks ) {
+ my %row = (
+ value => $thisframeworkcode,
+ frameworktext => $frameworks->{$thisframeworkcode}->{'frameworktext'},
+ );
+ if ($frameworkcode eq $thisframeworkcode){
+ $row{'selected'}="selected=\"selected\"";
+ }
+ push @frameworkcodeloop, \%row;
+}
+$template->param( frameworkcodeloop => \@frameworkcodeloop,
+ breedingid => $breedingid );
# ++ Global
$tagslib = &GetMarcStructure( 1, $frameworkcode );
if ($biblionumber) {
$is_a_modif = 1;
+ $template->param( title => $record->title(), );
# if it's a modif, retrieve bibli and biblioitem numbers for the future modification of old-DB.
( $biblionumbertagfield, $biblionumbertagsubfield ) =