View | Details | Raw Unified | Return to bug 18645
Collapse All | Expand All

(-)a/admin/preferences.pl (-59 / +60 lines)
Lines 33-38 use File::Spec; Link Here
33
use IO::File;
33
use IO::File;
34
use YAML::Syck qw();
34
use YAML::Syck qw();
35
use List::MoreUtils qw(any);
35
use List::MoreUtils qw(any);
36
use C4::Sysprefs;
36
$YAML::Syck::ImplicitTyping = 1;
37
$YAML::Syck::ImplicitTyping = 1;
37
$YAML::Syck::ImplicitUnicode = 1;
38
$YAML::Syck::ImplicitUnicode = 1;
38
our $lang;
39
our $lang;
Lines 58-131 sub GetTab { Link Here
58
}
59
}
59
60
60
sub _get_chunk {
61
sub _get_chunk {
61
    my ( $value, %options ) = @_;
62
   my ( $value, %options ) = @_;
62
63
63
    my $name = $options{'pref'};
64
   my $name = $options{'pref'};
64
    my $chunk = { name => $name, value => $value, type => $options{'type'} || 'input', class => $options{'class'} };
65
   my $chunk = { name => $name, value => $value, type => $options{'type'} || 'input', class => $options{'class'} };
65
66
66
    if ( $options{'class'} && $options{'class'} eq 'password' ) {
67
   if ( $options{'class'} && $options{'class'} eq 'password' ) {
67
        $chunk->{'input_type'} = 'password';
68
       $chunk->{'input_type'} = 'password';
68
    } elsif ( $options{'class'} && $options{'class'} eq 'date' ) {
69
   } elsif ( $options{'class'} && $options{'class'} eq 'date' ) {
69
        $chunk->{'dateinput'} = 1;
70
       $chunk->{'dateinput'} = 1;
70
    } elsif ( $options{'type'} && ( $options{'type'} eq 'opac-languages' || $options{'type'} eq 'staff-languages' ) ) {
71
   } elsif ( $options{'type'} && ( $options{'type'} eq 'opac-languages' || $options{'type'} eq 'staff-languages' ) ) {
71
        my $current_languages = { map { +$_, 1 } split( /\s*,\s*/, $value ) };
72
       my $current_languages = { map { +$_, 1 } split( /\s*,\s*/, $value ) };
72
73
73
        my $theme;
74
       my $theme;
74
        my $interface;
75
       my $interface;
75
        if ( $options{'type'} eq 'opac-languages' ) {
76
       if ( $options{'type'} eq 'opac-languages' ) {
76
            # this is the OPAC
77
            # this is the OPAC
77
            $interface = 'opac';
78
           $interface = 'opac';
78
            $theme     = C4::Context->preference('opacthemes');
79
           $theme     = C4::Context->preference('opacthemes');
79
        } else {
80
       } else {
80
            # this is the staff client
81
           # this is the staff client
81
            $interface = 'intranet';
82
           $interface = 'intranet';
82
            $theme     = C4::Context->preference('template');
83
           $theme     = C4::Context->preference('template');
83
        }
84
       }
84
        $chunk->{'languages'} = getTranslatedLanguages( $interface, $theme, $lang, $current_languages );
85
       $chunk->{'languages'} = getTranslatedLanguages( $interface, $theme, $lang, $current_languages );
85
        $chunk->{'type'} = 'languages';
86
       $chunk->{'type'} = 'languages';
86
    } elsif ( $options{ 'choices' } ) {
87
   } elsif ( $options{ 'choices' } ) {
87
        if ( $options{'choices'} && ref( $options{ 'choices' } ) eq '' ) {
88
       if ( $options{'choices'} && ref( $options{ 'choices' } ) eq '' ) {
88
            if ( $options{'choices'} eq 'class-sources' ) {
89
           if ( $options{'choices'} eq 'class-sources' ) {
89
                my $sources = GetClassSources();
90
               my $sources = GetClassSources();
90
                $options{'choices'} = { map { $_ => $sources->{$_}->{'description'} } keys %$sources };
91
               $options{'choices'} = { map { $_ => $sources->{$_}->{'description'} } keys %$sources };
91
            } elsif ( $options{'choices'} eq 'opac-templates' ) {
92
           } elsif ( $options{'choices'} eq 'opac-templates' ) {
92
                $options{'choices'} = { map { $_ => $_ } getallthemes( 'opac' ) }
93
               $options{'choices'} = { map { $_ => $_ } getallthemes( 'opac' ) }
93
            } elsif ( $options{'choices'} eq 'staff-templates' ) {
94
           } elsif ( $options{'choices'} eq 'staff-templates' ) {
94
                $options{'choices'} = { map { $_ => $_ } getallthemes( 'intranet' ) }
95
               $options{'choices'} = { map { $_ => $_ } getallthemes( 'intranet' ) }
95
            } else {
96
           } else {
96
                die 'Unrecognized source of preference values: ' . $options{'choices'};
97
               die 'Unrecognized source of preference values: ' . $options{'choices'};
97
            }
98
           }
98
        }
99
       }
99
100
100
        $value ||= 0;
101
       $value ||= 0;
101
102
102
        $chunk->{'type'} = 'select';
103
        $chunk->{'type'} = 'select';
103
        $chunk->{'CHOICES'} = [
104
       $chunk->{'CHOICES'} = [
104
            sort { $a->{'text'} cmp $b->{'text'} }
105
           sort { $a->{'text'} cmp $b->{'text'} }
105
            map { { text => $options{'choices'}->{$_}, value => $_, selected => ( $_ eq $value || ( $_ eq '' && ( $value eq '0' || !$value ) ) ) } }
106
           map { { text => $options{'choices'}->{$_}, value => $_, selected => ( $_ eq $value || ( $_ eq '' && ( $value eq '0' || !$value ) ) ) } }
106
            keys %{ $options{'choices'} }
107
           keys %{ $options{'choices'} }
107
        ];
108
       ];
108
    } elsif ( $options{'multiple'} ) {
109
   } elsif ( $options{'multiple'} ) {
109
        my @values;
110
       my @values;
110
        @values = split /,/, $value if defined($value);
111
       @values = split /,/, $value if defined($value);
111
        $chunk->{type}    = 'multiple';
112
       $chunk->{type}    = 'multiple';
112
        $chunk->{CHOICES} = [
113
       $chunk->{CHOICES} = [
113
            sort { $a->{'text'} cmp $b->{'text'} }
114
           sort { $a->{'text'} cmp $b->{'text'} }
114
              map {
115
             map {
115
                my $option_value = $_;
116
               my $option_value = $_;
116
                {
117
               {
117
                    text     => $options{multiple}->{$option_value},
118
                   text     => $options{multiple}->{$option_value},
118
                    value    => $option_value,
119
                   value    => $option_value,
119
                    selected => (grep /^$option_value$/, @values) ? 1 : 0,
120
                   selected => (grep /^$option_value$/, @values) ? 1 : 0,
120
                }
121
               }
121
              }
122
             }
122
              keys %{ $options{multiple} }
123
             keys %{ $options{multiple} }
123
        ];
124
       ];
124
    }
125
   }
125
126
126
    $chunk->{ 'type_' . $chunk->{'type'} } = 1;
127
    $chunk->{ 'type_' . $chunk->{'type'} } = 1;
127
128
128
    return $chunk;
129
   return $chunk;
129
}
130
}
130
131
131
sub TransformPrefsToHTML {
132
sub TransformPrefsToHTML {
(-)a/admin/systempreferences.pl (+1 lines)
Lines 339-344 if ( $op eq 'add_form' ) { Link Here
339
        unless C4::Context->config('demo');
339
        unless C4::Context->config('demo');
340
    print $input->redirect("/cgi-bin/koha/admin/systempreferences.pl?tab=");
340
    print $input->redirect("/cgi-bin/koha/admin/systempreferences.pl?tab=");
341
    exit;
341
    exit;
342
342
################## DELETE_CONFIRM ##################################
343
################## DELETE_CONFIRM ##################################
343
    # called by default form, used to confirm deletion of data in DB
344
    # called by default form, used to confirm deletion of data in DB
344
} elsif ( $op eq 'delete_confirm' ) {
345
} elsif ( $op eq 'delete_confirm' ) {
(-)a/installer/data/mysql/atomicupdate/18645_adding_version_column_to_systempreferences_table.sql (+80 lines)
Line 0 Link Here
1
ALTER TABLE systempreferences ADD version varchar(12) DEFAULT NULL;
2
UPDATE systempreferences SET version="16.06.00.003" WHERE variable ="MaxItemsToProcessForBatchMod";
3
UPDATE systempreferences SET version="16.06.00.003" WHERE variable ="MaxItemsToDisplayForBatchDel";
4
UPDATE systempreferences SET version="16.06.00.004" WHERE variable ="OPACXSLTListsDisplay";
5
UPDATE systempreferences SET version="16.06.00.004" WHERE variable ="XSLTListsDisplay";
6
UPDATE systempreferences SET version="16.06.00.005" WHERE variable ="XSLTListsDisplay";
7
UPDATE systempreferences SET version="16.06.00.006" WHERE variable="RefundLostOnReturnControl";
8
UPDATE systempreferences SET version="16.06.00.007" WHERE variable="PatronQuickAddFields";
9
UPDATE systempreferences SET version="16.06.00.008" WHERE variable="CheckPrevCheckout";
10
UPDATE systempreferences SET version="16.06.00.009" WHERE variable="IntranetCatalogSearchPulldown";
11
UPDATE systempreferences SET version="16.06.00.010" WHERE variable="MaxOpenSuggestions";
12
UPDATE systempreferences SET version="16.06.00.011" WHERE variable="NovelistSelectStaffEnabled";
13
UPDATE systempreferences SET version="16.06.00.011" WHERE variable="NovelistSelectStaffView";
14
UPDATE systempreferences SET version="16.06.00.013" WHERE variable="OPACResultsLibrary";
15
UPDATE systempreferences SET version="16.06.00.015" WHERE variable="HoldsLog";
16
UPDATE systempreferences SET version="16.06.00.020" WHERE variable="SwitchOnSiteCheckouts";
17
UPDATE systempreferences SET version="16.06.00.027" WHERE variable="TrackLastPatronActivity";
18
UPDATE systempreferences SET version="16.06.00.021" WHERE variable="PatronSelfRegistrationEmailMustBeUnique";
19
UPDATE systempreferences SET version="16.06.00.023" WHERE variable="timeout";
20
UPDATE systempreferences SET version="16.06.00.025" WHERE variable="makePreviousSerialAvailable";
21
UPDATE systempreferences SET version="16.06.00.026" WHERE variable="PatronSelfRegistrationLibraryList";
22
UPDATE systempreferences SET version="16.06.00.027" WHERE variable="TrackLastPatronActivity";
23
UPDATE systempreferences SET version="16.06.00.029" WHERE variable="UsageStatsLibraryType";
24
UPDATE systempreferences SET version="16.06.00.029" WHERE variable="UsageStatsCountry";
25
UPDATE systempreferences SET version="16.06.00.030" WHERE variable="OPACHoldingsDefaultSortField";
26
UPDATE systempreferences SET version="16.06.00.031" WHERE variable="PatronSelfRegistrationPrefillForm";
27
UPDATE systempreferences SET version="16.06.00.035" WHERE variable="AllowItemsOnHoldCheckoutSCO";
28
UPDATE systempreferences SET version="16.06.00.036" WHERE variable="HouseboundModule";
29
UPDATE systempreferences SET version="16.06.00.037" WHERE variable="ArticleRequests";
30
UPDATE systempreferences SET version="16.06.00.037" WHERE variable="ArticleRequestsMandatoryFields";
31
UPDATE systempreferences SET version="16.06.00.037" WHERE variable="ArticleRequestsMandatoryFieldsItemsOnly";
32
UPDATE systempreferences SET version="16.06.00.037" WHERE variable="ArticleRequestsMandatoryFieldsRecordOnly";
33
UPDATE systempreferences SET version="16.06.00.038" WHERE variable="DefaultPatronSearchFields";
34
UPDATE systempreferences SET version="16.06.00.041" WHERE variable="AggressiveMatchOnISSN";
35
UPDATE systempreferences SET version="16.06.00.045" WHERE variable="BorrowerRenewalPeriodBase";
36
UPDATE systempreferences SET version="16.06.00.049" WHERE variable="ReplytoDefault";
37
UPDATE systempreferences SET version="16.06.00.049" WHERE variable="ReturnpathDefault";
38
UPDATE systempreferences SET version="16.12.00.005" WHERE variable="AuthorityMergeMode";
39
UPDATE systempreferences SET version="16.12.00.008" WHERE variable="MarcItemFieldsToOrder";
40
UPDATE systempreferences SET version="16.12.00.009" WHERE variable="OPACHoldsIfAvailableAtPickup";
41
UPDATE systempreferences SET version="16.12.00.009" WHERE variable="OPACHoldsIfAvailableAtPickupExceptions";
42
UPDATE systempreferences SET version="16.12.00.010" WHERE variable="OverDriveCirculation";
43
UPDATE systempreferences SET version="16.12.00.012" WHERE variable="OpacNewsLibrarySelect";
44
UPDATE systempreferences SET version="16.12.00.013" WHERE variable="CircSidebar";
45
UPDATE systempreferences SET version="16.12.00.014" WHERE variable="LoadSearchHistoryToTheFirstLoggedUser";
46
UPDATE systempreferences SET version="16.12.00.015" WHERE variable="UsageStatsGeolocation";
47
UPDATE systempreferences SET version="16.12.00.015" WHERE variable="UsageStatsLibrariesInfo";
48
UPDATE systempreferences SET version="16.12.00.015" WHERE variable="UsageStatsPublicID";
49
UPDATE systempreferences SET version="16.12.00.017" WHERE variable="CumulativeRestrictionPeriods";
50
UPDATE systempreferences SET version="16.12.00.020" WHERE variable="HoldFeeMode";
51
UPDATE systempreferences SET version="16.12.00.021" WHERE variable="RenewalLog";
52
UPDATE systempreferences SET version="16.12.00.023" WHERE variable="AuthorityMergeLimit";
53
UPDATE systempreferences SET version="16.12.00.024" WHERE variable="OverdueNoticeBcc";
54
UPDATE systempreferences SET version="16.12.00.025" WHERE variable="UploadPurgeTemporaryFilesDays";
55
UPDATE systempreferences SET version="16.12.00.028" WHERE variable="AddressFormat";
56
UPDATE systempreferences SET version="16.12.00.029" WHERE variable="AllowCheckoutNotes";
57
UPDATE systempreferences SET version="16.12.00.032" WHERE variable="ExcludeHolidaysFromMaxPickUpDelay";
58
UPDATE systempreferences SET version="16.12.00.033" WHERE variable="TranslateNotices";
59
UPDATE systempreferences SET version="16.12.00.034" WHERE variable="OPACFineNoRenewalsBlockAutoRenew";
60
UPDATE systempreferences SET version="16.12.00.036" WHERE variable="NumSavedReports";
61
UPDATE systempreferences SET version="16.12.00.037" WHERE variable="FailedLoginAttempts";
62
UPDATE systempreferences SET version="16.12.00.038" WHERE variable="ExportRemoveFields";
63
UPDATE systempreferences SET version="16.12.00.039" WHERE variable="TalkingTechItivaPhoneNotification";
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
(-)a/installer/featurereleasetool.pl (+186 lines)
Line 0 Link Here
1
#!/usr/bin/perl
2
3
# This file is part of Koha.
4
#
5
# Copyright (C) 2017  Catalyst IT
6
#
7
# Koha is free software; you can redistribute it and/or modify it
8
# under the terms of the GNU General Public License as published by
9
# the Free Software Foundation; either version 3 of the License, or
10
# (at your option) any later version.
11
#
12
# Koha is distributed in the hope that it will be useful, but
13
# WITHOUT ANY WARRANTY; without even the implied warranty of
14
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
# GNU General Public License for more details.
16
#
17
# You should have received a copy of the GNU General Public License
18
# along with Koha; if not, see <http://www.gnu.org/licenses>.
19
20
use strict;
21
use warnings;
22
use diagnostics;
23
24
use C4::InstallAuth;
25
use CGI qw ( -utf8 );
26
use POSIX qw(strftime);
27
28
use C4::Context;
29
use C4::Output;
30
use C4::Templates;
31
use C4::Languages qw(getAllLanguages getTranslatedLanguages);
32
use C4::Installer;
33
use C4::NewsChannels;
34
use Koha;
35
use Data::Dumper;
36
use Koha::DateUtils;
37
use Date::Calc qw/Date_to_Days Today/;
38
use C4::NewsChannels;
39
40
41
my $query = new CGI;
42
my $step  = $query->param('step');
43
my $kohaversion = $query->param('kohaversion'); #Retrieve kohaversion number from url
44
my $dbversion = $query->param('dbversion');
45
my $dbh = C4::Context->dbh;
46
my $op = $query->param('op');
47
my $language = $query->param('language');
48
my ( $template, $loggedinuser, $cookie );
49
50
my $all_languages = getAllLanguages();
51
52
if ( defined($language) ) {
53
    C4::Templates::setlanguagecookie( $query, $language, "install.pl?step=1" );
54
}
55
56
#Set featurereleasetool.tt as template
57
( $template, $loggedinuser, $cookie ) = get_template_and_user(
58
    {
59
        template_name => "installer/featurereleasetool.tt",
60
        query         => $query,
61
        type          => "intranet",
62
        authnotrequired => 0,
63
        debug           => 1,
64
    }
65
);
66
67
#Database settings
68
my $installer = C4::Installer->new();
69
my %info;
70
$info{'dbname'} = C4::Context->config("database");
71
$info{'dbms'}   = (
72
      C4::Context->config("db_scheme")
73
    ? C4::Context->config("db_scheme")
74
    : "mysql"
75
);
76
$info{'hostname'} = C4::Context->config("hostname");
77
$info{'port'}     = C4::Context->config("port");
78
$info{'user'}     = C4::Context->config("user");
79
$info{'password'} = C4::Context->config("pass");
80
$info{'tls'} = C4::Context->config("tls");
81
    if ($info{'tls'} && $info{'tls'} eq 'yes'){
82
        $info{'ca'} = C4::Context->config('ca');
83
        $info{'cert'} = C4::Context->config('cert');
84
        $info{'key'} = C4::Context->config('key');
85
        $info{'tlsoptions'} = ";mysql_ssl=1;mysql_ssl_client_key=".$info{key}.";mysql_ssl_client_cert=".$info{cert}.";mysql_ssl_ca_file=".$info{ca};
86
        $info{'tlscmdline'} =  " --ssl-cert ". $info{cert} . " --ssl-key " . $info{key} . " --ssl-ca ".$info{ca}." "
87
    }
88
89
my $location = "feature";
90
91
$template->param(
92
        'kohaversion' => $kohaversion,
93
        'dbversion'   => $dbversion,
94
        'location'    => $location,
95
);
96
97
my $logdir = C4::Context->config('logdir');
98
my @logs = `cd $logdir && ls -t | grep "updatedatabase_2*"`;
99
100
my $filename_suffix = $logs[0];
101
my $path = $logdir . '/' . $filename_suffix;
102
my $fh;
103
my $file;
104
my $count = 0;
105
my $version;
106
$file = `cat $path`;
107
$file = `echo "$file" | grep -Eo '?[0-9]+[.][0-9]+[.][0-9]+[.][0-9]+?'`;
108
109
my @prefsloop;
110
my @lines = split /\n/, $file;
111
foreach my $line (@lines) {
112
    my $query = qq|
113
       SELECT variable, value, options, explanation from systempreferences WHERE version= ? |;
114
    my $sth = $dbh->prepare($query);
115
    $sth->execute($line);
116
    while (my ($variable, $value, $options, $explanation) =$sth->fetchrow) {
117
        push @prefsloop, {
118
            variable => $variable,
119
            value    => $value,
120
            options  => $options,
121
            explanation => $explanation,
122
        };
123
    }
124
};
125
126
$template->param( prefs => \@prefsloop, submitted_form => $op );
127
128
#If the user has finished using the feature release change tool then redirect to mainpage
129
if ( $op && $op eq 'finished' ) {
130
    print $query->redirect("/cgi-bin/koha/mainpage.pl");
131
    exit;
132
}
133
elsif ( $op && $op eq 'save' ) { #Submit changed systempreferences 
134
    unless ( C4::Context->config( 'demo' ) ) {
135
        foreach my $param ( $query->param() ) {
136
            my ( $prefname ) = ( $param =~ /pref_(.*)/ );
137
            next if ( !defined( $prefname ) );
138
139
            my $wholevalue = join( ',', $query->param($param) );
140
            my ($name, $value) = split(/,/,$wholevalue);
141
            C4::Context->set_preference( $name, $value );
142
        }
143
    }
144
}
145
146
147
#Submit news item 
148
my $id      = $query->param('id');
149
my $title   = $query->param('title');
150
my $content = $query->param('featurecontent');
151
my $expirationdate;
152
if ( $query->param('expirationdate') ) {
153
    $expirationdate = output_pref({ dt => dt_from_string( scalar $query->param('expirationdate') ), dateformat => 'iso', dateonly => 1 }    );
154
}
155
my $timestamp = output_pref({ dt => dt_from_string( scalar $query->param('timestamp') ), dateformat => 'iso', dateonly => 1 });
156
my $number = $query->param('number');
157
my $lang   = $query->param('lang');
158
my $branchcode = $query->param('branch');
159
160
my $error_message  = $query->param('error_message');
161
$branchcode = undef if (defined($branchcode) && $branchcode eq '');
162
163
$template->param( error_message => $error_message ) if $error_message;
164
165
my $new_detail = get_opac_new($id);
166
167
if ($title) {
168
   my $newsposting =  add_opac_new(
169
      {
170
           title           => $title,
171
           content         => $content,
172
           lang            => $lang,
173
           expirationdate  => $expirationdate,
174
           timestamp       => $timestamp,
175
           number          => $number,
176
           branchcode      => $branchcode,
177
           borrowernumber  => $loggedinuser,
178
      }
179
   );
180
   if ($newsposting) {
181
       $template->param( newsposted => $newsposting );
182
   }
183
}
184
185
output_html_with_http_headers $query, $cookie, $template->output;
186
(-)a/installer/install.pl (-4 / +15 lines)
Lines 237-242 elsif ( $step && $step == 3 ) { Link Here
237
# And we redirect people to mainpage.
237
# And we redirect people to mainpage.
238
# The installer will have to relogin since we do not pass cookie to redirection.
238
# The installer will have to relogin since we do not pass cookie to redirection.
239
        $template->param( "$op" => 1 );
239
        $template->param( "$op" => 1 );
240
    }elsif ( $op && $op eq 'featurereleasetool' ) {
241
        warn my $dbversion = $query->param('dbversion');
242
        warn my $kohaversion = $query->param('kohaversion');
243
        print $query->redirect("/cgi-bin/koha/installer/featurereleasetool.pl?dbversion=$dbversion&kohaversion=$kohaversion");
244
        exit;
240
    }
245
    }
241
246
242
    elsif ( $op && $op eq 'addframeworks' ) {
247
    elsif ( $op && $op eq 'addframeworks' ) {
Lines 378-387 elsif ( $step && $step == 3 ) { Link Here
378
383
379
        my $now         = POSIX::strftime( "%Y-%m-%dT%H:%M:%S", localtime() );
384
        my $now         = POSIX::strftime( "%Y-%m-%dT%H:%M:%S", localtime() );
380
        my $logdir      = C4::Context->config('logdir');
385
        my $logdir      = C4::Context->config('logdir');
381
        my $dbversion   = C4::Context->preference('Version');
386
        warn my $dbversion   = C4::Context->preference('Version');
382
        my $kohaversion = Koha::version;
387
        my $kohaversion = Koha::version;
383
        $kohaversion =~ s/(.*\..*)\.(.*)\.(.*)/$1$2$3/;
388
        $kohaversion =~ s/(.*\..*)\.(.*)\.(.*)/$1$2$3/;
384
389
390
        $template->param(
391
                "dbversion"   => $dbversion,
392
                "kohaversion" => $kohaversion
393
        );
394
385
        my $filename_suffix = join '_', $now, $dbversion, $kohaversion;
395
        my $filename_suffix = join '_', $now, $dbversion, $kohaversion;
386
        my ( $logfilepath, $logfilepath_errors ) = (
396
        my ( $logfilepath, $logfilepath_errors ) = (
387
            chk_log( $logdir, "updatedatabase_$filename_suffix" ),
397
            chk_log( $logdir, "updatedatabase_$filename_suffix" ),
Lines 396-406 elsif ( $step && $step == 3 ) { Link Here
396
        my $fh;
406
        my $fh;
397
        open( $fh, "<", $logfilepath )
407
        open( $fh, "<", $logfilepath )
398
          or die "Cannot open log file $logfilepath: $!";
408
          or die "Cannot open log file $logfilepath: $!";
399
        my @report = <$fh>;
409
        warn my @report = <$fh>;
400
        close $fh;
410
        close $fh;
401
        if (@report) {
411
        if (@report) {
402
            $template->param( update_report =>
412
            $template->param( update_report =>
403
                  [ map { { line => $_ } } split( /\n/, join( '', @report ) ) ]
413
                  [ map { { line => $_ } } split( /\n/, join( '', @report ) ) ],
414
                  raw_report => @report
404
            );
415
            );
405
            $template->param( has_update_succeeds => 1 );
416
            $template->param( has_update_succeeds => 1 );
406
        }
417
        }
Lines 467-473 elsif ( $step && $step == 3 ) { Link Here
467
     # if there is none, then we need to install the database
478
     # if there is none, then we need to install the database
468
     #
479
     #
469
            if ( C4::Context->preference('Version') ) {
480
            if ( C4::Context->preference('Version') ) {
470
                my $dbversion = C4::Context->preference('Version');
481
                warn my $dbversion = C4::Context->preference('Version');
471
                $dbversion =~ /(.*)\.(..)(..)(...)/;
482
                $dbversion =~ /(.*)\.(..)(..)(...)/;
472
                $dbversion = "$1.$2.$3.$4";
483
                $dbversion = "$1.$2.$3.$4";
473
                $template->param(
484
                $template->param(
(-)a/koha-tmpl/intranet-tmpl/prog/css/staff-global.css (+7 lines)
Lines 3007-3009 fieldset.rows + fieldset.action { Link Here
3007
#patron_search #filters {
3007
#patron_search #filters {
3008
    display: none;
3008
    display: none;
3009
}
3009
}
3010
3011
#news_posted {
3012
    width: 50%;
3013
    background-color: #F1F1F1;
3014
}
3015
3016
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/newsform.inc (+94 lines)
Line 0 Link Here
1
<div>
2
    [% IF location == "feature" %]
3
        <form name="add_form" id="add_form" method="post" action="/cgi-bin/koha/installer/featurereleasetool.pl?dbversion=[%dbversion%]&kohaversion=[%kohaversion%]" onsubmit="sbmt()">
4
    [% ELSIF location == "intranet" %]
5
        <form name="add_form" method="post" action="/cgi-bin/koha/tools/koha-news.pl" >
6
    [% END %]
7
    <input type="hidden" name="op" value="[% op %]" />
8
    <input type="hidden" name="id" value="[% id %]" />
9
    <input type="hidden" name="dbversion" value="[% dbversion %]" />
10
    <input type="hidden" name="kohaversion" value="[% kohaversion %]" />
11
			<fieldset class="rows">
12
            <legend>OPAC and Koha news</legend>
13
           <ol> <li>
14
            <label for="lang">Display location:</label>
15
            <select id="lang" name="lang">
16
                [% IF ( default_lang == "" ) %]
17
                <option value="" selected="selected">All</option>
18
                [% ELSE %]
19
                <option value=""                    >All</option>
20
                [% END %]
21
                [% IF ( default_lang == "koha" ) %]
22
                <option value="koha" selected="selected">Librarian interface</option>
23
                [% ELSE %]
24
                <option value="koha"                    >Librarian interface</option>
25
                [% END %]
26
                [% IF ( default_lang == "slip" ) %]
27
                <option value="slip" selected="selected">Slip</option>
28
                [% ELSE %]
29
                <option value="slip"                    >Slip</option>
30
                [% END %]
31
                [% FOREACH lang_lis IN lang_list %]
32
                [% IF ( lang_lis.language == default_lang ) %]
33
                    <option value="[% lang_lis.language %]" selected="selected">OPAC ([% lang_lis.language %])</option>
34
                [% ELSE %]
35
                    <option value="[% lang_lis.language %]" >OPAC ([% lang_lis.language %])</option>
36
                [% END %]
37
                [% END %]
38
            </select>
39
            </li>
40
            <li>
41
                <label for="branch">Library: </label>
42
                <select id="branch" name="branch">
43
                    [% IF ( new_detail.branchcode == '' ) %]
44
                        <option value="" selected="selected">All libraries</option>
45
                    [% ELSE %]
46
                        <option value="">All libraries</option>
47
                    [% END %]
48
                </select>
49
            </li>
50
            <li>
51
                <label for="title" class="required">Title: </label>
52
                <input id="title" size="30" type="text" name="title" value=[% IF location=="feature" %] "Our library has just updated to [% kohaversion %]" [% END %]"[% new_detail.title %]" required="required" class="required" /> <span class="required">Required</span>
53
            </li>
54
            <li>
55
                <label for="from">Publication date: </label>
56
                <input id="from" type="text" name="timestamp" size="15" value="[% new_detail.timestamp %]" class="datepickerfrom" />
57
				<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
58
            </li>
59
            <li>
60
                <label for="to">Expiration date: </label>
61
                <input id="to" type="text" name="expirationdate" size="15" value="[% new_detail.expirationdate %]" class="datepickerto" />
62
				<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
63
            </li>
64
            <li>
65
                <label for="number">Appear in position: </label>
66
                [% IF ( new_detail.number ) %]
67
                    <input id="number" size="3" name="number" type="text" value="[% new_detail.number %]" />
68
                [% ELSE %]
69
                    <input id="number" size="3" name="number" type="text" />
70
                [% END %]
71
            </li>
72
            <li><label for="content">News: </label>
73
                [% IF location=="feature" %]
74
                <br><br>
75
                    <div contenteditable="true" name="featurecontent" id="featurecontent" cols="75" rows="10" >
76
                        Our institution is proud to announce that we have upgraded our Koha library management system to Koha version [%kohaversion%]. This new Koha version comes with many new exciting features.
77
                        <br>
78
                        <p>Read about the enhancements here: <a href="https://koha-community.org/koha-17-05-released/"> Koha 17.05 release notes link </a></p>
79
                        <p> During the upgrade the following new systempreferences were also installed:</p>
80
                        [% FOREACH pref IN prefs %]
81
                            [% pref.variable %]
82
                            [% pref.value %]
83
                        [% END %]
84
                    </div>
85
                    <div class="control" onclick="sbmt()"></div>
86
                [% ELSIF location=="intranet" %]
87
                    <textarea name="content" id="content" cols="75" rows="10">[% new_detail.content %]</textarea>
88
                [% END %]
89
            </li>
90
            </ol>
91
            <input class="button" type="submit" value="Submit" />
92
        </fieldset>
93
    </form>
94
</div>
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/prefs-table.inc (+114 lines)
Line 0 Link Here
1
    [% FOREACH TAB IN TABS %]
2
    <div class="prefs-tab">
3
    <h2>[% TAB.tab_title %] preferences</h2>
4
    <form action="/cgi-bin/koha/admin/preferences.pl" method="post">
5
        [% UNLESS ( searchfield ) %]<div id="toolbar"><button class="save-all submit" type="submit">Save all [% TAB.tab_title %] preferences</button></div>[% END %]
6
        <input type="hidden" name="op" value="save" />
7
        <input type="hidden" name="tab" value="[% TAB.tab_id %]" />
8
9
            [% FOREACH LINE IN TAB.LINES %]
10
            [% IF ( LINE.is_group_title ) %]
11
            [% UNLESS ( loop.first ) %]</tbody></table>[% END %]
12
            <h3>[% LINE.title %]</h3>
13
            <table class="preferences">
14
            <thead><tr><th>Preference</th><th>Value</th></tr></thead>
15
            [% UNLESS ( loop.last ) %]<tbody>[% END %]
16
            [% ELSE %]
17
            [% IF ( loop.first ) %]<table class="preferences"><thead><tr><th>Preference</th><th>Value</th></tr></thead><tbody>[% END %]
18
            <tr class="name-row">
19
                <td class="name-cell">
20
                    <code>
21
                        [% FOREACH NAME IN LINE.NAMES %]
22
						<label for="pref_[% NAME.name %]">
23
							[% IF ( NAME.jumped ) %]
24
							<span class="term" id="jumped">[% NAME.name %]</span>
25
                            [% ELSIF ( NAME.highlighted ) %]
26
							<span class="term">[% NAME.name %]</span>
27
							[% ELSE %]
28
							[% NAME.name %]
29
							[% END %]
30
31
                            [% IF NAME.overridden %]
32
                                <span class="overridden" title="The system preference [% NAME.name %] may have been overridden from this value by one or more virtual hosts.">
33
                                    [Overridden]
34
                                </span>
35
                            [% END %]
36
						</label>
37
                        [% UNLESS ( loop.last ) %]<br />[% END %]
38
                        [% END %]
39
                    </code>
40
                </td>
41
                <td><div>
42
                    [% FOREACH CHUNK IN LINE.CHUNKS %]
43
                    [% IF ( CHUNK.type_text ) %]
44
                    [% CHUNK.contents %]
45
                    [% ELSIF ( CHUNK.type_input ) %]
46
                    <input type="[%IF CHUNK.input_type %][% CHUNK.input_type %][% ELSE %]text[% END %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "short" %]" value="[% CHUNK.value| html %]" autocomplete="off" /> [% IF ( CHUNK.dateinput ) %]<span class="hint">[% INCLUDE 'date-format.inc' %]</span>[% END %]
47
                    [% ELSIF ( CHUNK.type_select ) %]
48
                    <select name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "choice" %]">
49
                        [% FOREACH CHOICE IN CHUNK.CHOICES.sort('value') %]
50
                        [% IF ( CHOICE.selected ) %]
51
                        <option value="[% CHOICE.value %]" selected="selected">
52
                        [% ELSE %]
53
                        <option value="[% CHOICE.value %]">
54
                        [% END %]
55
                            [% CHOICE.text %]
56
                        </option>
57
                        [% END %]
58
                    </select>
59
                    [% ELSIF ( CHUNK.type_multiple ) %]
60
                    <select name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "choice" %]" multiple="multiple">
61
                        [% FOREACH CHOICE IN CHUNK.CHOICES %][% IF ( CHOICE.selected ) %]<option value="[% CHOICE.value %]" selected="selected">[% ELSE %]<option value="[% CHOICE.value %]">[% END %][% CHOICE.text %]</option>[% END %]
62
                    </select>
63
                    [% ELSIF ( CHUNK.type_textarea ) || ( CHUNK.type_htmlarea )%]
64
                        [% IF ( CHUNK.type_htmlarea ) && ( Koha.Preference('UseWYSIWYGinSystemPreferences') ) %]
65
                        <textarea name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "short" %] mce" rows="20" cols="60">[% CHUNK.value %]</textarea>
66
                        [% ELSE %]
67
                        <a class="expand-textarea" style="display: none" href="#">Click to Edit</a>
68
                        <textarea name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "short" %]" rows="10" cols="40">[% CHUNK.value %]</textarea>
69
                        <a class="collapse-textarea" style="display:none" href="#">Click to collapse</br></a>
70
                        [% END %]
71
                    [% ELSIF ( CHUNK.type_languages ) %]
72
                    <dl>
73
                    [% FOREACH language IN CHUNK.languages %]
74
                        [% IF ( language.plural ) %]
75
                        <dt>
76
                            [% IF ( language.native_description ) %][% language.native_description %][% ELSE %][% language.rfc4646_subtag %][% END %]
77
                        </dt>
78
                        [% FOREACH sublanguages_loo IN language.sublanguages_loop %]
79
                        <dd>
80
                            <label for="pref_[% CHUNK.name %]_[% sublanguages_loo.rfc4646_subtag %]">[% sublanguages_loo.native_description %] [% sublanguages_loo.script_description %] [% sublanguages_loo.region_description %] [% sublanguages_loo.variant_description %]([% sublanguages_loo.rfc4646_subtag %])</label>
81
                            [% IF ( sublanguages_loo.enabled ) %]
82
                            <input value="[% sublanguages_loo.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% sublanguages_loo.rfc4646_subtag %]" type="checkbox" checked="checked" class="preference preference-checkbox"/>
83
                            [% ELSE %]
84
                            <input value="[% sublanguages_loo.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% sublanguages_loo.rfc4646_subtag %]" type="checkbox" class="preference preference-checkbox"/>
85
                            [% END %]
86
                        </dd>
87
                        [% END %]
88
                        [% ELSE %]
89
                        <dt>
90
                            <label for="pref_[% CHUNK.name %]_[% language.rfc4646_subtag %]">[% language.native_description %]([% language.rfc4646_subtag %])</label>
91
                            [% IF ( language.group_enabled ) %]
92
                            <input value="[% language.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% language.rfc4646_subtag %]" type="checkbox" checked="checked" class="preference preference-checkbox"/>
93
                            [% ELSE %]
94
                            <input value="[% language.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% language.rfc4646_subtag %]" type="checkbox" class="preference preference-checkbox"/>
95
                            [% END %]
96
                        </dt>
97
                        [% END %]
98
                    [% END %]
99
                    </dl>
100
                    [% END %]
101
                    [% END %]
102
                </div></td>
103
            </tr>
104
            [% IF ( loop.last ) %]</tbody></table>[% END %]
105
            [% END %]
106
        [% END %]
107
        [% IF screen == 'preferences' %]
108
            <fieldset class="action"><button class="save-all submit" type="submit">Save all [% TAB.tab_title %] preferences</button> <a href="/cgi-bin/koha/admin/preferences.pl" class="force_reload cancel">Cancel</a></fieldset>
109
        [% ELSIF screen == 'featurereleasetool' %]
110
            <fieldset class="action"><button class="save-all submit" type="submit">Update sysprefs [% TAB.tab_title %] preferences</button> <a href="/cgi-bin/koha/admin/preferences.pl" class="force_reload cancel    ">Cancel</a></fieldset>
111
        [% END %]
112
    </form>
113
    </div>
114
    [% END %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/team.inc (+403 lines)
Line 0 Link Here
1
<div id="team">
2
   <h2>Special thanks to the following organizations</h2>
3
   <ul>
4
       <li><a href="http://library.org.nz">Horowhenua Library Trust</a>, New Zealand, and Rosalie Blake, Head of Libraries, (Koha 1.0)</li>
5
       <li>The <a href="http://www.myacpl.org/">Athens County Public Libraries</a>, Ohio, USA (MARC sponsorship, documentation, template maintenance)</li>
6
       <li><a href="http://www.emn.fr">EMN (Ecole des Mines de Nantes)</a>, France (Suggestions, Stats wizards and improved LDAP sponsorship)</li>
7
       <li><a href="http://www.mines-paristech.fr">Mines Paristech (previously Ecole Nationale Supérieure des Mines de Paris)</a>, France (biblio frameworks, MARC authorities, OPAC basket, Serials sponsorship)</li>
8
       <li><a href="http://www.mediathequeouestprovence.fr/">SAN-Ouest Provence</a>, France (Koha 3.0 enhancements to patrons and holds modules)</li>
9
       <li>The <a href="http://ccfls.org">Crawford County Federated Library System</a>, PA, USA (Koha 3.0 Zebra Integration sponsorship)</li>
10
       <li>The <a href="http://www.geauga.lib.oh.us/">Geauga County Public Library</a>, OH, USA (Koha 3.0 beta testing)</li>
11
       <li>The <a href="http://library.neu.edu.tr">Near East University</a>, Cyprus</li>
12
       <li>OPUS International Consultants, Wellington, New Zealand (Corporate Serials sponsorship)</li>
13
       <li><a href="http://www.famfamfam.com/">famfamfam.com</a> Birmingham (UK) based developer Mark James for the famfamfam Silk iconset.</li>
14
       <li><a href="http://www.ashs.school.nz/">Albany Senior High School</a>, Auckland, New Zealand (OPAC 'star-ratings' sponsorship)</li>
15
   </ul>
16
17
   <h2>Koha <span style="color:red" title="Koha version numbering has jumped from 3.22 to 16.05 (yy.mm) as from May 2016">17.05</span> release team</h2>
18
   <ul>
19
       <li><strong>Release manager:</strong>
20
                    <a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall</a>, <a href="https://www.openhub.net/p/koha/contributors/6618544661344">Brendan Gallagher</a></li>
21
       <li><strong>(Database) Documentation manager:</strong>
22
           <a href="https://www.openhub.net/p/koha/contributors/6618544609030">Chris Cormack</a>, David Nind (Assistant)
23
       </li>
24
       <li><strong>Translation manager:</strong>
25
           <a href="https://www.openhub.net/p/koha/contributors/6618544839606">Bernardo González Kriegel</a></li>
26
       <li><strong>Quality assurance team:</strong>
27
        <ul>
28
          <li><a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi</a></li>
29
          <li><a href="https://www.openhub.net/p/koha/contributors/6620692886191">Nick Clemens</a></li>
30
          <li><a href="https://www.openhub.net/p/koha/contributors/6618545125093">Jonathan Druart</a></li>
31
          <li><a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall</a></li>
32
          <li><a href="https://www.openhub.net/p/koha/contributors/6620692419690">Julian Maurice</a></li>
33
          <li><a href="https://www.openhub.net/p/koha/contributors/6618544785220">Martin Renvoize</a></li>
34
          <li><a href="https://www.openhub.net/p/koha/contributors/6618544727712">Marcel de Rooy</a></li>
35
          <li><a href="https://www.openhub.net/p/koha/contributors/6620692831733">Fridolin Somers</a></li>
36
        </ul>
37
       </li>
38
       <li><strong>Release maintainers:</strong>
39
        <ul>
40
         <li><a href="https://www.openhub.net/p/koha/contributors/6618544670742">Katrin Fischer</a> (16.11)</li>
41
         <li><a href="https://www.openhub.net/p/koha/contributors/6618544618401">Mason James</a> (16.05)</li>
42
         <li><a href="https://www.openhub.net/p/koha/contributors/6620692419690">Julian Maurice</a> (3.22)</li>
43
        </ul>
44
       </li>
45
       <li><strong>Packaging manager:</strong>
46
         <a href="https://www.openhub.net/p/koha/contributors/6620692605913">Mirko Tietgen</a>
47
       </li>
48
       <li><strong>Jenkins maintainer:</strong>
49
         <a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi</a>
50
       </li>
51
       <li><strong>Bug wranglers:</strong>
52
          <ul>
53
              <li>Indranil Das Gupta</li>
54
              <li><a href="https://www.openhub.net/p/koha/contributors/6618545408147">Marc Véron</a></li>
55
          </ul>
56
       </li>
57
   </ul>
58
59
   <h2>Koha development team</h2>
60
     <ul>
61
       <li>Jacek Ablewicz</li>
62
       <li>Md. Aftabuddin</li>
63
       <li>Jon Aker</li>
64
       <li>Chloe Alabaster</li>
65
       <li>Edward Allen</li>
66
       <li>Francisco M. Marzoa Alonso</li>
67
       <li>Joseph Alway</li>
68
       <li>Cindy Murdock Ames</li>
69
       <li>Aleisha Amohia</li>
70
       <li>Roman Amor</li>
71
       <li>Richard Anderson</li>
72
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692181851">Nahuel Angelinetti</a></li>
73
       <li>Nuño López Ansótegui</li>
74
       <li>Dimitris Antonakis</li>
75
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi (3.18 - 3.22 Release Manager; 3.12 Release Maintainer; 16.05, 16.11 QA Team Member)</a></li>
76
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692124662">Andrew Arensburger (the small and great C4::Context module)</a></li>
77
       <li>Alex Arnaud</li>
78
       <li>Petter Goksoyr Asen</li>
79
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544614259">Joe Atzberger</a></li>
80
       <li>Héctor Eduardo Castro Avalos</li>
81
       <li>Larry Baerveldt</li>
82
       <li>Marc Balmer</li>
83
       <li>Edmund Balnaves</li>
84
       <li>Al Banks</li>
85
       <li>Daniel Banzli</li>
86
       <li>Stefano Bargioni</li>
87
       <li>Daniel Barker</li>
88
       <li>Greg Barniskis</li>
89
       <li>Benedykt P. Barszcz (Polish for 2.0)</li>
90
       <li>D Ruth Bavousett (3.12 Translation Manager)</li>
91
       <li>Maxime Beaulieu</li>
92
       <li>Natalie Bennison</li>
93
       <li>John Beppu</li>
94
       <li>Pablo Bianchi</li>
95
       <li>David Birmingham</li>
96
       <li>Florian Bischof</li>
97
       <li>Gaetan Boisson</li>
98
       <li>Danny Bouman</li>
99
       <li>Christopher Brannon (3.20 QA Team Member)</li>
100
       <li>Stan Brinkerhoff</li>
101
       <li>Isaac Brodsky</li>
102
       <li>Ivan Brown</li>
103
       <li>Roger Buck</li>
104
       <li>Steven Callender</li>
105
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692376789">Jared Camins-Esakov (3.12 Release Manager; 3.6 Release Maintainer)</a></li>
106
       <li>Colin Campbell (3.4 QA Manager)</li>
107
       <li>Fernando Canizo</li>
108
       <li>Barry Cannon</li>
109
       <li>Frédérick Capovilla</li>
110
       <li>DeAndre Carroll</li>
111
       <li>Chris Catalfo (new plugin MARC editor)</li>
112
       <li>Marc Chantreux</li>
113
       <li>Jerome Charaoui</li>
114
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544614260">Galen Charlton (3.2, 3.14, and 3.16 Release Manager; 3.16 Release Maintainer; 3.18 QA Team Member; 16.05 Packaging Manager)</a></li>
115
       <li>Francois Charbonnier</li>
116
       <li>Evonne Cheung</li>
117
       <li>Andrew Chilton</li>
118
       <li>Barton Chittenden</li>
119
       <li>Koha SAB CINECA</li>
120
       <li>Nick Clemens (16.11 QA Team Member)</li>
121
       <li>Garry Collum</li>
122
       <li>David Cook</li>
123
       <li>John Copeland</li>
124
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544609030">Chris Cormack (1.x, 3.4 and 3.6 Release Manager; 3.8, 3.10, 3.18 and 3.20 Release Maintainer; 3.2 Translation Manager; 3.14 QA Team Member)</a></li>
125
       <li>Jeremy Crabtree</li>
126
       <li>Samuel Crosby</li>
127
       <li>Christophe Croullebois</li>
128
       <li>Olivier Crouzet</li>
129
       <li>Nate Curulla</li>
130
       <li>Vincent Danjean</li>
131
       <li>Hugh Davenport</li>
132
       <li>Elliott Davis (3.12 QA Team Member)</li>
133
       <li>Doug Dearden</li>
134
       <li>Kip DeGraaf</li>
135
       <li>Stéphane Delaune</li>
136
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692210484">Frédéric Demians (3.4 - 3.10 Translation Manager; 3.20, 16.05 Release Maintainer)</a></li>
137
       <li>Connor Dewar</li>
138
       <li>Srikanth Dhondi</li>
139
       <li>Rocio Dressler</li>
140
       <li><a href="https://www.openhub.net/p/koha/contributors/6618545125093">Jonathan Druart (3.8 - 16.11 QA Team Member)</a></li>
141
       <li>Serhij Dubyk</li>
142
       <li>Yohann Dufour</li>
143
       <li>Thomas Dukleth (MARC Frameworks Maintenance)</li>
144
       <li>Frederic Durand</li>
145
       <li>Sebastiaan Durand</li>
146
       <li>Rachel Dustin</li>
147
       <li>Ecole des Mines de Saint Etienne, Philippe Jaillon (OAI-PMH support)</li>
148
       <li>Stephen Edwards</li>
149
       <li>Dani Elder</li>
150
       <li>Gus Ellerm</li>
151
       <li>Andrew Elwell</li>
152
       <li>Brian Engard</li>
153
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544646984">Nicole C. Engard (3.0 - 16.11 Documentation Manager)</a></li>
154
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544677502">Magnus Enger</a></li>
155
       <li>Esiee School (Jérome Vizcaino, Michel Lerenard, Pierre Cauchois)</li>
156
       <li>Jason Etheridge</li>
157
       <li>Shaun Evans</li>
158
       <li>Pat Eyler (Kaitiaki from 2002 to 2004)</li>
159
       <li>Charles Farmer</li>
160
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544609865">Antoine Farnault</a></li>
161
       <li>Arslan Farooq</li>
162
       <li>Vitor Fernandes</li>
163
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544609053">Joshua Ferraro (3.0 Release Manager and Translation Manager)</a></li>
164
       <li>Julian Fiol</li>
165
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544670742">Katrin Fischer (3.12 - 16.11 QA Manager)</a></li>
166
       <li>Connor Fraser</li>
167
       <li>Clay Fouts</li>
168
       <li>Brendon Ford</li>
169
       <li>Claudia Forsman</li>
170
       <li>Corey Fuimaono</li>
171
       <li>Marco Gaiarin</li>
172
       <li>Pierrick Le Gall</li>
173
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544661344">Brendan A. Gallagher (3.14 - 3.22 QA Team Member; 16.05, 16.11 Release Manager)</a></li>
174
       <li>Tumer Garip</li>
175
       <li>Russel Garlick</li>
176
       <li>Mark Gavillet</li>
177
       <li>Claire Gravely</li>
178
       <li>Daniel Kahn Gillmor</li>
179
       <li>David Goldfein</li>
180
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544839606">Bernardo González Kriegel (3.14 - 16.11 Translation Manager; 3.10 Release Maintainer)</a></li>
181
       <li>Briana Greally</li>
182
       <li>Daniel Grobani</li>
183
       <li>Amit Gupta</li>
184
       <li>Indranil Das Gupta</li>
185
       <li>Michael Hafen</li>
186
       <li>Christopher Hall (3.8 Release Maintainer)</li>
187
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall (3.8 Release Maintainer; 3.14 - 16.11 QA Team Member; 16.11 Release Manager)</a></li>
188
       <li>Sean Hamlin</li>
189
       <li>Tim Hannah</li>
190
       <li>Mike Hansen</li>
191
       <li>Brian Harrington</li>
192
       <li>Brandon Haveman</li>
193
       <li>Rochelle Healy</li>
194
       <li>Emma Heath</li>
195
       <li>Friedrich zur Hellen</li>
196
       <li>Kate Henderson</li>
197
       <li>Michaes Herman</li>
198
       <li>Claire Hernandez</li>
199
       <li>Wolfgang Heymans</li>
200
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544614261">Ryan Higgins</a></li>
201
       <li>Morag Hills</li>
202
       <li>Sèbastien Hinderer</li>
203
       <li>Kristina D.C. Hoeppner</li>
204
       <li>Stephanie Hogan</li>
205
       <li>Karl Holten</li>
206
       <li>Daniel Holth</li>
207
       <li>Andrew Hooper</li>
208
       <li>Alexandra Horsman</li>
209
       <li>Tom Houlker</li>
210
       <li>Matthew Hunt</li>
211
       <li>Christopher Hyde</li>
212
       <li>Rolando Isidoro</li>
213
       <li>Cory Jaeger</li>
214
       <li>Lee Jamison</li>
215
       <li>Srdjan Jankovic</li>
216
       <li>Philippe Jaillon</li>
217
       <li><a href="https://www.openhub.net/accounts/kohaaloha">Mason James (3.10 - 3.14 QA Team Member, 3.16 Release Maintainer)</a></li>
218
       <li>Mike Johnson</li>
219
       <li>Donovan Jones</li>
220
       <li>Bart Jorgensen</li>
221
       <li>Janusz Kaczmarek</li>
222
       <li>Koustubha Kale</li>
223
       <li>Pasi Kallinen</li>
224
       <li>Peter Crellan Kelly</li>
225
       <li>Jorgia Kelsey</li>
226
       <li>Olli-Antti Kivilahti</li>
227
       <li>Attila Kinali</li>
228
       <li>Chris Kirby</li>
229
       <li>Ulrich Kleiber</li>
230
       <li>Rafal Kopaczka</li>
231
       <li>Piotr Kowalski</li>
232
       <li>Joonas Kylmälä</li>
233
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544614275">Henri-Damien Laurent (3.0 Release Maintainer)</a></li>
234
       <li>Arnaud Laurin</li>
235
       <li>Nicolas Legrand</li>
236
       <li>Sonia Lemaire</li>
237
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544609147">Owen Leonard (3.0+ Interface Design)</a></li>
238
       <li>Ambrose Li (translation tool)</li>
239
       <li>Gynn Lomax</li>
240
       <li>Peter Lorimer</li>
241
       <li>Robert Lyon (Corporate Serials)</li>
242
       <li>Merllisia Manueli</li>
243
       <li>Francois Marier</li>
244
       <li>Patricio Marrone</li>
245
       <li>Jesse Maseto</li>
246
       <li>Frère Sébastien Marie</li>
247
       <li>Ricardo Dias Marques</li>
248
       <li>Julian Maurice (3.18 QA Team Member; 3.22 Release Maintainer)</li>
249
       <li>Remi Mayrand-Provencher</li>
250
       <li>Brig C. McCoy</li>
251
       <li>Tim McMahon</li>
252
       <li>Dorian Meid (German translation)</li>
253
       <li>Meenakshi. R</li>
254
       <li>Melia Meggs</li>
255
       <li>Holger Meißner</li>
256
       <li>Karl Menzies</li>
257
       <li>Matthias Meusburger</li>
258
       <li>Sophie Meynieux</li>
259
       <li>Janet McGowan</li>
260
       <li>Alan Millar</li>
261
       <li>Jono Mingard</li>
262
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544607803">Andrew Moore</a></li>
263
       <li>Francesca Moore</li>
264
       <li>Josef Moravec</li>
265
       <li>Sharon Moreland</li>
266
       <li>Nicolas Morin</li>
267
       <li>Mike Mylonas</li>
268
       <li>Natasha ?? [Catalyst Academy]</li>
269
       <li>Nadia Nicolaides</li>
270
       <li>Joy Nelson</li>
271
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544615991">Chris Nighswonger (3.2 - 3.6 Release Maintainer)</a></li>
272
       <li>Brian Norris</li>
273
       <li>Duy Tinh Nguyen</li>
274
       <li>Simith D'Oliveira</li>
275
       <li>Albert Oller</li>
276
       <li>Eric Olsen</li>
277
       <li>H. Passini</li>
278
       <li>Aliki Pavlidou</li>
279
       <li>Dobrica Pavlinusic</li>
280
       <li>Maxime Pelletier</li>
281
       <li>Shari Perkins</li>
282
       <li>Martin Persson</li>
283
       <li>Fred Pierre</li>
284
       <li>Genevieve Plantin</li>
285
       <li>Polytechnic University</li>
286
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544612249">Paul Poulain (2.0, 2.2, 3.8, 3.10 Release Manager; 2.2 Release Maintainer; 3.12 - 16.05 QA Team Member)</a></li>
287
       <li>Karam Qubsi</li>
288
       <li>Romina Racca</li>
289
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692116417">MJ Ray (2.0 Release Maintainer)</a></li>
290
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544650708">Liz Rea</a> (3.6, 3.18 Release Maintainer)</li>
291
       <li>Thatcher Rea</li>
292
       <li>Allen Reinmeyer</li>
293
       <li>Serge Renaux</li>
294
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544785220">Martin Renvoize (3.16 - 16.11 QA Team Member)</a></li>
295
       <li>Abby Robertson</li>
296
       <li>Waylon Robertson</li>
297
       <li>Benjamin Rokseth</li>
298
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544727712">Marcel de Rooy (3.8 - 16.11 QA Team Member)</a></li>
299
       <li>Andreas Roussos</li>
300
       <li>Salvador Zaragoza Rubio</li>
301
       <li>Mathieu Saby</li>
302
       <li>Eivin Giske Skaaren</li>
303
       <li>Brice Sanchez</li>
304
       <li>Sam Sanders</li>
305
       <li>Rodrigo Santellan</li>
306
       <li>Viktor Sarge</li>
307
       <li>A. Sassmannshausen</li>
308
       <li>Adrien Saurat</li>
309
       <li>Dan Scott</li>
310
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544619438">Robin Sheat (3.2 - 3.22 Packaging Manager)</a></li>
311
       <li>Juhani Seppälä</li>
312
       <li>John Seymour</li>
313
       <li>Juan Romay Sieira</li>
314
       <li>Zach Sim</li>
315
       <li>Radek Siman</li>
316
       <li>Silvia Simonetti</li>
317
       <li>Savitra Sirohi</li>
318
       <li>Pawel Skuza (Polish for 1.2)</li>
319
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692831733">Fridolin Somers (3.14 Release Maintainer)</a></li>
320
       <li>Southeastern University</li>
321
       <li>Martin Stenberg</li>
322
       <li>Glen Stewart</li>
323
       <li>Will Stokes</li>
324
       <li>Simon Story</li>
325
       <li>David Strainchamps</li>
326
       <li>Ed Summers (Some code and Perl packages like MARC::Record)</li>
327
       <li>Daniel Sweeney</li>
328
       <li>Zeno Tajoli</li>
329
       <li>Lari Taskula</li>
330
       <li>Samanta Tello</li>
331
       <li>Adam Thick</li>
332
       <li><a href="https://www.openhub.net/p/koha/contributors/6618544609107">Finlay Thompson</a></li>
333
       <li>Peggy Thrasher</li>
334
       <li>Fabio Tiana</li>
335
       <li>Mirko Tietgen (16.11 Packaging Manager)</li>
336
       <li>Mark Tompsett</li>
337
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692101577">Steve Tonnesen (early MARC work, Virtual Bookshelves concept, KohaCD)</a></li>
338
       <li>Bruno Toumi</li>
339
       <li>Andrei V. Toutoukine</li>
340
       <li>Duncan Tyler</li>
341
       <li>Kathryn Tyree</li>
342
       <li>Darrell Ulm</li>
343
       <li>Universidad ORT Uruguay (Ernesto Silva, Andres Tarallo)</li>
344
       <li><a href="https://www.openhub.net/p/koha/contributors/6618545408147">Marc Véron</a></li>
345
       <li>Justin Vos</li>
346
       <li>Aleksa Vujicic</li>
347
       <li>Reed Wade</li>
348
       <li>Stacey Walker</li>
349
       <li>Ian Walls (3.6 - 3.10 QA Manager)</li>
350
       <li><a href="https://www.openhub.net/accounts/janewagner">Jane Wagner</a></li>
351
       <li>Ward van Wanrooij</li>
352
       <li><a href="https://www.openhub.net/accounts/pianohacker">Jesse Weaver (16.05, 16.11 QA Team Member)</a></li>
353
       <li>Stefan Weil</li>
354
       <li>Aaron Wells</li>
355
       <li>Rick Welykochy</li>
356
       <li>Piotr Wejman</li>
357
       <li>Ron Wickersham</li>
358
       <li>Brett Wilkins</li>
359
       <li><a href="https://www.openhub.net/p/koha/contributors/6620692127299">Olwen Williams (Database design and data extraction for Koha 1.0)</a></li>
360
       <li>Robert Williams</li>
361
       <li>James Winter</li>
362
       <li>Lars Wirzenius</li>
363
       <li>Thomas Wright</li>
364
       <li>Jen Zajac</li>
365
       <li>Kenza Zaki</li>
366
     </ul>
367
     <h3>Contributing companies and institutions</h3>
368
     <ul>
369
       <li>BibLibre, France</li>
370
       <li>Bibliotheksservice-Zentrum Baden-Württemberg (BSZ), Germany</li>
371
       <li>ByWater Solutions, USA</li>
372
       <li>Calyx, Australia</li>
373
       <li>Catalyst IT, New Zealand</li>
374
       <li>C &amp; P Bibliography Services, USA</li>
375
       <li>Hochschule für Gesundheit (hsg), Germany</li>
376
       <li>Katipo Communications, New Zealand</li>
377
       <li>KEEP SOLUTIONS, Portugal</li>
378
       <li>KohaAloha, New Zealand</li>
379
       <li>LibLime, USA</li>
380
       <li>Libriotech, Norway</li>
381
       <li>Nelsonville Public Library, Ohio, USA</li>
382
       <li>Prosentient Systems, Australia</li>
383
       <li>PTFS, Maryland, USA</li>
384
       <li>PTFS Europe Ltd, United Kingdom</li>
385
       <li>Rijksmuseum, Amsterdam, The Netherlands</li>
386
       <li>SAN-Ouest Provence, France</li>
387
       <li>software.coop, United Kingdom</li>
388
       <li>Tamil, France</li>
389
       <li>Universidad Nacional de Córdoba, Argentina</li>
390
       <li>Xercode, Spain</li>
391
     </ul>
392
393
     <h2>Additional thanks to...</h2>
394
       <ul>
395
         <li>Irma Birchall</li>
396
         <li>Rachel Hamilton-Williams (Kaitiaki from 2004 to present)</li>
397
         <li>Stephen Hedges (early Documentation Manager)</li>
398
         <li>Brooke Johnson</li>
399
         <li>Jo Ransom</li>
400
         <li>Nicholas Rosasco (Documentation Compiler)</li>
401
         <li>Regula Sebastiao</li>
402
       </ul>
403
</div>
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/about.tt (-403 / +1 lines)
Lines 349-757 Link Here
349
    [% END %]
349
    [% END %]
350
        </div>
350
        </div>
351
351
352
        <div id="team">
352
        [% INCLUDE 'team.inc' %]
353
            <h2>Special thanks to the following organizations</h2>
354
            <ul>
355
                <li><a href="http://library.org.nz">Horowhenua Library Trust</a>, New Zealand, and Rosalie Blake, Head of Libraries, (Koha 1.0)</li>
356
                <li>The <a href="http://www.myacpl.org/">Athens County Public Libraries</a>, Ohio, USA (MARC sponsorship, documentation, template maintenance)</li>
357
                <li><a href="http://www.emn.fr">EMN (Ecole des Mines de Nantes)</a>, France (Suggestions, Stats wizards and improved LDAP sponsorship)</li>
358
                <li><a href="http://www.mines-paristech.fr">Mines Paristech (previously Ecole Nationale Supérieure des Mines de Paris)</a>, France (biblio frameworks, MARC authorities, OPAC basket, Serials sponsorship)</li>
359
                <li><a href="http://www.mediathequeouestprovence.fr/">SAN-Ouest Provence</a>, France (Koha 3.0 enhancements to patrons and holds modules)</li>
360
                <li>The <a href="http://ccfls.org">Crawford County Federated Library System</a>, PA, USA (Koha 3.0 Zebra Integration sponsorship)</li>
361
                <li>The <a href="http://www.geauga.lib.oh.us/">Geauga County Public Library</a>, OH, USA (Koha 3.0 beta testing)</li>
362
                <li>The <a href="http://library.neu.edu.tr">Near East University</a>, Cyprus</li>
363
                <li>OPUS International Consultants, Wellington, New Zealand (Corporate Serials sponsorship)</li>
364
                <li><a href="http://www.famfamfam.com/">famfamfam.com</a> Birmingham (UK) based developer Mark James for the famfamfam Silk iconset.</li>
365
                <li><a href="http://www.ashs.school.nz/">Albany Senior High School</a>, Auckland, New Zealand (OPAC 'star-ratings' sponsorship)</li>
366
            </ul>
367
368
            <h2>Koha <span style="color:red" title="Koha version numbering has jumped from 3.22 to 16.05 (yy.mm) as from May 2016">17.05</span> release team</h2>
369
            <ul>
370
                <li><strong>Release manager:</strong>
371
                    <a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall</a>, <a href="https://www.openhub.net/p/koha/contributors/6618544661344">Brendan Gallagher</a></li>
372
                <li><strong>(Database) Documentation manager:</strong>
373
                    <a href="https://www.openhub.net/p/koha/contributors/6618544609030">Chris Cormack</a>, David Nind (Assistant)
374
                </li>
375
                <li><strong>Translation manager:</strong>
376
                    <a href="https://www.openhub.net/p/koha/contributors/6618544839606">Bernardo González Kriegel</a></li>
377
                <li><strong>Quality assurance team:</strong>
378
                    <ul>
379
                        <li><a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi</a></li>
380
                        <li><a href="https://www.openhub.net/p/koha/contributors/6620692886191">Nick Clemens</a></li>
381
                        <li><a href="https://www.openhub.net/p/koha/contributors/6618545125093">Jonathan Druart</a></li>
382
                        <li><a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall</a></li>
383
                        <li><a href="https://www.openhub.net/p/koha/contributors/6620692419690">Julian Maurice</a></li>
384
                        <li><a href="https://www.openhub.net/p/koha/contributors/6618544785220">Martin Renvoize</a></li>
385
                        <li><a href="https://www.openhub.net/p/koha/contributors/6618544727712">Marcel de Rooy</a></li>
386
                        <li><a href="https://www.openhub.net/p/koha/contributors/6620692831733">Fridolin Somers</a></li>
387
                    </ul>
388
                </li>
389
                <li><strong>Release maintainers:</strong>
390
                    <ul>
391
                        <li><a href="https://www.openhub.net/p/koha/contributors/6618544670742">Katrin Fischer</a> (16.11)</li>
392
                        <li><a href="https://www.openhub.net/p/koha/contributors/6618544618401">Mason James</a> (16.05)</li>
393
                        <li><a href="https://www.openhub.net/p/koha/contributors/6620692419690">Julian Maurice</a> (3.22)</li>
394
                    </ul>
395
                </li>
396
                <li><strong>Packaging manager:</strong>
397
                    <a href="https://www.openhub.net/p/koha/contributors/6620692605913">Mirko Tietgen</a>
398
                </li>
399
                <li><strong>Jenkins maintainer:</strong>
400
                    <a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi</a>
401
                </li>
402
                <li><strong>Bug wranglers:</strong>
403
                    <ul>
404
                        <li>Indranil Das Gupta</li>
405
                        <li><a href="https://www.openhub.net/p/koha/contributors/6618545408147">Marc Véron</a></li>
406
                    </ul>
407
                </li>
408
            </ul>
409
410
            <h2>Koha development team</h2>
411
            <ul>
412
                <li>Jacek Ablewicz</li>
413
                <li>Md. Aftabuddin</li>
414
                <li>Jon Aker</li>
415
                <li>Chloe Alabaster</li>
416
                <li>Edward Allen</li>
417
                <li>Francisco M. Marzoa Alonso</li>
418
                <li>Joseph Alway</li>
419
                <li>Cindy Murdock Ames</li>
420
                <li>Aleisha Amohia</li>
421
                <li>Roman Amor</li>
422
                <li>Richard Anderson</li>
423
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692181851">Nahuel Angelinetti</a></li>
424
                <li>Nuño López Ansótegui</li>
425
                <li>Dimitris Antonakis</li>
426
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi (3.18 - 3.22 Release Manager; 3.12 Release Maintainer; 16.05, 16.11 QA Team Member)</a></li>
427
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692124662">Andrew Arensburger (the small and great C4::Context module)</a></li>
428
                <li>Alex Arnaud</li>
429
                <li>Petter Goksoyr Asen</li>
430
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544614259">Joe Atzberger</a></li>
431
                <li>Héctor Eduardo Castro Avalos</li>
432
                <li>Larry Baerveldt</li>
433
                <li>Marc Balmer</li>
434
                <li>Edmund Balnaves</li>
435
                <li>Al Banks</li>
436
                <li>Daniel Banzli</li>
437
                <li>Stefano Bargioni</li>
438
                <li>Daniel Barker</li>
439
                <li>Greg Barniskis</li>
440
                <li>Benedykt P. Barszcz (Polish for 2.0)</li>
441
                <li>D Ruth Bavousett (3.12 Translation Manager)</li>
442
                <li>Maxime Beaulieu</li>
443
                <li>Natalie Bennison</li>
444
                <li>John Beppu</li>
445
                <li>Pablo Bianchi</li>
446
                <li>David Birmingham</li>
447
                <li>Florian Bischof</li>
448
                <li>Gaetan Boisson</li>
449
                <li>Danny Bouman</li>
450
                <li>Christopher Brannon (3.20 QA Team Member)</li>
451
                <li>Stan Brinkerhoff</li>
452
                <li>Isaac Brodsky</li>
453
                <li>Ivan Brown</li>
454
                <li>Roger Buck</li>
455
                <li>Steven Callender</li>
456
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692376789">Jared Camins-Esakov (3.12 Release Manager; 3.6 Release Maintainer)</a></li>
457
                <li>Colin Campbell (3.4 QA Manager)</li>
458
                <li>Fernando Canizo</li>
459
                <li>Barry Cannon</li>
460
                <li>Frédérick Capovilla</li>
461
                <li>DeAndre Carroll</li>
462
                <li>Chris Catalfo (new plugin MARC editor)</li>
463
                <li>Marc Chantreux</li>
464
                <li>Jerome Charaoui</li>
465
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544614260">Galen Charlton (3.2, 3.14, and 3.16 Release Manager; 3.16 Release Maintainer; 3.18 QA Team Member; 16.05 Packaging Manager)</a></li>
466
                <li>Francois Charbonnier</li>
467
                <li>Evonne Cheung</li>
468
                <li>Andrew Chilton</li>
469
                <li>Barton Chittenden</li>
470
                <li>Koha SAB CINECA</li>
471
                <li>Nick Clemens (16.11 QA Team Member)</li>
472
                <li>Garry Collum</li>
473
                <li>David Cook</li>
474
                <li>John Copeland</li>
475
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544609030">Chris Cormack (1.x, 3.4 and 3.6 Release Manager; 3.8, 3.10, 3.18 and 3.20 Release Maintainer; 3.2 Translation Manager; 3.14 QA Team Member)</a></li>
476
                <li>Jeremy Crabtree</li>
477
                <li>Samuel Crosby</li>
478
                <li>Christophe Croullebois</li>
479
                <li>Olivier Crouzet</li>
480
                <li>Nate Curulla</li>
481
                <li>Vincent Danjean</li>
482
                <li>Hugh Davenport</li>
483
                <li>Elliott Davis (3.12 QA Team Member)</li>
484
                <li>Doug Dearden</li>
485
                <li>Kip DeGraaf</li>
486
                <li>Stéphane Delaune</li>
487
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692210484">Frédéric Demians (3.4 - 3.10 Translation Manager; 3.20, 16.05 Release Maintainer)</a></li>
488
                <li>Connor Dewar</li>
489
                <li>Srikanth Dhondi</li>
490
                <li>Rocio Dressler</li>
491
                <li><a href="https://www.openhub.net/p/koha/contributors/6618545125093">Jonathan Druart (3.8 - 16.11 QA Team Member)</a></li>
492
                <li>Serhij Dubyk</li>
493
                <li>Yohann Dufour</li>
494
                <li>Thomas Dukleth (MARC Frameworks Maintenance)</li>
495
                <li>Frederic Durand</li>
496
                <li>Sebastiaan Durand</li>
497
                <li>Rachel Dustin</li>
498
                <li>Ecole des Mines de Saint Etienne, Philippe Jaillon (OAI-PMH support)</li>
499
                <li>Stephen Edwards</li>
500
                <li>Dani Elder</li>
501
                <li>Gus Ellerm</li>
502
                <li>Andrew Elwell</li>
503
                <li>Brian Engard</li>
504
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544646984">Nicole C. Engard (3.0 - 16.11 Documentation Manager)</a></li>
505
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544677502">Magnus Enger</a></li>
506
                <li>Esiee School (Jérome Vizcaino, Michel Lerenard, Pierre Cauchois)</li>
507
                <li>Jason Etheridge</li>
508
                <li>Shaun Evans</li>
509
                <li>Pat Eyler (Kaitiaki from 2002 to 2004)</li>
510
                <li>Charles Farmer</li>
511
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544609865">Antoine Farnault</a></li>
512
                <li>Arslan Farooq</li>
513
                <li>Vitor Fernandes</li>
514
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544609053">Joshua Ferraro (3.0 Release Manager and Translation Manager)</a></li>
515
                <li>Julian Fiol</li>
516
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544670742">Katrin Fischer (3.12 - 16.11 QA Manager)</a></li>
517
                <li>Connor Fraser</li>
518
                <li>Clay Fouts</li>
519
                <li>Brendon Ford</li>
520
                <li>Claudia Forsman</li>
521
                <li>Corey Fuimaono</li>
522
                <li>Marco Gaiarin</li>
523
                <li>Pierrick Le Gall</li>
524
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544661344">Brendan A. Gallagher (3.14 - 3.22 QA Team Member; 16.05, 16.11 Release Manager)</a></li>
525
                <li>Tumer Garip</li>
526
                <li>Russel Garlick</li>
527
                <li>Mark Gavillet</li>
528
                <li>Claire Gravely</li>
529
                <li>Daniel Kahn Gillmor</li>
530
                <li>David Goldfein</li>
531
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544839606">Bernardo González Kriegel (3.14 - 16.11 Translation Manager; 3.10 Release Maintainer)</a></li>
532
                <li>Briana Greally</li>
533
                <li>Daniel Grobani</li>
534
                <li>Amit Gupta</li>
535
                <li>Indranil Das Gupta</li>
536
                <li>Michael Hafen</li>
537
                <li>Christopher Hall (3.8 Release Maintainer)</li>
538
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall (3.8 Release Maintainer; 3.14 - 16.11 QA Team Member; 16.11 Release Manager)</a></li>
539
                <li>Sean Hamlin</li>
540
                <li>Tim Hannah</li>
541
                <li>Mike Hansen</li>
542
                <li>Brian Harrington</li>
543
                <li>Brandon Haveman</li>
544
                <li>Rochelle Healy</li>
545
                <li>Emma Heath</li>
546
                <li>Friedrich zur Hellen</li>
547
                <li>Kate Henderson</li>
548
                <li>Michaes Herman</li>
549
                <li>Claire Hernandez</li>
550
                <li>Wolfgang Heymans</li>
551
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544614261">Ryan Higgins</a></li>
552
                <li>Morag Hills</li>
553
                <li>Sèbastien Hinderer</li>
554
                <li>Kristina D.C. Hoeppner</li>
555
                <li>Stephanie Hogan</li>
556
                <li>Karl Holten</li>
557
                <li>Daniel Holth</li>
558
                <li>Andrew Hooper</li>
559
                <li>Alexandra Horsman</li>
560
                <li>Tom Houlker</li>
561
                <li>Matthew Hunt</li>
562
                <li>Christopher Hyde</li>
563
                <li>Rolando Isidoro</li>
564
                <li>Cory Jaeger</li>
565
                <li>Lee Jamison</li>
566
                <li>Srdjan Jankovic</li>
567
                <li>Philippe Jaillon</li>
568
                <li><a href="https://www.openhub.net/accounts/kohaaloha">Mason James (3.10 - 3.14 QA Team Member, 3.16 Release Maintainer)</a></li>
569
                <li>Mike Johnson</li>
570
                <li>Donovan Jones</li>
571
                <li>Bart Jorgensen</li>
572
                <li>Janusz Kaczmarek</li>
573
                <li>Koustubha Kale</li>
574
                <li>Pasi Kallinen</li>
575
                <li>Peter Crellan Kelly</li>
576
                <li>Jorgia Kelsey</li>
577
                <li>Olli-Antti Kivilahti</li>
578
                <li>Attila Kinali</li>
579
                <li>Chris Kirby</li>
580
                <li>Ulrich Kleiber</li>
581
                <li>Rafal Kopaczka</li>
582
                <li>Piotr Kowalski</li>
583
                <li>Joonas Kylmälä</li>
584
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544614275">Henri-Damien Laurent (3.0 Release Maintainer)</a></li>
585
                <li>Arnaud Laurin</li>
586
                <li>Nicolas Legrand</li>
587
                <li>Sonia Lemaire</li>
588
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544609147">Owen Leonard (3.0+ Interface Design)</a></li>
589
                <li>Ambrose Li (translation tool)</li>
590
                <li>Gynn Lomax</li>
591
                <li>Peter Lorimer</li>
592
                <li>Robert Lyon (Corporate Serials)</li>
593
                <li>Merllisia Manueli</li>
594
                <li>Francois Marier</li>
595
                <li>Patricio Marrone</li>
596
                <li>Jesse Maseto</li>
597
                <li>Frère Sébastien Marie</li>
598
                <li>Ricardo Dias Marques</li>
599
                <li>Julian Maurice (3.18 QA Team Member; 3.22 Release Maintainer)</li>
600
                <li>Remi Mayrand-Provencher</li>
601
                <li>Brig C. McCoy</li>
602
                <li>Tim McMahon</li>
603
                <li>Dorian Meid (German translation)</li>
604
                <li>Meenakshi. R</li>
605
                <li>Melia Meggs</li>
606
                <li>Holger Meißner</li>
607
                <li>Karl Menzies</li>
608
                <li>Matthias Meusburger</li>
609
                <li>Sophie Meynieux</li>
610
                <li>Janet McGowan</li>
611
                <li>Alan Millar</li>
612
                <li>Jono Mingard</li>
613
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544607803">Andrew Moore</a></li>
614
                <li>Francesca Moore</li>
615
                <li>Josef Moravec</li>
616
                <li>Sharon Moreland</li>
617
                <li>Nicolas Morin</li>
618
                <li>Mike Mylonas</li>
619
                <li>Natasha ?? [Catalyst Academy]</li>
620
                <li>Nadia Nicolaides</li>
621
                <li>Joy Nelson</li>
622
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544615991">Chris Nighswonger (3.2 - 3.6 Release Maintainer)</a></li>
623
                <li>Brian Norris</li>
624
                <li>Duy Tinh Nguyen</li>
625
                <li>Simith D'Oliveira</li>
626
                <li>Albert Oller</li>
627
                <li>Eric Olsen</li>
628
                <li>H. Passini</li>
629
                <li>Aliki Pavlidou</li>
630
                <li>Dobrica Pavlinusic</li>
631
                <li>Maxime Pelletier</li>
632
                <li>Shari Perkins</li>
633
                <li>Martin Persson</li>
634
                <li>Fred Pierre</li>
635
                <li>Genevieve Plantin</li>
636
                <li>Polytechnic University</li>
637
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544612249">Paul Poulain (2.0, 2.2, 3.8, 3.10 Release Manager; 2.2 Release Maintainer; 3.12 - 16.05 QA Team Member)</a></li>
638
                <li>Karam Qubsi</li>
639
                <li>Romina Racca</li>
640
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692116417">MJ Ray (2.0 Release Maintainer)</a></li>
641
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544650708">Liz Rea</a> (3.6, 3.18 Release Maintainer)</li>
642
                <li>Thatcher Rea</li>
643
                <li>Allen Reinmeyer</li>
644
                <li>Serge Renaux</li>
645
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544785220">Martin Renvoize (3.16 - 16.11 QA Team Member)</a></li>
646
                <li>Abby Robertson</li>
647
                <li>Waylon Robertson</li>
648
                <li>Benjamin Rokseth</li>
649
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544727712">Marcel de Rooy (3.8 - 16.11 QA Team Member)</a></li>
650
                <li>Andreas Roussos</li>
651
                <li>Salvador Zaragoza Rubio</li>
652
                <li>Mathieu Saby</li>
653
                <li>Eivin Giske Skaaren</li>
654
                <li>Brice Sanchez</li>
655
                <li>Sam Sanders</li>
656
                <li>Rodrigo Santellan</li>
657
                <li>Viktor Sarge</li>
658
                <li>A. Sassmannshausen</li>
659
                <li>Adrien Saurat</li>
660
                <li>Dan Scott</li>
661
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544619438">Robin Sheat (3.2 - 3.22 Packaging Manager)</a></li>
662
                <li>Juhani Seppälä</li>
663
                <li>John Seymour</li>
664
                <li>Juan Romay Sieira</li>
665
                <li>Zach Sim</li>
666
                <li>Radek Siman</li>
667
                <li>Silvia Simonetti</li>
668
                <li>Savitra Sirohi</li>
669
                <li>Pawel Skuza (Polish for 1.2)</li>
670
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692831733">Fridolin Somers (3.14 Release Maintainer)</a></li>
671
                <li>Southeastern University</li>
672
                <li>Martin Stenberg</li>
673
                <li>Glen Stewart</li>
674
                <li>Will Stokes</li>
675
                <li>Simon Story</li>
676
                <li>David Strainchamps</li>
677
                <li>Ed Summers (Some code and Perl packages like MARC::Record)</li>
678
                <li>Daniel Sweeney</li>
679
                <li>Zeno Tajoli</li>
680
                <li>Lari Taskula</li>
681
                <li>Samanta Tello</li>
682
                <li>Adam Thick</li>
683
                <li><a href="https://www.openhub.net/p/koha/contributors/6618544609107">Finlay Thompson</a></li>
684
                <li>Peggy Thrasher</li>
685
                <li>Fabio Tiana</li>
686
                <li>Mirko Tietgen (16.11 Packaging Manager)</li>
687
                <li>Mark Tompsett</li>
688
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692101577">Steve Tonnesen (early MARC work, Virtual Bookshelves concept, KohaCD)</a></li>
689
                <li>Bruno Toumi</li>
690
                <li>Andrei V. Toutoukine</li>
691
                <li>Duncan Tyler</li>
692
                <li>Kathryn Tyree</li>
693
                <li>Darrell Ulm</li>
694
                <li>Universidad ORT Uruguay (Ernesto Silva, Andres Tarallo)</li>
695
                <li><a href="https://www.openhub.net/p/koha/contributors/6618545408147">Marc Véron</a></li>
696
                <li>Justin Vos</li>
697
                <li>Aleksa Vujicic</li>
698
                <li>Reed Wade</li>
699
                <li>Stacey Walker</li>
700
                <li>Ian Walls (3.6 - 3.10 QA Manager)</li>
701
                <li><a href="https://www.openhub.net/accounts/janewagner">Jane Wagner</a></li>
702
                <li>Ward van Wanrooij</li>
703
                <li><a href="https://www.openhub.net/accounts/pianohacker">Jesse Weaver (16.05, 16.11 QA Team Member)</a></li>
704
                <li>Stefan Weil</li>
705
                <li>Aaron Wells</li>
706
                <li>Rick Welykochy</li>
707
                <li>Piotr Wejman</li>
708
                <li>Ron Wickersham</li>
709
                <li>Brett Wilkins</li>
710
                <li><a href="https://www.openhub.net/p/koha/contributors/6620692127299">Olwen Williams (Database design and data extraction for Koha 1.0)</a></li>
711
                <li>Robert Williams</li>
712
                <li>James Winter</li>
713
                <li>Lars Wirzenius</li>
714
                <li>Thomas Wright</li>
715
                <li>Jen Zajac</li>
716
                <li>Kenza Zaki</li>
717
            </ul>
718
            <h3>Contributing companies and institutions</h3>
719
            <ul>
720
                <li>BibLibre, France</li>
721
                <li>Bibliotheksservice-Zentrum Baden-Württemberg (BSZ), Germany</li>
722
                <li>ByWater Solutions, USA</li>
723
                <li>Calyx, Australia</li>
724
                <li>Catalyst IT, New Zealand</li>
725
                <li>C &amp; P Bibliography Services, USA</li>
726
                <li>Hochschule für Gesundheit (hsg), Germany</li>
727
                <li>Katipo Communications, New Zealand</li>
728
                <li>KEEP SOLUTIONS, Portugal</li>
729
                <li>KohaAloha, New Zealand</li>
730
                <li>LibLime, USA</li>
731
                <li>Libriotech, Norway</li>
732
                <li>Nelsonville Public Library, Ohio, USA</li>
733
                <li>Prosentient Systems, Australia</li>
734
                <li>PTFS, Maryland, USA</li>
735
                <li>PTFS Europe Ltd, United Kingdom</li>
736
                <li>Rijksmuseum, Amsterdam, The Netherlands</li>
737
                <li>SAN-Ouest Provence, France</li>
738
                <li>software.coop, United Kingdom</li>
739
                <li>Tamil, France</li>
740
                <li>Universidad Nacional de Córdoba, Argentina</li>
741
                <li>Xercode, Spain</li>
742
            </ul>
743
744
            <h2>Additional thanks to...</h2>
745
            <ul>
746
                <li>Irma Birchall</li>
747
                <li>Rachel Hamilton-Williams (Kaitiaki from 2004 to present)</li>
748
                <li>Stephen Hedges (early Documentation Manager)</li>
749
                <li>Brooke Johnson</li>
750
                <li>Jo Ransom</li>
751
                <li>Nicholas Rosasco (Documentation Compiler)</li>
752
                <li>Regula Sebastiao</li>
753
            </ul>
754
        </div>
755
353
756
        <div id="licenses">
354
        <div id="licenses">
757
            <h2>Koha</h2>
355
            <h2>Koha</h2>
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences.tt (-110 / +2 lines)
Lines 77-193 Link Here
77
        No system preferences matched your search for: <strong>[% searchfield |html %]</strong>
77
        No system preferences matched your search for: <strong>[% searchfield |html %]</strong>
78
    </div>
78
    </div>
79
    [% END %]
79
    [% END %]
80
    [% FOREACH TAB IN TABS %]
80
    [% screen = 'preferences' %]
81
    <div class="prefs-tab">
81
    [% INCLUDE 'prefs-table.inc' %]
82
    <h2>[% TAB.tab_title %] preferences</h2>
83
    <form action="/cgi-bin/koha/admin/preferences.pl" method="post">
84
        [% UNLESS ( searchfield ) %]<div id="toolbar"><button class="save-all submit" type="submit">Save all [% TAB.tab_title %] preferences</button></div>[% END %]
85
        <input type="hidden" name="op" value="save" />
86
        <input type="hidden" name="tab" value="[% TAB.tab_id %]" />
87
88
            [% FOREACH LINE IN TAB.LINES %]
89
            [% IF ( LINE.is_group_title ) %]
90
            [% UNLESS ( loop.first ) %]</tbody></table>[% END %]
91
            <h3>[% LINE.title %]</h3>
92
            <table class="preferences">
93
            <thead><tr><th>Preference</th><th>Value</th></tr></thead>
94
            [% UNLESS ( loop.last ) %]<tbody>[% END %]
95
            [% ELSE %]
96
            [% IF ( loop.first ) %]<table class="preferences"><thead><tr><th>Preference</th><th>Value</th></tr></thead><tbody>[% END %]
97
            <tr class="name-row">
98
                <td class="name-cell">
99
                    <code>
100
                        [% FOREACH NAME IN LINE.NAMES %]
101
						<label for="pref_[% NAME.name %]">
102
							[% IF ( NAME.jumped ) %]
103
							<span class="term" id="jumped">[% NAME.name %]</span>
104
                            [% ELSIF ( NAME.highlighted ) %]
105
							<span class="term">[% NAME.name %]</span>
106
							[% ELSE %]
107
							[% NAME.name %]
108
							[% END %]
109
110
                            [% IF NAME.overridden %]
111
                                <span class="overridden" title="The system preference [% NAME.name %] may have been overridden from this value by one or more virtual hosts.">
112
                                    [Overridden]
113
                                </span>
114
                            [% END %]
115
						</label>
116
                        [% UNLESS ( loop.last ) %]<br />[% END %]
117
                        [% END %]
118
                    </code>
119
                </td>
120
                <td><div>
121
                    [% FOREACH CHUNK IN LINE.CHUNKS %]
122
                    [% IF ( CHUNK.type_text ) %]
123
                    [% CHUNK.contents %]
124
                    [% ELSIF ( CHUNK.type_input ) %]
125
                    <input type="[%IF CHUNK.input_type %][% CHUNK.input_type %][% ELSE %]text[% END %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "short" %]" value="[% CHUNK.value| html %]" autocomplete="off" /> [% IF ( CHUNK.dateinput ) %]<span class="hint">[% INCLUDE 'date-format.inc' %]</span>[% END %]
126
                    [% ELSIF ( CHUNK.type_select ) %]
127
                    <select name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "choice" %]">
128
                        [% FOREACH CHOICE IN CHUNK.CHOICES.sort('value') %]
129
                        [% IF ( CHOICE.selected ) %]
130
                        <option value="[% CHOICE.value %]" selected="selected">
131
                        [% ELSE %]
132
                        <option value="[% CHOICE.value %]">
133
                        [% END %]
134
                            [% CHOICE.text %]
135
                        </option>
136
                        [% END %]
137
                    </select>
138
                    [% ELSIF ( CHUNK.type_multiple ) %]
139
                    <select name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "choice" %]" multiple="multiple">
140
                        [% FOREACH CHOICE IN CHUNK.CHOICES %][% IF ( CHOICE.selected ) %]<option value="[% CHOICE.value %]" selected="selected">[% ELSE %]<option value="[% CHOICE.value %]">[% END %][% CHOICE.text %]</option>[% END %]
141
                    </select>
142
                    [% ELSIF ( CHUNK.type_textarea ) || ( CHUNK.type_htmlarea )%]
143
                        [% IF ( CHUNK.type_htmlarea ) && ( Koha.Preference('UseWYSIWYGinSystemPreferences') ) %]
144
                        <textarea name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "short" %] mce" rows="20" cols="60">[% CHUNK.value %]</textarea>
145
                        [% ELSE %]
146
                        <a class="expand-textarea" style="display: none" href="#">Click to Edit</a>
147
                        <textarea name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]" class="preference preference-[% CHUNK.class or "short" %]" rows="10" cols="40">[% CHUNK.value %]</textarea>
148
                        <a class="collapse-textarea" style="display:none" href="#">Click to collapse</br></a>
149
                        [% END %]
150
                    [% ELSIF ( CHUNK.type_languages ) %]
151
                    <dl>
152
                    [% FOREACH language IN CHUNK.languages %]
153
                        [% IF ( language.plural ) %]
154
                        <dt>
155
                            [% IF ( language.native_description ) %][% language.native_description %][% ELSE %][% language.rfc4646_subtag %][% END %]
156
                        </dt>
157
                        [% FOREACH sublanguages_loo IN language.sublanguages_loop %]
158
                        <dd>
159
                            <label for="pref_[% CHUNK.name %]_[% sublanguages_loo.rfc4646_subtag %]">[% sublanguages_loo.native_description %] [% sublanguages_loo.script_description %] [% sublanguages_loo.region_description %] [% sublanguages_loo.variant_description %]([% sublanguages_loo.rfc4646_subtag %])</label>
160
                            [% IF ( sublanguages_loo.enabled ) %]
161
                            <input value="[% sublanguages_loo.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% sublanguages_loo.rfc4646_subtag %]" type="checkbox" checked="checked" class="preference preference-checkbox"/>
162
                            [% ELSE %]
163
                            <input value="[% sublanguages_loo.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% sublanguages_loo.rfc4646_subtag %]" type="checkbox" class="preference preference-checkbox"/>
164
                            [% END %]
165
                        </dd>
166
                        [% END %]
167
                        [% ELSE %]
168
                        <dt>
169
                            <label for="pref_[% CHUNK.name %]_[% language.rfc4646_subtag %]">[% language.native_description %]([% language.rfc4646_subtag %])</label>
170
                            [% IF ( language.group_enabled ) %]
171
                            <input value="[% language.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% language.rfc4646_subtag %]" type="checkbox" checked="checked" class="preference preference-checkbox"/>
172
                            [% ELSE %]
173
                            <input value="[% language.rfc4646_subtag %]" name="pref_[% CHUNK.name %]" id="pref_[% CHUNK.name %]_[% language.rfc4646_subtag %]" type="checkbox" class="preference preference-checkbox"/>
174
                            [% END %]
175
                        </dt>
176
                        [% END %]
177
                    [% END %]
178
                    </dl>
179
                    [% END %]
180
                    [% END %]
181
                </div></td>
182
            </tr>
183
            [% IF ( loop.last ) %]</tbody></table>[% END %]
184
            [% END %]
185
        [% END %]
186
        <fieldset class="action"><button class="save-all submit" type="submit">Save all [% TAB.tab_title %] preferences</button> <a href="/cgi-bin/koha/admin/preferences.pl" class="force_reload cancel">Cancel</a></fieldset>
187
    </form>
188
    </div>
82
    </div>
189
    [% END %]
190
</div>
191
</div>
83
</div>
192
<div class="yui-b">
84
<div class="yui-b">
193
[% INCLUDE 'prefs-menu.inc' %]
85
[% INCLUDE 'prefs-menu.inc' %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/installer/featurereleasetool.tt (+151 lines)
Line 0 Link Here
1
[% INCLUDE 'doc-head-open.inc' %]
2
3
<title>Koha &rsaquo; Web installer &rsaquo; Feature Release Change Tool </title>
4
5
<style>
6
body {font-family: "Lato", sans-serif;}
7
div.tab {
8
   overflow: hidden;
9
   border: 1px solid #ccc;
10
   background-color: #f1f1f1;
11
   float:center;
12
}
13
14
div.tab button {
15
   background-color: inherit;
16
   position:relative;
17
   left:30%;
18
   border: none;
19
   outline: none;
20
   cursor: pointer;
21
   padding: 14px 16px;
22
   transition: 0.3s;
23
   font-size: 17px;
24
}
25
26
div.tab button:hover {
27
   background-color: #ddd;
28
}
29
30
div.tab button.active {
31
   background-color: #ccc;
32
}
33
34
.content {
35
   display: none;
36
   padding: 6px 12px;
37
   border: 1px solid #ccc;
38
   border-top: none;
39
}
40
41
table {
42
   font-family: arial, sans-serif;
43
   width: 50%;
44
}
45
46
td, th {
47
   border: 1px solid #dddddd;
48
   text-align: center;
49
}
50
51
#releasetoolpreftable {
52
    width:100%;
53
}
54
55
#prefbutton {
56
    margin-top:20px;
57
    margin-bottom:20px;
58
}
59
60
.preftitle {
61
    text-align:center;
62
}
63
</style>
64
65
[% IF ( finish ) %]<meta http-equiv="refresh" content="10; url=/cgi-bin/koha/mainpage.pl">[% END %]
66
[% INCLUDE 'installer-doc-head-close.inc' %]
67
</head>
68
69
<body id="installer" class="installer">
70
    <div class="container-fluid">
71
        <div class="row">
72
            <div id="installer-step3" class="installer-main col-sm-8 col-sm-offset-2 col-md-8 col-md-offset-2">
73
                <h1 id="logo"><a href="#">Koha</a></h1>
74
                <div class="tab">
75
                    <button onclick="openInfoTab(event, 'syspref')"> New Syspref information</button>
76
                    <button class="tablinks" onclick="openInfoTab(event, 'releasenotes')"> Release notes</button>
77
                </div>
78
79
                <div id="syspref" class="content">
80
                    <h2>New sysprefs added to Koha since [% dbversion %]</h2>
81
                    <div class="prefs-tab">
82
                            <form action="/cgi-bin/koha/installer/featurereleasetool.pl?dbversion=[%dbversion%]&kohaversion=[%kohaversion%]" method="post">
83
                                <input type="hidden" name="op" value="save" />
84
                                    <table id="releasetoolpreftable">
85
                                        <tr>
86
                                            <th class="preftitle">Preference</th>
87
                                            <th class="preftitle"> Description</th>
88
                                            <th class="preftitle">Value</th>
89
                                        </tr>
90
                                        [% FOREACH pref IN prefs %]
91
                                        <tr>
92
                                            <td>
93
                                                    <input type="hidden" name="pref_[% pref.variable %]" id="pref_[% pref.variable %]" value="[% pref.variable %]"/>
94
                                                    [% pref.variable %]
95
                                            </td>
96
                                            <td>
97
                                                    [% pref.explanation %]
98
                                            <td>
99
                                            [% IF (pref.value != '') %]
100
                                                <textarea type="text" name="pref_[%pref.variable%]" id="pref_[% pref.variable%]" value="[% pref.value| html %]"> [%pref.value %] </textarea>
101
                                            [% ELSE %]
102
                                                No default value
103
                                            [% END %]
104
                                            </td>
105
                                        </tr>
106
                                        [% END %]
107
                                    </table>
108
                                    [% IF !(submitted_form) %]
109
                                        <button type="submit" id="prefbutton" name="submit" value="submit"> Save all preferences </button>
110
                                    [% END %]
111
                            </form>
112
                    </div>
113
                </div>
114
115
                <div id="releasenotes" class="content">
116
                    <h2> Koha version [% kohaversion %] release notes </h2>
117
                    <a href="https://koha-community.org/koha-17-05-released/"> Koha 17.05 release notes link </a>
118
                </div>
119
                <br>
120
                <p><a href="/cgi-bin/koha/mainpage.pl" class="btn btn-primary">Next and submit</a></p>
121
            </div>
122
        </div>
123
    </div>
124
</body>
125
<script type="text/javascript">
126
127
function openInfoTab(evt, tabName) {
128
    // Declare all variable
129
    var i, tabcontent, tablinks;
130
131
    // Get all elements with class="tabcontent" and hide them
132
    tabcontent = document.getElementsByClassName("content");
133
    for (i = 0; i < tabcontent.length; i++) {
134
         tabcontent[i].style.display = "none";
135
    }
136
137
    // Get all elements with class="tablinks" and remove the class "active"
138
    tablinks = document.getElementsByClassName("tablinks");
139
    for (i = 0; i < tablinks.length; i++) {
140
         tablinks[i].className = tablinks[i].className.replace(" active", "");
141
    }
142
143
    // Show the current tab, and add an "active" class to the button that opened the tab
144
    document.getElementById(tabName).style.display = "block";
145
    evt.currentTarget.className += " active";
146
}
147
148
</script>
149
150
151
[% INCLUDE 'intranet-bottom.inc' %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/installer/step3.tt (-2 / +2 lines)
Lines 226-232 Link Here
226
                [% END # / IF default %]
226
                [% END # / IF default %]
227
227
228
                [% IF ( updatestructure ) %]
228
                [% IF ( updatestructure ) %]
229
                    <h2>Updating database structure</h2>
229
                    <h2>Updating database structure from [%dbversion%] to [%kohaversion%]</h2>
230
                    [% IF ( has_update_succeeds ) %]
230
                    [% IF ( has_update_succeeds ) %]
231
                        <p>Update report :</p>
231
                        <p>Update report :</p>
232
                        <ul>
232
                        <ul>
Lines 246-252 Link Here
246
                    [% UNLESS ( has_update_errors ) %]
246
                    [% UNLESS ( has_update_errors ) %]
247
                        <p>Everything went okay. Update done.</p>
247
                        <p>Everything went okay. Update done.</p>
248
                    [% END %]
248
                    [% END %]
249
                    <p><a href="install.pl?step=3&amp;op=finished" class="btn btn-primary">Continue to log in to Koha</a></p>
249
                    <p><a href="install.pl?step=3&amp;op=featurereleasetool&amp;dbversion=[%dbversion%]&amp;kohaversion=[%kohaversion%]&amp;update_report=[%update_report%]" class="btn btn-primary">Continue to feature release tool</a></p>
250
               [% END # / IF updatestructure %]
250
               [% END # / IF updatestructure %]
251
            </div> <!-- / #installer-step3 -->
251
            </div> <!-- / #installer-step3 -->
252
        </div> <!-- / .row -->
252
        </div> <!-- / .row -->
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/koha-news.tt (-73 / +3 lines)
Lines 96-174 Edit news item[% ELSE %]Add news item[% END %][% ELSE %]News[% END %]</div> Link Here
96
    [% IF ( op == 'add' ) %][% default_lang = lang %]
96
    [% IF ( op == 'add' ) %][% default_lang = lang %]
97
    [% ELSE %][% default_lang = new_detail.lang %]
97
    [% ELSE %][% default_lang = new_detail.lang %]
98
    [% END %]
98
    [% END %]
99
        <form name="add_form" method="post" action="/cgi-bin/koha/tools/koha-news.pl" >
99
100
            <input type="hidden" name="op" value="[% op %]" />
100
    [% INCLUDE 'newsform.inc' %]
101
            <input type="hidden" name="id" value="[% id %]" />
101
102
			<fieldset class="rows">
103
            <legend>OPAC and Koha news</legend>
104
           <ol> <li>
105
            <label for="lang">Display location:</label>
106
            <select id="lang" name="lang">
107
                [% IF ( default_lang == "" ) %]
108
                <option value="" selected="selected">All</option>
109
                [% ELSE %]
110
                <option value=""                    >All</option>
111
                [% END %]
112
                [% IF ( default_lang == "koha" ) %]
113
                <option value="koha" selected="selected">Librarian interface</option>
114
                [% ELSE %]
115
                <option value="koha"                    >Librarian interface</option>
116
                [% END %]
117
                [% IF ( default_lang == "slip" ) %]
118
                <option value="slip" selected="selected">Slip</option>
119
                [% ELSE %]
120
                <option value="slip"                    >Slip</option>
121
                [% END %]
122
                [% FOREACH lang_lis IN lang_list %]
123
                [% IF ( lang_lis.language == default_lang ) %]
124
                    <option value="[% lang_lis.language %]" selected="selected">OPAC ([% lang_lis.language %])</option>
125
                [% ELSE %]
126
                    <option value="[% lang_lis.language %]"                    >OPAC ([% lang_lis.language %])</option>
127
                [% END %]
128
                [% END %]
129
            </select>
130
            </li>
131
            <li>
132
                <label for="branch">Library: </label>
133
                <select id="branch" name="branch">
134
                    [% IF ( new_detail.branchcode == '' ) %]
135
                        <option value="" selected="selected">All libraries</option>
136
                    [% ELSE %]
137
                        <option value=""         >All libraries</option>
138
                    [% END %]
139
                    [% PROCESS options_for_libraries libraries => Branches.all( selected => new_detail.branchcode, unfiltered => 1, ) %]
140
                </select>
141
            </li>
142
            <li>
143
                <label for="title" class="required">Title: </label>
144
                <input id="title" size="30" type="text" name="title" value="[% new_detail.title %]" required="required" class="required" /> <span class="required">Required</span>
145
            </li>
146
            <li>
147
                <label for="from">Publication date: </label>
148
                <input id="from" type="text" name="timestamp" size="15" value="[% new_detail.timestamp %]" class="datepickerfrom" />
149
				<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
150
            </li>
151
            <li>
152
                <label for="to">Expiration date: </label>
153
                <input id="to" type="text" name="expirationdate" size="15" value="[% new_detail.expirationdate %]" class="datepickerto" />
154
				<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
155
            </li>
156
            <li>
157
                <label for="number">Appear in position: </label>
158
                [% IF ( new_detail.number ) %]
159
                    <input id="number" size="3" name="number" type="text" value="[% new_detail.number %]" />
160
                [% ELSE %]
161
                    <input id="number" size="3" name="number" type="text" />
162
                [% END %]
163
            </li>
164
            <li><label for="content">News: </label>
165
            <textarea name="content" id="content"  cols="75" rows="10">[% new_detail.content %]</textarea>
166
            </li>
167
            </ol>
168
			</fieldset>
169
  
170
                <fieldset class="action"><input class="button" type="submit" value="Submit" /> <a class="cancel" href="/cgi-bin/koha/tools/koha-news.pl">Cancel</a></fieldset>
171
        </form>
172
    [% ELSE %]
102
    [% ELSE %]
173
        <div style="margin-bottom:5px;">
103
        <div style="margin-bottom:5px;">
174
        <form name="add_form" method="post" action="/cgi-bin/koha/tools/koha-news.pl" >
104
        <form name="add_form" method="post" action="/cgi-bin/koha/tools/koha-news.pl" >
(-)a/tools/koha-news.pl (-2 / +3 lines)
Lines 83-90 foreach my $language ( @$tlangs ) { Link Here
83
    }
83
    }
84
}
84
}
85
85
86
my $location = "intranet";
86
$template->param( lang_list   => \@lang_list,
87
$template->param( lang_list   => \@lang_list,
87
                  branchcode  => $branchcode );
88
                  branchcode  => $branchcode,
89
                  location    => $location );
88
90
89
my $op = $cgi->param('op') // '';
91
my $op = $cgi->param('op') // '';
90
92
91
- 

Return to bug 18645