| 
      
            Lines 36-42
          use vars qw( $tagslib);
      
      
        Link Here
      
     | 
  
        
          | 36 | 
          use vars qw( $authorised_values_sth);  | 
          36 | 
          use vars qw( $authorised_values_sth);  | 
        
        
          | 37 | 
          use vars qw( $is_a_modif );  | 
          37 | 
          use vars qw( $is_a_modif );  | 
        
        
          | 38 | 
           | 
          38 | 
           | 
        
            
              | 39 | 
              my $itemtype; # created here because it can be used in build_authorized_values_list sub  | 
               | 
               | 
            
        
          | 40 | 
          our($authorised_values_sth,$is_a_modif,$usedTagsLib,$mandatory_z3950);  | 
          39 | 
          our($authorised_values_sth,$is_a_modif,$usedTagsLib,$mandatory_z3950);  | 
        
        
          | 41 | 
           | 
          40 | 
           | 
        
        
          | 42 | 
          =head1 FUNCTIONS  | 
          41 | 
          =head1 FUNCTIONS  | 
        
  
    | 
      
            Lines 70-119
          sub build_authorized_values_list {
      
      
        Link Here
      
     | 
  
        
          | 70 | 
              my @authorised_values;  | 
          69 | 
              my @authorised_values;  | 
        
        
          | 71 | 
              my %authorised_lib;  | 
          70 | 
              my %authorised_lib;  | 
        
        
          | 72 | 
           | 
          71 | 
           | 
        
            
              | 73 | 
               | 
               | 
               | 
            
            
              | 74 | 
                  #---- branch  | 
            
        
          | 75 | 
              my $category = $tagslib->{$tag}->{$subfield}->{'authorised_value'}; | 
          72 | 
              my $category = $tagslib->{$tag}->{$subfield}->{'authorised_value'}; | 
        
            
               | 
               | 
              73 | 
                  push @authorised_values, q{} unless $tagslib->{$tag}->{$subfield}->{mandatory} && $value; | 
            
            
              | 74 | 
               | 
            
        
          | 76 | 
              if ( $category eq "branches" ) { | 
          75 | 
              if ( $category eq "branches" ) { | 
        
          
            
              | 77 | 
                      my $sth =  | 
              76 | 
                      my $sth = $dbh->prepare( "select branchcode,branchname from branches order by branchname" );  | 
            
            
              | 78 | 
                      $dbh->prepare(  | 
               | 
               | 
            
            
              | 79 | 
                          "select branchcode,branchname from branches order by branchname");  | 
            
        
          | 80 | 
                  $sth->execute;  | 
          77 | 
                  $sth->execute;  | 
        
            
              | 81 | 
                      push @authorised_values, ""  | 
               | 
               | 
            
            
              | 82 | 
                      unless ( $tagslib->{$tag}->{$subfield}->{mandatory} ); | 
            
            
              | 83 | 
               | 
            
        
          | 84 | 
                  while ( my ( $branchcode, $branchname ) = $sth->fetchrow_array ) { | 
          78 | 
                  while ( my ( $branchcode, $branchname ) = $sth->fetchrow_array ) { | 
        
        
          | 85 | 
                      push @authorised_values, $branchcode;  | 
          79 | 
                      push @authorised_values, $branchcode;  | 
        
        
          | 86 | 
                      $authorised_lib{$branchcode} = $branchname; | 
          80 | 
                      $authorised_lib{$branchcode} = $branchname; | 
        
        
          | 87 | 
                  }  | 
          81 | 
                  }  | 
        
        
          | 88 | 
              }  | 
          82 | 
              }  | 
        
        
          | 89 | 
              elsif ( $category eq "itemtypes" ) { | 
          83 | 
              elsif ( $category eq "itemtypes" ) { | 
        
            
              | 90 | 
                      push @authorised_values, ""  | 
               | 
               | 
            
            
              | 91 | 
                        unless ( $tagslib->{$tag}->{$subfield}->{mandatory} | 
            
            
              | 92 | 
                          && ( $value || $tagslib->{$tag}->{$subfield}->{defaultvalue} ) ); | 
            
            
              | 93 | 
               | 
            
            
              | 94 | 
                      my $itemtype;  | 
            
        
          | 95 | 
                  my $itemtypes = Koha::ItemTypes->search_with_localization;  | 
          84 | 
                  my $itemtypes = Koha::ItemTypes->search_with_localization;  | 
        
          
            
              | 96 | 
                      while ( $itemtype = $itemtypes->next ) { | 
              85 | 
                      while ( my $itemtype = $itemtypes->next ) { | 
            
        
          | 97 | 
                      push @authorised_values, $itemtype->itemtype;  | 
          86 | 
                      push @authorised_values, $itemtype->itemtype;  | 
        
        
          | 98 | 
                      $authorised_lib{$itemtype->itemtype} = $itemtype->translated_description; | 
          87 | 
                      $authorised_lib{$itemtype->itemtype} = $itemtype->translated_description; | 
        
        
          | 99 | 
                  }  | 
          88 | 
                  }  | 
        
            
              | 100 | 
                      $value = $itemtype unless ($value);  | 
               | 
               | 
            
            
              | 101 | 
               | 
            
            
              | 102 | 
                      #---- "true" authorised value  | 
            
        
          | 103 | 
              }  | 
          89 | 
              }  | 
        
          
            
              | 104 | 
                  else { | 
              90 | 
                  else { # "true" authorised value | 
            
        
          | 105 | 
                  $authorised_values_sth->execute(  | 
          91 | 
                  $authorised_values_sth->execute(  | 
        
          
            
              | 106 | 
                          $tagslib->{$tag}->{$subfield}->{authorised_value} ); | 
              92 | 
                          $tagslib->{$tag}->{$subfield}->{authorised_value} | 
            
            
              | 107 | 
               | 
              93 | 
                      );  | 
            
            
              | 108 | 
                      push @authorised_values, ""  | 
               | 
               | 
            
            
              | 109 | 
                        unless ( $tagslib->{$tag}->{$subfield}->{mandatory} | 
            
            
              | 110 | 
                          && ( $value || $tagslib->{$tag}->{$subfield}->{defaultvalue} ) ); | 
            
            
              | 111 | 
               | 
            
        
          | 112 | 
                  while ( my ( $value, $lib ) = $authorised_values_sth->fetchrow_array ) { | 
          94 | 
                  while ( my ( $value, $lib ) = $authorised_values_sth->fetchrow_array ) { | 
        
        
          | 113 | 
                      push @authorised_values, $value;  | 
          95 | 
                      push @authorised_values, $value;  | 
        
        
          | 114 | 
                      $authorised_lib{$value} = $lib; | 
          96 | 
                      $authorised_lib{$value} = $lib; | 
        
        
          | 115 | 
                  }  | 
          97 | 
                  }  | 
        
        
          | 116 | 
              }  | 
          98 | 
              }  | 
        
            
               | 
               | 
              99 | 
               | 
            
        
          | 117 | 
              return { | 
          100 | 
              return { | 
        
        
          | 118 | 
                  type     => 'select',  | 
          101 | 
                  type     => 'select',  | 
        
        
          | 119 | 
                  id       => "tag_".$tag."_subfield_".$subfield."_".$index_tag."_".$index_subfield,  | 
          102 | 
                  id       => "tag_".$tag."_subfield_".$subfield."_".$index_tag."_".$index_subfield,  | 
        
  
    | 
      
            Lines 125-131
          sub build_authorized_values_list {
      
      
        Link Here
      
     | 
  
        
          | 125 | 
              };  | 
          108 | 
              };  | 
        
        
          | 126 | 
          }  | 
          109 | 
          }  | 
        
        
          | 127 | 
           | 
          110 | 
           | 
        
            
              | 128 | 
               | 
               | 
               | 
            
        
          | 129 | 
          =item create_input  | 
          111 | 
          =item create_input  | 
        
        
          | 130 | 
           | 
          112 | 
           | 
        
        
          | 131 | 
          builds the <input ...> entry for a subfield.  | 
          113 | 
          builds the <input ...> entry for a subfield.  | 
        
  
    | 
      
            Lines 133-139
          builds the <input ...> entry for a subfield.
      
      
        Link Here
      
     | 
  
        
          | 133 | 
          =cut  | 
          115 | 
          =cut  | 
        
        
          | 134 | 
           | 
          116 | 
           | 
        
        
          | 135 | 
          sub create_input { | 
          117 | 
          sub create_input { | 
        
          
            
              | 136 | 
                  my ( $tag, $subfield, $value, $index_tag, $rec, $authorised_values_sth,$cgi ) = @_;  | 
              118 | 
                  my ( $tag, $subfield, $value, $index_tag, $rec, $authorised_values_sth, $cgi ) = @_;  | 
            
        
          | 137 | 
           | 
          119 | 
           | 
        
        
          | 138 | 
              my $index_subfield = CreateKey(); # create a specifique key for each subfield  | 
          120 | 
              my $index_subfield = CreateKey(); # create a specifique key for each subfield  | 
        
        
          | 139 | 
           | 
          121 | 
           | 
        
  
    | 
      
            Lines 147-153
          sub create_input {
      
      
        Link Here
      
     | 
  
        
          | 147 | 
           | 
          129 | 
           | 
        
        
          | 148 | 
              # if there is no value provided but a default value in parameters, get it  | 
          130 | 
              # if there is no value provided but a default value in parameters, get it  | 
        
        
          | 149 | 
              if ($value eq '') { | 
          131 | 
              if ($value eq '') { | 
        
          
            
              | 150 | 
                      $value = $tagslib->{$tag}->{$subfield}->{defaultvalue}; | 
              132 | 
                      $value = $tagslib->{$tag}->{$subfield}->{defaultvalue} if !$cgi->param('authid'); # only for new records | 
            
        
          | 151 | 
                  if (!defined $value) { | 
          133 | 
                  if (!defined $value) { | 
        
        
          | 152 | 
                      $value = q{}; | 
          134 | 
                      $value = q{}; | 
        
        
          | 153 | 
                  }  | 
          135 | 
                  }  | 
        
            
              | 154 | 
              -   | 
               | 
               |