@ -177,7 +177,7 @@ sub create_input () {
$ subfield_data { marc_value } = build_authorized_values_list ( $ tag , $ subfield , $ value , $ dbh , $ authorised_values_sth ) ;
# it's a thesaurus / authority field
} elsif ( $ tagslib - > { $ tag } - > { $ subfield } - > { authtypecode } ) {
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"4 7\" maxlength=\"255\" DISABLE READONLY> <a href=\"javascript:Dopop('../authorities/auth_finder.pl?authtypecode=" . $ tagslib - > { $ tag } - > { $ subfield } - > { authtypecode } . "&index=$i',$i)\">...</a>" ;
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"7 7\" maxlength=\"255\" DISABLE READONLY> <a href=\"javascript:Dopop('../authorities/auth_finder.pl?authtypecode=" . $ tagslib - > { $ tag } - > { $ subfield } - > { authtypecode } . "&index=$i',$i)\">...</a>" ;
# it's a plugin field
} elsif ( $ tagslib - > { $ tag } - > { $ subfield } - > { 'value_builder' } ) {
# opening plugin. Just check wether we are on a developper computer on a production one
@ -190,18 +190,18 @@ sub create_input () {
require $ plugin ;
my $ extended_param = plugin_parameters ( $ dbh , $ rec , $ tagslib , $ i , $ tabloop ) ;
my ( $ function_name , $ javascript ) = plugin_javascript ( $ dbh , $ rec , $ tagslib , $ i , $ tabloop ) ;
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"4 7\" maxlength=\"255\" OnFocus=\"javascript:Focus$function_name($i)\" OnBlur=\"javascript:Blur$function_name($i)\"> <a href=\"javascript:Clic$function_name($i)\">...</a> $javascript" ;
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"7 7\" maxlength=\"255\" OnFocus=\"javascript:Focus$function_name($i)\" OnBlur=\"javascript:Blur$function_name($i)\"> <a href=\"javascript:Clic$function_name($i)\">...</a> $javascript" ;
# it's an hidden field
} elsif ( $ tag eq '' ) {
$ subfield_data { marc_value } = "<input type=\"hidden\" name=\"field_value\" value=\"$value\">" ;
} elsif ( $ tagslib - > { $ tag } - > { $ subfield } - > { 'hidden' } ) {
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"5 0\" maxlength=\"255\" DISABLE READONLY>" ;
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"8 0\" maxlength=\"255\" DISABLE READONLY>" ;
# it's a standard field
} else {
if ( length ( $ value ) > 2 00) {
$ subfield_data { marc_value } = "<textarea name=\"fieldvalue\" cols=\"5 0\" rows=\"5\" >$value</textarea>" ;
if ( length ( $ value ) > 1 00) {
$ subfield_data { marc_value } = "<textarea name=\"field_value\" cols=\"8 0\" rows=\"5\" >$value</textarea>" ;
} else {
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"5 0\">" ; #"
$ subfield_data { marc_value } = "<input type=\"text\" name=\"field_value\" value=\"$value\" size=\"8 0\">" ; #"
}
}
return \ % subfield_data ;
@ -224,14 +224,26 @@ sub build_tabs ($$$$) {
my $ indicator ;
# if MARC::Record is not empty => use it as master loop, then add missing subfields that should be in the tab.
# if MARC::Record is empty => use tab as master loop.
if ( $ record ne - 1 && $ record - > field ( $ tag ) ) {
my @ fields = $ record - > field ( $ tag ) ;
if ( $ record ne - 1 && ( $ record - > field ( $ tag ) || $ tag eq '000' ) ) {
my @ fields ;
if ( $ tag ne '000' ) {
@ fields = $ record - > field ( $ tag ) ;
} else {
push @ fields , $ record - > leader ( ) ;
}
foreach my $ field ( @ fields ) {
my @ subfields_data ;
if ( $ tag < 10 ) {
my $ value = $ field - > data ( ) ;
my $ subfield = "@" ;
my ( $ value , $ subfield ) ;
if ( $ tag ne '000' ) {
$ value = $ field - > data ( ) ;
$ subfield = "@" ;
} else {
$ value = $ field ;
$ subfield = '@' ;
}
next if ( $ tagslib - > { $ tag } - > { $ subfield } - > { tab } ne $ tabloop ) ;
next if ( $ tagslib - > { $ tag } - > { $ subfield } - > { kohafield } eq 'biblio.biblionumber' ) ;
push ( @ subfields_data , & create_input ( $ tag , $ subfield , char_decode ( $ value , $ encoding ) , $ i , $ tabloop , $ record , $ authorised_values_sth ) ) ;
$ i + + ;
} else {