bug 2867 [1/2]: Move basic editing to main system preferences screen
This allows the user to edit system preferences from the main system preferences screen, rather than having to dig down into each preference. [This patch includes some modifications by Galen Charlton to fix XHTML validation errors and a couple errors that would crop up under warnings.] Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This commit is contained in:
parent
d658c36445
commit
abfd5ba2c1
|
|
@ -317,31 +317,17 @@ sub StringSearch {
|
|||
my $count=@data;
|
||||
my @results;
|
||||
my $cnt=0;
|
||||
my $sth;
|
||||
|
||||
# used for doing a plain-old sys-pref search
|
||||
if ($type eq 'all' ){
|
||||
my $sth=$dbh->prepare("SELECT * FROM systempreferences
|
||||
WHERE variable LIKE ? OR explanation LIKE ?
|
||||
ORDER BY VARIABLE");
|
||||
$sth->execute("%$searchstring%", "%$searchstring%");
|
||||
while (my $data=$sth->fetchrow_hashref){
|
||||
$data->{value} =~ s/</</g;
|
||||
$data->{value} =~ s/>/>/g;
|
||||
$data->{value}=substr($data->{value},0,60)."..." if length($data->{value}) >60;
|
||||
push(@results,$data);
|
||||
$cnt++;
|
||||
}
|
||||
$sth->finish;
|
||||
|
||||
} elsif ($type){
|
||||
if ($type && $type ne 'all') {
|
||||
foreach my $syspref (sort { lc $a cmp lc $b } keys %tabsysprefs){
|
||||
if ($tabsysprefs{$syspref} eq $type){
|
||||
my $sth=$dbh->prepare("Select variable,value,explanation,type,options from systempreferences where (variable like ?) order by variable");
|
||||
$sth->execute($syspref);
|
||||
while (my $data=$sth->fetchrow_hashref){
|
||||
$data->{value} =~ s/</</g;
|
||||
$data->{value} =~ s/>/>/g;
|
||||
$data->{value}=substr($data->{value},0,60)."..." if length($data->{value}) >60;
|
||||
$data->{shortvalue} = $data->{value};
|
||||
$data->{shortvalue} = substr($data->{value},0,60)."..." if length($data->{value}) >60;
|
||||
push(@results,$data);
|
||||
$cnt++;
|
||||
}
|
||||
|
|
@ -349,28 +335,145 @@ sub StringSearch {
|
|||
}
|
||||
}
|
||||
} else {
|
||||
my $strsth ="Select variable,value,explanation,type,options from systempreferences where variable not in (";
|
||||
foreach my $syspref (keys %tabsysprefs){
|
||||
$strsth .= $dbh->quote($syspref).",";
|
||||
my $sth;
|
||||
|
||||
if ($type eq 'all' ){
|
||||
$sth=$dbh->prepare("
|
||||
SELECT *
|
||||
FROM systempreferences
|
||||
WHERE variable LIKE ? OR explanation LIKE ?
|
||||
ORDER BY VARIABLE");
|
||||
$sth->execute("%$searchstring%", "%$searchstring%");
|
||||
} else {
|
||||
my $strsth ="Select variable,value,explanation,type,options from systempreferences where variable not in (";
|
||||
foreach my $syspref (keys %tabsysprefs){
|
||||
$strsth .= $dbh->quote($syspref).",";
|
||||
}
|
||||
$strsth =~ s/,$/) /;
|
||||
$strsth .= " order by variable";
|
||||
$sth=$dbh->prepare($strsth);
|
||||
$sth->execute();
|
||||
}
|
||||
$strsth =~ s/,$/) /;
|
||||
$strsth .= " order by variable";
|
||||
my $sth=$dbh->prepare($strsth);
|
||||
$sth->execute();
|
||||
while (my $data=$sth->fetchrow_hashref){
|
||||
$data->{value}=substr($data->{value},0,60);
|
||||
push(@results,$data);
|
||||
$cnt++;
|
||||
}
|
||||
$sth->finish;
|
||||
}
|
||||
|
||||
while (my $data=$sth->fetchrow_hashref){
|
||||
$data->{shortvalue} = $data->{value};
|
||||
$data->{shortvalue} = substr($data->{value},0,60)."..." if length($data->{value}) >60;
|
||||
push(@results,$data);
|
||||
$cnt++;
|
||||
}
|
||||
|
||||
$sth->finish;
|
||||
}
|
||||
return ($cnt,\@results);
|
||||
}
|
||||
|
||||
sub GetPrefParams {
|
||||
my $data = shift;
|
||||
my $params = $data;
|
||||
my @options;
|
||||
|
||||
if (defined $data->{'options'}) {
|
||||
foreach my $option (split(/\|/, $data->{'options'})) {
|
||||
my $selected='0';
|
||||
$option eq $data->{'value'} and $selected=1;
|
||||
push @options, { option => $option, selected => $selected };
|
||||
}
|
||||
}
|
||||
|
||||
$params->{'prefoptions'} = $data->{'options'};
|
||||
|
||||
if ($data->{'type'} eq 'Choice') {
|
||||
$params->{'type-choice'} = 1;
|
||||
} elsif ($data->{'type'} eq 'YesNo') {
|
||||
$params->{'type-yesno'} = 1;
|
||||
$data->{'value'}=C4::Context->boolean_preference($data->{'variable'});
|
||||
if ($data->{'value'} eq '1') {
|
||||
$params->{'value-yes'} = 1;
|
||||
} else {
|
||||
$params->{'value-no'} = 1;
|
||||
}
|
||||
} elsif ($data->{'type'} eq 'Integer' || $data->{'type'} eq 'Float') {
|
||||
$params->{'type-free'} = 1;
|
||||
$params->{'fieldlength'} = $data->{'options'}>0 ? $data->{'options'} : 10;
|
||||
} elsif ($data->{'type'} eq 'Textarea') {
|
||||
$params->{'type-textarea'} = 1;
|
||||
$data->{options} =~ /(.*)\|(.*)/;
|
||||
$params->{'cols'} = $1;
|
||||
$params->{'rows'} = $2;
|
||||
} elsif ($data->{'type'} eq 'Themes') {
|
||||
$params->{'type-choice'} = 1;
|
||||
my $type='';
|
||||
($data->{'variable'}=~m#opac#i) ? ($type='opac') : ($type='intranet');
|
||||
@options=();
|
||||
my $currently_selected_themes;
|
||||
my $counter=0;
|
||||
foreach my $theme (split /\s+/, $data->{'value'}) {
|
||||
push @options, { option => $theme, counter => $counter };
|
||||
$currently_selected_themes->{$theme}=1;
|
||||
$counter++;
|
||||
}
|
||||
foreach my $theme (getallthemes($type)) {
|
||||
my $selected='0';
|
||||
next if $currently_selected_themes->{$theme};
|
||||
push @options, { option => $theme, counter => $counter };
|
||||
$counter++;
|
||||
}
|
||||
} elsif ($data->{'type'} eq 'ClassSources') {
|
||||
$params->{'type-choice'} = 1;
|
||||
my $type='';
|
||||
@options=();
|
||||
my $sources = GetClassSources();
|
||||
my $counter=0;
|
||||
foreach my $cn_source (sort keys %$sources) {
|
||||
if ($cn_source eq $data->{'value'}) {
|
||||
push @options, { option => $cn_source, counter => $counter, selected => 1 };
|
||||
} else {
|
||||
push @options, { option => $cn_source, counter => $counter };
|
||||
}
|
||||
$counter++;
|
||||
}
|
||||
} elsif ($data->{'type'} eq 'Languages') {
|
||||
my $currently_selected_languages;
|
||||
foreach my $language (split /\s+/, $data->{'value'}) {
|
||||
$currently_selected_languages->{$language}=1;
|
||||
}
|
||||
# current language
|
||||
my $lang = $params->{'lang'};
|
||||
my $theme;
|
||||
my $interface;
|
||||
if ($data->{'variable'} =~ /opac/) {
|
||||
# this is the OPAC
|
||||
$interface = 'opac';
|
||||
$theme = C4::Context->preference('opacthemes');
|
||||
}
|
||||
else {
|
||||
# this is the staff client
|
||||
$interface = 'intranet';
|
||||
$theme = C4::Context->preference('template');
|
||||
}
|
||||
my $languages_loop = getTranslatedLanguages($interface,$theme,$lang,$currently_selected_languages);
|
||||
|
||||
$params->{'languages_loop'} = $languages_loop;
|
||||
$params->{'type-langselector'} = 1;
|
||||
} else {
|
||||
$params->{'type-free'} = 1;
|
||||
$params->{'fieldlength'} = $data->{'options'}>0 ? $data->{'options'} : 30;
|
||||
}
|
||||
|
||||
if ( $params->{'type-choice'} || $params->{'type-free'} || $params->{'type-yesno'} ) {
|
||||
$params->{'oneline'} = 1;
|
||||
}
|
||||
|
||||
$params->{'preftype'} = $data->{'type'};
|
||||
$params->{'options'} = \@options;
|
||||
|
||||
return $params;
|
||||
}
|
||||
|
||||
my $input = new CGI;
|
||||
my $searchfield = $input->param('searchfield');
|
||||
my $Tvalue = $input->param('Tvalue');
|
||||
my $offset = $input->param('offset');
|
||||
my $offset = $input->param('offset') || 0;
|
||||
my $script_name="/cgi-bin/koha/admin/systempreferences.pl";
|
||||
|
||||
my ($template, $borrowernumber, $cookie)
|
||||
|
|
@ -436,7 +539,6 @@ if ($op eq 'update_and_reedit') {
|
|||
my $sth=$dbh->prepare("update systempreferences set value=?,explanation=?,type=?,options=? where variable=?");
|
||||
$sth->execute($value, $input->param('explanation'), $input->param('variable'), $input->param('preftype'), $input->param('prefoptions'));
|
||||
$sth->finish;
|
||||
warn "logaction !! mod ";
|
||||
logaction('SYSTEMPREFERENCE','MODIFY',undef, $input->param('variable') . " | " . $value );
|
||||
}
|
||||
} else {
|
||||
|
|
@ -444,7 +546,6 @@ if ($op eq 'update_and_reedit') {
|
|||
my $sth=$dbh->prepare("insert into systempreferences (variable,value,explanation) values (?,?,?,?,?)");
|
||||
$sth->execute($input->param('variable'), $input->param('value'), $input->param('explanation'), $input->param('preftype'), $input->param('prefoptions'));
|
||||
$sth->finish;
|
||||
warn "logaction !! add ";
|
||||
logaction('SYSTEMPREFERENCE','ADD',undef, $input->param('variable') . " | " . $input->param('value') );
|
||||
}
|
||||
}
|
||||
|
|
@ -469,94 +570,11 @@ if ($op eq 'add_form') {
|
|||
$template->param(return_tab => $tabsysprefs{$searchfield});
|
||||
}
|
||||
|
||||
my @options;
|
||||
foreach my $option (split(/\|/, $data->{'options'})) {
|
||||
my $selected='0';
|
||||
$option eq $data->{'value'} and $selected=1;
|
||||
push @options, { option => $option, selected => $selected };
|
||||
}
|
||||
if ($data->{'type'} eq 'Choice') {
|
||||
$template->param('type-choice' => 1);
|
||||
} elsif ($data->{'type'} eq 'YesNo') {
|
||||
$template->param('type-yesno' => 1);
|
||||
$data->{'value'}=C4::Context->boolean_preference($data->{'variable'});
|
||||
($data->{'value'} eq '1') ? ($template->param('value-yes'=>1)) : ($template->param('value-no'=>1));
|
||||
} elsif ($data->{'type'} eq 'Integer') {
|
||||
$template->param('type-free' => 1);
|
||||
$template->param('fieldlength' => $data->{'options'});
|
||||
} elsif ($data->{'type'} eq 'Textarea') {
|
||||
$template->param('type-textarea' => 1);
|
||||
$data->{options} =~ /(.*)\|(.*)/;
|
||||
$template->param('cols' => $1, 'rows' => $2);;
|
||||
} elsif ($data->{'type'} eq 'Float') {
|
||||
$template->param('type-free' => 1);
|
||||
$template->param('fieldlength' => $data->{'options'});
|
||||
} elsif ($data->{'type'} eq 'Themes') {
|
||||
$template->param('type-choice' => 1);
|
||||
my $type='';
|
||||
($data->{'variable'}=~m#opac#i) ? ($type='opac') : ($type='intranet');
|
||||
@options=();
|
||||
my $currently_selected_themes;
|
||||
my $counter=0;
|
||||
foreach my $theme (split /\s+/, $data->{'value'}) {
|
||||
push @options, { option => $theme, counter => $counter };
|
||||
$currently_selected_themes->{$theme}=1;
|
||||
$counter++;
|
||||
}
|
||||
foreach my $theme (getallthemes($type)) {
|
||||
my $selected='0';
|
||||
next if $currently_selected_themes->{$theme};
|
||||
push @options, { option => $theme, counter => $counter };
|
||||
$counter++;
|
||||
}
|
||||
} elsif ($data->{'type'} eq 'ClassSources') {
|
||||
$template->param('type-choice' => 1);
|
||||
my $type='';
|
||||
@options=();
|
||||
my $sources = GetClassSources();
|
||||
my $counter=0;
|
||||
foreach my $cn_source (sort keys %$sources) {
|
||||
if ($cn_source eq $data->{'value'}) {
|
||||
push @options, { option => $cn_source, counter => $counter, selected => 1 };
|
||||
} else {
|
||||
push @options, { option => $cn_source, counter => $counter };
|
||||
}
|
||||
$counter++;
|
||||
}
|
||||
} elsif ($data->{'type'} eq 'Languages') {
|
||||
my $currently_selected_languages;
|
||||
foreach my $language (split /\s+/, $data->{'value'}) {
|
||||
$currently_selected_languages->{$language}=1;
|
||||
}
|
||||
# current language
|
||||
my $lang = $template->param('lang');
|
||||
my $theme;
|
||||
my $interface;
|
||||
if ($data->{'variable'} =~ /opac/) {
|
||||
# this is the OPAC
|
||||
$interface = 'opac';
|
||||
$theme = C4::Context->preference('opacthemes');
|
||||
}
|
||||
else {
|
||||
# this is the staff client
|
||||
$interface = 'intranet';
|
||||
$theme = C4::Context->preference('template');
|
||||
}
|
||||
my $languages_loop = getTranslatedLanguages($interface,$theme,$lang,$currently_selected_languages);
|
||||
$data->{'lang'} = $template->param('lang');
|
||||
|
||||
$template->param('languages_loop' => $languages_loop);
|
||||
$template->param('type-langselector' => 1);
|
||||
} else {
|
||||
$template->param('type-free' => 1);
|
||||
$template->param('fieldlength' => $data->{'options'}>0?$data->{'options'}:60);
|
||||
}
|
||||
$template->param(explanation => $data->{'explanation'},
|
||||
value => $data->{'value'},
|
||||
type => $data->{'type'},
|
||||
options => \@options,
|
||||
preftype => $data->{'type'},
|
||||
prefoptions => $data->{'options'},
|
||||
searchfield => $searchfield);
|
||||
$template->param( GetPrefParams( $data ) );
|
||||
|
||||
$template->param( searchfield => $searchfield );
|
||||
|
||||
################## ADD_VALIDATE ##################################
|
||||
# called by add_form, used to insert/modify data in DB
|
||||
|
|
@ -568,7 +586,8 @@ if ($op eq 'add_form') {
|
|||
my $value;
|
||||
# handle multiple value strings (separated by ',')
|
||||
my $params = $input->Vars;
|
||||
my @values = split("\0",$params->{'value'}) if $params->{'value'};
|
||||
my @values = ();
|
||||
@values = split("\0",$params->{'value'}) if $params->{'value'};
|
||||
for my $vl (@values) {
|
||||
$value .= "$vl,";
|
||||
}
|
||||
|
|
@ -629,16 +648,13 @@ if ($op eq 'add_form') {
|
|||
} else {
|
||||
$toggle=0;
|
||||
}
|
||||
my %row_data; # get a fresh hash for the row data
|
||||
$row_data{variable} = $results->[$i]{'variable'};
|
||||
$row_data{value} = $results->[$i]{'value'};
|
||||
$row_data{yes} = 1 if ($results->[$i]{'value'} == 1);
|
||||
$row_data{yesno} = 1 if ($results->[$i]{'type'} eq 'YesNo');
|
||||
$row_data{explanation} = $results->[$i]{'explanation'};
|
||||
$row_data{toggle} = $toggle;
|
||||
$row_data{edit} = "$script_name?op=add_form&searchfield=".$results->[$i]{'variable'};
|
||||
$row_data{delete} = "$script_name?op=delete_confirm&searchfield=".$results->[$i]{'variable'};
|
||||
push(@loop_data, \%row_data);
|
||||
my $row_data = $results->[$i];
|
||||
$row_data->{'lang'} = $template->param('lang');
|
||||
$row_data = GetPrefParams( $row_data ); # get a fresh hash for the row data
|
||||
$row_data->{toggle} = $toggle;
|
||||
$row_data->{edit} = "$script_name?op=add_form&searchfield=".$results->[$i]{'variable'};
|
||||
$row_data->{delete} = "$script_name?op=delete_confirm&searchfield=".$results->[$i]{'variable'};
|
||||
push(@loop_data, $row_data);
|
||||
}
|
||||
$tab=($tab?$tab:"Local Use");
|
||||
$template->param(loop => \@loop_data, $tab => 1);
|
||||
|
|
|
|||
|
|
@ -362,6 +362,10 @@ div#reserves,div#checkouts {
|
|||
color : Gray;
|
||||
}
|
||||
|
||||
.single-line {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.ex {
|
||||
font-family : "Courier New", Courier, fixed-width;
|
||||
font-weight : bold;
|
||||
|
|
|
|||
|
|
@ -63,6 +63,13 @@
|
|||
alert(alertString2);
|
||||
}
|
||||
}
|
||||
$( function() {
|
||||
$( '#sysprefst .expand-textarea' ).show().click( function () {
|
||||
$( this ).hide().nextAll( 'textarea, input[type=submit]' ).show( 'slow' );
|
||||
|
||||
return false;
|
||||
} ).nextAll( 'textarea, input[type=submit]' ).hide();
|
||||
} );
|
||||
//]]>
|
||||
</script>
|
||||
</head>
|
||||
|
|
@ -111,9 +118,9 @@
|
|||
<!-- /TMPL_IF -->
|
||||
<!-- TMPL_IF NAME="type-langselector" -->
|
||||
<!-- TMPL_IF NAME="languages_loop" -->
|
||||
<table>
|
||||
<table>
|
||||
<!-- TMPL_LOOP NAME="languages_loop" -->
|
||||
<tr><td>
|
||||
<tr><td>
|
||||
<!-- TMPL_IF NAME="plural" -->
|
||||
<!-- TMPL_IF NAME="native_description" --><!-- TMPL_VAR NAME="native_description" --><!-- TMPL_ELSE --><!-- TMPL_VAR NAME="rfc4646_subtag" --><!-- /TMPL_IF -->
|
||||
<!-- TMPL_LOOP NAME="sublanguages_loop" --><table><tr><td>
|
||||
|
|
@ -136,18 +143,23 @@
|
|||
<input value="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" name="value" id="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" type="checkbox" <!-- TMPL_IF NAME="group_enabled" -->checked="checked"<!-- /TMPL_IF --> /> </label>
|
||||
<!-- /TMPL_IF -->
|
||||
<!-- /TMPL_IF -->
|
||||
</td></tr>
|
||||
</td></tr>
|
||||
<!-- /TMPL_LOOP -->
|
||||
</table>
|
||||
</table>
|
||||
<!-- /TMPL_IF -->
|
||||
|
||||
<!-- /TMPL_IF -->
|
||||
|
||||
<!-- TMPL_IF NAME="type-yesno" -->
|
||||
<!-- TMPL_IF NAME="value-yes" -->
|
||||
<input type="radio" name="value" id="value" value="1" checked="checked" /><!-- TMPL_ELSE --><input type="radio" name="value" id="value" value="1" /><!-- /TMPL_IF --> <label for="value" class="yesno">ON</label>
|
||||
<!-- TMPL_IF NAME="value-no" -->
|
||||
<input type="radio" name="value" id="value-no" value="0" checked="checked" /><!-- TMPL_ELSE --><input type="radio" name="value" id="value-no" value="0" /><!-- /TMPL_IF --> <label for="value-no" class="yesno">OFF</label><!-- /TMPL_IF -->
|
||||
<input type="radio" name="value" id="value" value="1" checked="checked" /><!-- TMPL_ELSE --><input type="radio" name="value" id="value" value="1" />
|
||||
<!-- /TMPL_IF -->
|
||||
<label for="value" class="yesno">ON</label>
|
||||
<!-- TMPL_IF NAME="value-no" -->
|
||||
<input type="radio" name="value" id="value-no" value="0" checked="checked" /><!-- TMPL_ELSE --><input type="radio" name="value" id="value-no" value="0" />
|
||||
<!-- /TMPL_IF -->
|
||||
<label for="value-no" class="yesno">OFF</label>
|
||||
<!-- /TMPL_IF -->
|
||||
</li>
|
||||
</ol></fieldset>
|
||||
<fieldset class="action"><input type="submit" value="Save" />
|
||||
|
|
@ -195,11 +207,11 @@
|
|||
<!-- TMPL_VAR NAME="Tvalue" -->
|
||||
</td></tr></table>
|
||||
<form class="inline" action="<!-- TMPL_VAR NAME="script_name" -->" method="post">
|
||||
<input type="hidden" name="op" value="delete_confirmed" />
|
||||
<input type="hidden" name="searchfield" value="<!-- TMPL_VAR NAME="searchfield" -->" />
|
||||
<input type="hidden" name="Tvalue" value="<!-- TMPL_VAR NAME="Tvalue" -->" />
|
||||
<input type="hidden" name="op" value="delete_confirmed" />
|
||||
<input type="hidden" name="searchfield" value="<!-- TMPL_VAR NAME="searchfield" -->" />
|
||||
<input type="hidden" name="Tvalue" value="<!-- TMPL_VAR NAME="Tvalue" -->" />
|
||||
<input type="submit" value="Yes, Delete" /></form>
|
||||
<form class="inline" action="<!-- TMPL_VAR NAME="script_name" -->" method="post"><input type="submit" value="No, Do not Delete" /></form>
|
||||
<form class="inline" action="<!-- TMPL_VAR NAME="script_name" -->" method="post"><input type="submit" value="No, Do not Delete" /></form>
|
||||
|
||||
|
||||
<!-- /TMPL_IF -->
|
||||
|
|
@ -215,16 +227,16 @@
|
|||
<!-- TMPL_IF NAME="else" -->
|
||||
|
||||
<div id="toolbar">
|
||||
<script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
// prepare DOM for YUI Toolbar
|
||||
$(document).ready(function() {
|
||||
yuiToolbar();
|
||||
<!-- TMPL_IF NAME="loop" -->$("#sysprefst").tablesorter({
|
||||
sortList: [[0,0]],
|
||||
headers: { 1: {sorter:false},2: { sorter: false },3: { sorter: false },4: { sorter: false }}
|
||||
});<!-- /TMPL_IF -->
|
||||
<!-- TMPL_IF NAME="loop" -->$("#sysprefst").tablesorter({
|
||||
sortList: [[0,0]],
|
||||
headers: { 1: {sorter:false},2: { sorter: false },3: { sorter: false },4: { sorter: false }}
|
||||
});<!-- /TMPL_IF -->
|
||||
});
|
||||
// YUI Toolbar Functions
|
||||
function yuiToolbar() {
|
||||
|
|
@ -250,9 +262,83 @@
|
|||
<!-- TMPL_IF NAME="toggle" --><tr class="highlight"><!-- TMPL_ELSE --><tr><!-- /TMPL_IF -->
|
||||
|
||||
<td><strong><a href="<!-- TMPL_VAR NAME="edit" -->"><!-- TMPL_VAR NAME="variable" --></a></strong></td><td> <!-- TMPL_VAR NAME="explanation" ESCAPE="HTML" --></td>
|
||||
<td><!-- TMPL_IF NAME="yesno" -->
|
||||
<!-- TMPL_IF NAME="yes" -->ON<!-- TMPL_ELSE -->OFF<!-- /TMPL_IF -->
|
||||
<!-- TMPL_ELSE --><!-- TMPL_VAR NAME="value" --><!-- /TMPL_IF --></td>
|
||||
<!-- TMPL_IF NAME="oneline" -->
|
||||
<td class="single-line">
|
||||
<!-- TMPL_ELSE -->
|
||||
<td>
|
||||
<!-- /TMPL_IF -->
|
||||
<form action="/cgi-bin/koha/admin/systempreferences.pl" method="post">
|
||||
|
||||
<!-- TMPL_IF NAME="type-free" -->
|
||||
<input type="text" name="value" size="<!-- TMPL_VAR NAME="fieldlength" -->" value="<!-- TMPL_VAR NAME="value" escape="HTML" -->" />
|
||||
<!-- /TMPL_IF -->
|
||||
<!-- TMPL_IF NAME="type-textarea" -->
|
||||
<a class="expand-textarea" style="display: none" href="#">Click to Edit</a>
|
||||
<textarea name="value" rows="<!--TMPL_VAR NAME="rows" -->" cols="<!-- TMPL_VAR NAME="cols" -->"><!-- TMPL_VAR NAME="value" escape="HTML" --></textarea>
|
||||
<!-- /TMPL_IF -->
|
||||
<!-- TMPL_IF NAME="type-choice" -->
|
||||
<select name="value">
|
||||
<!-- TMPL_LOOP NAME="options" -->
|
||||
<!-- TMPL_IF NAME="selected" -->
|
||||
<option value="<!-- TMPL_VAR NAME="option" -->" selected="selected">
|
||||
<!-- TMPL_ELSE -->
|
||||
<option value="<!-- TMPL_VAR NAME="option" -->">
|
||||
<!-- /TMPL_IF --><!-- TMPL_VAR NAME="option" --></option>
|
||||
<!-- /TMPL_LOOP -->
|
||||
</select>
|
||||
<!-- /TMPL_IF -->
|
||||
<!-- TMPL_IF NAME="type-langselector" -->
|
||||
<!-- TMPL_IF NAME="languages_loop" -->
|
||||
<table>
|
||||
<!-- TMPL_LOOP NAME="languages_loop" -->
|
||||
<tr><td>
|
||||
<!-- TMPL_IF NAME="plural" -->
|
||||
<!-- TMPL_IF NAME="native_description" --><!-- TMPL_VAR NAME="native_description" --><!-- TMPL_ELSE --><!-- TMPL_VAR NAME="rfc4646_subtag" --><!-- /TMPL_IF -->
|
||||
<!-- TMPL_LOOP NAME="sublanguages_loop" --><table><tr><td>
|
||||
<!-- TMPL_IF NAME="sublanguage_current" -->
|
||||
<label for="<!-- TMPL_VAR NAME="rfc4646_subtag" -->"><!-- TMPL_VAR NAME="native_description" --> <!-- TMPL_VAR NAME="script_description" --> <!-- TMPL_VAR NAME="region_description" --> <!-- TMPL_VAR NAME="variant_description" -->(<!-- TMPL_VAR NAME="rfc4646_subtag" -->)
|
||||
<input value="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" name="value" id="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" type="checkbox" <!-- TMPL_IF NAME="enabled" -->checked="checked"<!-- /TMPL_IF --> /> </label>
|
||||
|
||||
<!-- TMPL_ELSE -->
|
||||
<label for="<!-- TMPL_VAR NAME="rfc4646_subtag" -->"><!-- TMPL_VAR NAME="native_description" --> <!-- TMPL_VAR NAME="script_description" --> <!-- TMPL_VAR NAME="region_description" --> <!-- TMPL_VAR NAME="variant_description" -->(<!-- TMPL_VAR NAME="rfc4646_subtag" -->)
|
||||
<input value="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" name="value" id="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" type="checkbox" <!-- TMPL_IF NAME="enabled" -->checked="checked"<!-- /TMPL_IF --> /> </label>
|
||||
<!-- /TMPL_IF --></td></tr></table>
|
||||
<!-- /TMPL_LOOP -->
|
||||
|
||||
<!-- TMPL_ELSE -->
|
||||
<!-- TMPL_IF NAME="current" -->
|
||||
<label for="<!-- TMPL_VAR NAME="rfc4646_subtag" -->"><!-- TMPL_VAR NAME="native_description" -->(<!-- TMPL_VAR NAME="rfc4646_subtag" -->)
|
||||
<input value="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" name="value" id="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" type="checkbox" <!-- TMPL_IF NAME="group_enabled" -->checked="checked"<!-- /TMPL_IF --> /> </label>
|
||||
<!-- TMPL_ELSE -->
|
||||
<label for="<!-- TMPL_VAR NAME="rfc4646_subtag" -->"><!-- TMPL_VAR NAME="native_description" -->(<!-- TMPL_VAR NAME="rfc4646_subtag" -->)
|
||||
<input value="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" name="value" id="<!-- TMPL_VAR NAME="rfc4646_subtag" -->" type="checkbox" <!-- TMPL_IF NAME="group_enabled" -->checked="checked"<!-- /TMPL_IF --> /> </label>
|
||||
<!-- /TMPL_IF -->
|
||||
<!-- /TMPL_IF -->
|
||||
</td></tr>
|
||||
<!-- /TMPL_LOOP -->
|
||||
</table>
|
||||
<!-- /TMPL_IF -->
|
||||
|
||||
<!-- /TMPL_IF -->
|
||||
|
||||
<!-- TMPL_IF NAME="type-yesno" -->
|
||||
<!-- TMPL_IF NAME="value-yes" -->
|
||||
<input type="radio" name="value" value="1" checked="checked" /><!-- TMPL_ELSE --><input type="radio" name="value" value="1" />
|
||||
<!-- /TMPL_IF -->
|
||||
<label for="value" class="yesno">ON</label>
|
||||
<!-- TMPL_IF NAME="value-no" -->
|
||||
<input type="radio" name="value" value="0" checked="checked" /><!-- TMPL_ELSE --><input type="radio" name="value" value="0" />
|
||||
<!-- /TMPL_IF -->
|
||||
<label for="value-no" class="yesno">OFF</label>
|
||||
<!-- /TMPL_IF -->
|
||||
<input type="hidden" name="op" value="add_validate" />
|
||||
<input type="hidden" name="variable" value="<!-- TMPL_VAR NAME="variable" -->" />
|
||||
<input type="hidden" name="prefoptions" value="<!-- TMPL_VAR NAME="prefoptions" escape="HTML" -->" />
|
||||
<input type="hidden" name="preftype" value="<!-- TMPL_VAR NAME="type" -->" />
|
||||
<input type="hidden" name="explanation" value="<!-- TMPL_VAR NAME="explanation" escape="HTML" -->" />
|
||||
<input type="submit" value="Save" />
|
||||
</form>
|
||||
</td>
|
||||
|
||||
<td><a href="<!-- TMPL_VAR NAME="edit" -->">Edit </a></td>
|
||||
<td><a href="<!-- TMPL_VAR NAME="delete" -->">Delete</a></td>
|
||||
|
|
|
|||
Loading…
Reference in New Issue