X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=admin%2Fauth_subfields_structure.pl;h=e8451363d39aac841bb90b81abeec1ec53c95733;hb=2292bff781305dc8a16328c43394fb2c3aaa34f6;hp=432d49667fa4bec4fb046fd5adea3d686e554b9f;hpb=bdd0e225bc291280cc40b4a8326a33a21638338b;p=koha.git
diff --git a/admin/auth_subfields_structure.pl b/admin/auth_subfields_structure.pl
index 432d49667f..e8451363d3 100755
--- a/admin/auth_subfields_structure.pl
+++ b/admin/auth_subfields_structure.pl
@@ -21,8 +21,9 @@ use strict;
#use warnings; FIXME - Bug 2505
use C4::Output;
use C4::Auth;
-use CGI;
+use CGI qw ( -utf8 );
use C4::Context;
+use C4::Koha;
sub string_search {
@@ -53,11 +54,11 @@ my $op = $input->param('op') || '';
my $script_name = "/cgi-bin/koha/admin/auth_subfields_structure.pl";
my ($template, $borrowernumber, $cookie) = get_template_and_user(
- { template_name => "admin/auth_subfields_structure.tmpl",
+ { template_name => "admin/auth_subfields_structure.tt",
query => $input,
type => "intranet",
authnotrequired => 0,
- flagsrequired => { parameters => 1 },
+ flagsrequired => { parameters => 'parameters_remaining_permissions' },
debug => 1,
}
);
@@ -91,25 +92,14 @@ if ($op eq 'add_form') {
push @kohafields, "auth_header.".$field;
}
- # build authorised value list
- $sth2 = $dbh->prepare("select distinct category from authorised_values");
- $sth2->execute;
- my @authorised_values;
- push @authorised_values,"";
- while ((my $category) = $sth2->fetchrow_array) {
- push @authorised_values, $category;
- }
- push (@authorised_values,"branches");
- push (@authorised_values,"itemtypes");
-
- # build thesaurus categories list
- $sth2 = $dbh->prepare("select authtypecode from auth_types");
- $sth2->execute;
- my @authtypes;
- push @authtypes, "";
- while ( ( my $authtypecode ) = $sth2->fetchrow_array ) {
- push @authtypes, $authtypecode;
- }
+ # build authorised value list
+ my $authorised_values = C4::Koha::GetAuthorisedValueCategories;
+ unshift @$authorised_values, '';
+ push @$authorised_values, 'branches';
+ push @$authorised_values, 'itemtypes';
+
+ # build thesaurus categories list
+ my @authtypes = (sort keys %{C4::Koha::getauthtypes()});
# build value_builder list
my @value_builder=('');
@@ -124,8 +114,9 @@ if ($op eq 'add_form') {
opendir(DIR, "$cgidir/cataloguing/value_builder") || die "can't opendir $cgidir/value_builder: $!";
}
while (my $line = readdir(DIR)) {
- if ($line =~ /\.pl$/) {
- push (@value_builder,$line);
+ if ( $line =~ /\.pl$/ &&
+ $line !~ /EXAMPLE\.pl$/ ) { # documentation purposes
+ push (@value_builder,$line);
}
}
@value_builder= sort {$a cmp $b} @value_builder;
@@ -139,97 +130,40 @@ if ($op eq 'add_form') {
while ($data =$sth->fetchrow_hashref) {
my %row_data; # get a fresh hash for the row data
- $row_data{tab} = CGI::scrolling_list(-name=>'tab',
- -id=>"tab$i",
- -values =>
- [ '-1', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10' ],
- -labels => {
- '-1' => 'ignore',
- '0' => '0',
- '1' => '1',
- '2' => '2',
- '3' => '3',
- '4' => '4',
- '5' => '5',
- '6' => '6',
- '7' => '7',
- '8' => '8',
- '9' => '9',
- },
- -default=>$data->{'tab'},
- -size=>1,
- -tabindex=>'',
- -multiple=>0,
- );
- $row_data{ohidden} = CGI::scrolling_list(-name=>'ohidden',
- -id=>"ohidden$i",
- #-values=>['0','1','2'],
- #-labels => {'0'=>'Show','1'=>'Show Collapsed',
- # '2' =>'Hide',
- # },
- -values=>['0','-5'],
- -labels => {'0'=>'Show All','-5'=>'Hide All',},
- -default=>$data->{'hidden'},
- #-default=>"-5",
- -size=>1,
- -multiple=>0,
- );
- #$row_data{ihidden} = CGI::scrolling_list(-name=>'ihidden',
- # -id=>"ihidden$i",
- # -values=>['0','1','2'],
- # -labels => {'0'=>'Show','1'=>'Show Collapsed',
- # '2' =>'Hide',
- # },
- # -default=>substr($data->{'hidden'},1,1),
- # -size=>1,
- # -multiple=>0,
- # );
- #$row_data{ehidden} = CGI::scrolling_list(-name=>'ehidden',
- # -id=>"ehidden$i",
- # -values=>['0','1','2'],
- # -labels => {'0'=>'Show','1'=>'Show Collapsed',
- # '2' =>'Hide',
- # },
- # -default=>substr($data->{'hidden'}." ",2,1),
- # -size=>1,
- # -multiple=>0,
- # );
+ $row_data{defaultvalue} = $data->{defaultvalue};
+ $row_data{tab} = {
+ id => "tab$i",
+ default => $data->{'tab'},
+ };
+ $row_data{ohidden} = {
+ id => "ohidden$i",
+ default => $data->{'hidden'}
+ };
$row_data{tagsubfieldinput} = "{'tagsubfield'}."\" id=\"tagsubfield\" />";
$row_data{tagsubfield} = $data->{'tagsubfield'};
$row_data{liblibrarian} = CGI::escapeHTML($data->{'liblibrarian'});
$row_data{libopac} = CGI::escapeHTML($data->{'libopac'});
$row_data{seealso} = CGI::escapeHTML($data->{'seealso'});
- $row_data{kohafield}= CGI::scrolling_list( -name=>"kohafield",
- -id=>"kohafield$i",
- -values=> \@kohafields,
- -default=> "$data->{'kohafield'}",
- -size=>1,
- -multiple=>0,
- );
- $row_data{authorised_value} = CGI::scrolling_list(-name=>'authorised_value',
- -id=>"authorised_value$i",
- -values=> \@authorised_values,
- -default=>$data->{'authorised_value'},
- -size=>1,
- -tabindex=>'',
- -multiple=>0,
- );
- $row_data{frameworkcode} = CGI::scrolling_list(-name=>'frameworkcode',
- -id=>"frameworkcode$i",
- -values=> \@authtypes,
- -default=>$data->{'frameworkcode'},
- -size=>1,
- -tabindex=>'',
- -multiple=>0,
- );
- $row_data{value_builder} = CGI::scrolling_list(-name=>'value_builder',
- -id=>"value_builder$i",
- -values=> \@value_builder,
- -default=>$data->{'value_builder'},
- -size=>1,
- -tabindex=>'',
- -multiple=>0,
- );
+ $row_data{kohafield} = {
+ id => "kohafield$i",
+ values => \@kohafields,
+ default => "$data->{'kohafield'}",
+ };
+ $row_data{authorised_value} = {
+ id => "authorised_value$i",
+ values => $authorised_values,
+ default => $data->{'authorised_value'},
+ };
+ $row_data{frameworkcode} = {
+ id => "frameworkcode$i",
+ values => \@authtypes,
+ default => $data->{'frameworkcode'},
+ };
+ $row_data{value_builder} = {
+ id => "value_builder$i",
+ values => \@value_builder,
+ default => $data->{'value_builder'},
+ };
$row_data{repeatable} = CGI::checkbox(-name=>"repeatable$i",
-checked => $data->{'repeatable'}?'checked':'',
@@ -255,63 +189,15 @@ if ($op eq 'add_form') {
for (my $i=1;$i<=$more_subfields;$i++) {
my %row_data; # get a fresh hash for the row data
$row_data{'new_subfield'} = 1;
- $row_data{tab} = CGI::scrolling_list(-name=>'tab',
- -id => "tab$i",
- -values =>
- [ '-1', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10' ],
- -labels => {
- '-1' => 'ignore',
- '0' => '0',
- '1' => '1',
- '2' => '2',
- '3' => '3',
- '4' => '4',
- '5' => '5',
- '6' => '6',
- '7' => '7',
- '8' => '8',
- '9' => '9',
- },
- -default=>"",
- -size=>1,
- -tabindex=>'',
- -multiple=>0,
- );
- $row_data{ohidden} = CGI::scrolling_list(-name=>'ohidden',
- -id=>"ohidden$i",
- #-values=>['0','1','2'],
- #-labels => {'0'=>'Show','1'=>'Show Collapsed',
- # '2' =>'Hide',
- # },
- -values=>['0','-5'],
- -labels => {'0'=>'Show All','-5'=>'Hide All',},
- #-default=>"0",
- -default=>$data->{'hidden'},
- #-default=>"-5",
- -size=>1,
- -multiple=>0,
- );
+ $row_data{tab} = {
+ id => "tab$i",
+ default => $data->{'tab'},
+ };
+ $row_data{ohidden} = {
+ id => "ohidden$i",
+ default => $data->{'hidden'}
+ };
- #$row_data{ihidden} = CGI::scrolling_list(-name=>'ihidden',
- # -id=>"ihidden$i",
- # -values=>['0','1','2'],
- # -labels => {'0'=>'Show','1'=>'Show Collapsed',
- # '2' =>'Hide',
- # },
- # -default=>"0",
- # -size=>1,
- # -multiple=>0,
- # );
- #$row_data{ehidden} = CGI::scrolling_list(-name=>'ehidden',
- # -id=>"ehidden$i",
- # -values=>['0','1','2'],
- # -labels => {'0'=>'Show','1'=>'Show Collapsed',
- # '2' =>'Hide',
- # },
- # -default=>"0",
- # -size=>1,
- # -multiple=>0,
- # );
$row_data{tagsubfieldinput} = "{'tagsubfield'}."\" size=\"1\" id=\"tagsubfield\" maxlength=\"1\" />";
$row_data{tagsubfieldinput} =
"