[Koha-patches] [PATCH] bug 5380: remove copy-and-paste from authorities/detail.pl

Galen Charlton gmcharlt at gmail.com
Wed Nov 10 06:09:37 CET 2010


MARC editor code not needed here.

Signed-off-by: Galen Charlton <gmcharlt at gmail.com>
---
 authorities/detail.pl |  249 -------------------------------------------------
 1 files changed, 0 insertions(+), 249 deletions(-)

diff --git a/authorities/detail.pl b/authorities/detail.pl
index 4a6c074..18d6c6a 100755
--- a/authorities/detail.pl
+++ b/authorities/detail.pl
@@ -48,251 +48,9 @@ use C4::Output;
 use CGI;
 use MARC::Record;
 use C4::Koha;
-# use C4::Biblio;
-# use C4::Catalogue;
 
 our ($tagslib);
 
-=item build_authorized_values_list
-
-=cut
-
-sub build_authorized_values_list ($$$$$$$) {
-    my ( $tag, $subfield, $value, $dbh, $authorised_values_sth,$index_tag,$index_subfield ) = @_;
-
-    my @authorised_values;
-    my %authorised_lib;
-
-    # builds list, depending on authorised value...
-
-    #---- branch
-    if ( $tagslib->{$tag}->{$subfield}->{'authorised_value'} eq "branches" ) {
-        my $sth =
-          $dbh->prepare(
-            "select branchcode,branchname from branches order by branchname");
-        $sth->execute;
-        push @authorised_values, ""
-          unless ( $tagslib->{$tag}->{$subfield}->{mandatory} );
-
-        while ( my ( $branchcode, $branchname ) = $sth->fetchrow_array ) {
-            push @authorised_values, $branchcode;
-            $authorised_lib{$branchcode} = $branchname;
-        }
-
-        #----- itemtypes
-    }
-    elsif ( $tagslib->{$tag}->{$subfield}->{authorised_value} eq "itemtypes" ) {
-        my $sth =
-          $dbh->prepare(
-            "select itemtype,description from itemtypes order by description");
-        $sth->execute;
-        push @authorised_values, ""
-          unless ( $tagslib->{$tag}->{$subfield}->{mandatory} );
-          
-        my $itemtype;
-        
-        while ( my ( $itemtype, $description ) = $sth->fetchrow_array ) {
-            push @authorised_values, $itemtype;
-            $authorised_lib{$itemtype} = $description;
-        }
-        $value = $itemtype unless ($value);
-
-        #---- "true" authorised value
-    }
-    else {
-        $authorised_values_sth->execute(
-            $tagslib->{$tag}->{$subfield}->{authorised_value} );
-
-        push @authorised_values, ""
-          unless ( $tagslib->{$tag}->{$subfield}->{mandatory} );
-
-        while ( my ( $value, $lib ) = $authorised_values_sth->fetchrow_array ) {
-            push @authorised_values, $value;
-            $authorised_lib{$value} = $lib;
-        }
-    }
-    return CGI::scrolling_list(
-        -name     => "tag_".$tag."_subfield_".$subfield."_".$index_tag."_".$index_subfield,
-        -values   => \@authorised_values,
-        -default  => $value,
-        -labels   => \%authorised_lib,
-        -override => 1,
-        -size     => 1,
-        -multiple => 0,
-        -tabindex => 1,
-        -id       => "tag_".$tag."_subfield_".$subfield."_".$index_tag."_".$index_subfield,
-        -class    => "input_marceditor",
-    );
-}
-
-
-=item create_input
- builds the <input ...> entry for a subfield.
-=cut
-
-sub create_input {
-    my ( $tag, $subfield, $value, $index_tag, $tabloop, $rec, $authorised_values_sth,$cgi ) = @_;
-    
-    my $index_subfield = CreateKey(); # create a specifique key for each subfield
-
-    $value =~ s/"/&quot;/g;
-
-    # if there is no value provided but a default value in parameters, get it
-    unless ($value) {
-        $value = $tagslib->{$tag}->{$subfield}->{defaultvalue};
-
-        # get today date & replace YYYY, MM, DD if provided in the default value
-        my ( $year, $month, $day ) = Today();
-        $month = sprintf( "%02d", $month );
-        $day   = sprintf( "%02d", $day );
-        $value =~ s/YYYY/$year/g;
-        $value =~ s/MM/$month/g;
-        $value =~ s/DD/$day/g;
-    }
-    my $dbh = C4::Context->dbh;
-    my %subfield_data = (
-        tag        => $tag,
-        subfield   => $subfield,
-        marc_lib   => substr( $tagslib->{$tag}->{$subfield}->{lib}, 0, 22 ),
-        marc_lib_plain => $tagslib->{$tag}->{$subfield}->{lib}, 
-        tag_mandatory  => $tagslib->{$tag}->{mandatory},
-        mandatory      => $tagslib->{$tag}->{$subfield}->{mandatory},
-        repeatable     => $tagslib->{$tag}->{$subfield}->{repeatable},
-        kohafield      => $tagslib->{$tag}->{$subfield}->{kohafield},
-        index          => $index_tag,
-        id             => "tag_".$tag."_subfield_".$subfield."_".$index_tag."_".$index_subfield,
-        value          => $value,
-    );
-    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;
-    }
-
-    
-    $subfield_data{visibility} = "display:none;"
-        if (    ($tagslib->{$tag}->{$subfield}->{hidden} % 2 == 1) and $value ne ''
-            or ($value eq '' and !$tagslib->{$tag}->{$subfield}->{mandatory})
-        );
-    
-    # it's an authorised field
-    if ( $tagslib->{$tag}->{$subfield}->{authorised_value} ) {
-        $subfield_data{marc_value} =
-          build_authorized_values_list( $tag, $subfield, $value, $dbh,
-            $authorised_values_sth,$index_tag,$index_subfield );
-
-    # it's a thesaurus / authority field
-    }
-    elsif ( $tagslib->{$tag}->{$subfield}->{authtypecode} ) {
-        $subfield_data{marc_value} =
-    "<input type=\"text\"
-                        id=\"".$subfield_data{id}."\"
-                        name=\"".$subfield_data{id}."\"
-      value=\"$value\"
-      class=\"input_marceditor\"
-                        tabindex=\"1\"                     
-      DISABLE READONLY \/>
-      <span class=\"buttonDot\"
-        onclick=\"Dopop('/cgi-bin/koha/authorities/auth_finder.pl?authtypecode=".$tagslib->{$tag}->{$subfield}->{authtypecode}."&index=$subfield_data{id}','$subfield_data{id}')\">...</span>
-    ";
-    # 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
-        # (the cgidir differs)
-        my $cgidir = C4::Context->intranetdir . "/cgi-bin/cataloguing/value_builder";
-        unless (-r $cgidir and -d $cgidir) {
-            $cgidir = C4::Context->intranetdir . "/cataloguing/value_builder";
-        }
-        my $plugin = $cgidir . "/" . $tagslib->{$tag}->{$subfield}->{'value_builder'};
-        do $plugin || die "Plugin Failed: ".$plugin;
-        my $extended_param = plugin_parameters( $dbh, $rec, $tagslib, $subfield_data{id}, $tabloop );
-        my ( $function_name, $javascript ) = plugin_javascript( $dbh, $rec, $tagslib, $subfield_data{id}, $tabloop );
-#         my ( $function_name, $javascript,$extended_param );
-        
-        $subfield_data{marc_value} =
-    "<input tabindex=\"1\"
-                        type=\"text\"
-                        id=".$subfield_data{id}."
-      name=".$subfield_data{id}."
-      value=\"$value\"
-                        class=\"input_marceditor\"
-      onfocus=\"javascript:Focus$function_name($index_tag)\"
-      onblur=\"javascript:Blur$function_name($index_tag); \" \/>
-    <span class=\"buttonDot\"
-      onclick=\"Clic$function_name('$subfield_data{id}')\">...</a>
-    $javascript";
-        # it's an hidden field
-    }
-    elsif ( $tag eq '' ) {
-        $subfield_data{marc_value} =
-            "<input tabindex=\"1\"
-                    type=\"hidden\"
-                    id=".$subfield_data{id}."
-                    name=".$subfield_data{id}."
-                    value=\"$value\" \/>
-            ";
-    }
-    elsif ( $tagslib->{$tag}->{$subfield}->{'hidden'} ) {
-        $subfield_data{marc_value} =
-            "<input type=\"text\"
-                    id=".$subfield_data{id}."
-                    name=".$subfield_data{id}."
-                    class=\"input_marceditor\"
-                    tabindex=\"1\"
-                    value=\"$value\"
-            \/>";
-
-        # it's a standard field
-    }
-    else {
-        if (
-            length($value) > 100
-            or
-            ( C4::Context->preference("marcflavour") eq "UNIMARC" && $tag >= 300
-                and $tag < 400 && $subfield eq 'a' )
-            or (    $tag >= 500
-                and $tag < 600
-                && C4::Context->preference("marcflavour") eq "MARC21" )
-          )
-        {
-            $subfield_data{marc_value} =
-                "<textarea cols=\"70\"
-                           rows=\"4\"
-                           id=".$subfield_data{id}."
-                           name=".$subfield_data{id}."
-                           class=\"input_marceditor\"
-                           tabindex=\"1\"
-                           >$value</textarea>
-                ";
-        }
-        else {
-            $subfield_data{marc_value} =
-                "<input type=\"text\"
-                        id=".$subfield_data{id}."
-                        name=".$subfield_data{id}."
-                        value=\"$value\"
-                        tabindex=\"1\"
-                        class=\"input_marceditor\"
-                \/>
-                ";
-        }
-    }
-    $subfield_data{'index_subfield'} = $index_subfield;
-    return \%subfield_data;
-}
-
-=item CreateKey
-
-    Create a random value to set it into the input name
-
-=cut
-
-sub CreateKey(){
-    return int(rand(1000000));
-}
-
 sub build_tabs ($$$$$) {
     my ( $template, $record, $dbh, $encoding,$input ) = @_;
 
@@ -300,12 +58,6 @@ sub build_tabs ($$$$$) {
     my @loop_data = ();
     my $tag;
 
-    my $authorised_values_sth = $dbh->prepare(
-        "select authorised_value,lib
-        from authorised_values
-        where category=? order by lib"
-    );
-    
     # in this array, we will push all the 10 tabs
     # to avoid having 10 tabs in the template : they will all be in the same BIG_LOOP
     my @BIG_LOOP;
@@ -325,7 +77,6 @@ sub build_tabs ($$$$$) {
         foreach my $tag (sort @tab_data) {
             $i++;
             next if ! $tag;
-            my $index_tag = CreateKey;
 
             # 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.
-- 
1.7.0



More information about the Koha-patches mailing list