Bug 21662: (QA follow-up) Minor corrections
[koha-ffzg.git] / koha-tmpl / intranet-tmpl / prog / en / modules / about.tt
1 [% USE HtmlTags %]
2 [% USE Koha %]
3 [% USE KohaDates %]
4 [% SET footerjs = 1 %]
5 [% INCLUDE 'doc-head-open.inc' %]
6 <title>Koha &rsaquo; About Koha</title>
7 [% INCLUDE 'doc-head-close.inc' %]
8 </head>
9 <body id="about_about" class="about">
10 [% INCLUDE 'header.inc' %]
11
12 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; About Koha</div>
13
14
15 <div class="main container-fluid">
16     <div class="row">
17         <div class="col-md-12">
18
19             <h1>About Koha</h1>
20
21     <div id="abouttabs" class="toptabs numbered">
22         <ul>
23         <li><a href="#about">Server information</a></li>
24         <li><a href="#perl">Perl modules</a></li>
25         <li><a href="#sysinfo">System information</a></li>
26         <li><a href="#team">Koha team</a></li>
27         <li><a href="#licenses">Licenses</a></li>
28         <li><a href="#translations">Translations</a></li>
29         <li><a href="#history">Timeline</a></li>
30         </ul>
31
32         <div id="about">
33
34         <table>
35             <caption>Server information</caption>
36             <tr><th scope="row">Koha version: </th><td>[% kohaVersion | html %]</td></tr>
37             <tr><th scope="row">OS version ('uname -a'): </th><td>[% osVersion | html %]</td></tr>
38             <tr><th scope="row">Perl interpreter: </th><td>[% perlPath | html %]</td></tr>
39             <tr><th scope="row">Perl version: </th><td>[% perlVersion | html %]</td></tr>
40             <tr><th scope="row">Perl @INC: </th><td>
41                 [% FOREACH perlIncPat IN perlIncPath %]
42                     [% perlIncPat.perlinc | html %] <br />
43                 [% END %]
44             </td></tr>
45             <tr><th scope="row">MySQL version: </th><td>[% mysqlVersion | html %]</td></tr>
46             <tr><th scope="row">Apache version: </th><td>[% apacheVersion | html %]</td></tr>
47           [% IF (is_psgi) %]
48             <tr><th scope="row">PSGI: </th><td>[% psgi_server | html %]</td></tr>
49           [% END %]
50           [% IF Koha.Preference('SearchEngine') == 'Elasticsearch' %]
51             <tr>
52                 <th scope="row">Elasticsearch: </th>
53             [% IF elasticsearch_fatal_config_error %]
54                 <td><span class="status_warn">[% elasticsearch_fatal_config_error | html %]</span></td>
55             [% ELSE %]
56                 <td>
57                     Nodes:
58                     <span>[% elasticsearch_status.nodes.join(' / ') | html %]</span>
59                     |
60                     Status:
61                 [% IF elasticsearch_status.running %]
62                     <span class="status_ok">running</span>
63                     |
64                     Indices:
65                   [% FOREACH index IN elasticsearch_status.indexes %]
66                       [% index.index_name | html %] (count: <emph>[% index.count | html %]</emph>)[% UNLESS loop.last %], [% END %]
67                   [% END %]
68                 [% ELSE %]
69                     <span class="status_warn">not running</span>
70                 [% END %]
71                 </td>
72             [% END %]
73             </tr>
74           [% END %]
75             <tr><th scope="row">Memcached: </th>
76                 <td>
77                     Servers: [% IF memcached_servers %]<span>[% memcached_servers | html %]</span>
78                              [% ELSE %]<span>undefined</span>[% END %] |
79                     Namespace: [% IF memcached_namespace %]<span>[% memcached_namespace | html %]</span>
80                                [% ELSE %]<span>undefined</span>[% END %] |
81                     Status: [% IF memcached_servers %]
82                                 [% IF memcached_running and is_memcached_still_active %]
83                                     <span class="status_ok">running</span>.
84                                 [% ELSE %]
85                                     <span class="status_warn">not running</span>.
86                                     [% IF is_psgi %]
87                                         <span>Remember memcached needs to be started before Plack.</span>
88                                     [% END %]
89                                 [% END %]
90                             [% ELSE %]
91                                 <span>unknown</span>
92                             [% END %] |
93                     Config read from:
94                     [% SWITCH where_is_memcached_config %]
95                         [% CASE 'config_only' %]
96                             <span class="status_ok">koha-conf.xml</span>
97                         [% CASE 'ENV_only' %]
98                             <span class="status_warn">ENV</span> Note that the right place to define the memcached config is in your $KOHA_CONF file
99                         [% CASE 'both' %]
100                             <span class="status_warn">ENV and koha-conf.xml</span> Note that the right place to define the memcached config is in your $KOHA_CONF file. To avoid any misunderstanding you should not export the memcached config from ENV.
101                         [% CASE # nowhere %]
102                             <span class="status_warn">Nowhere</span> Note that the right place to define the memcached config is in your $KOHA_CONF file. Currently you do not have a valid memcached configuration defined.
103                     [% END %]
104                   [% IF effective_caching_method != 'Cache::Memcached::Fast' %]
105                     | Effective caching method: [% effective_caching_method | html %]
106                   [% END %]
107                 </td>
108             </tr>
109             <tr><th scope="row">Zebra version: </th><td>[% zebraVersion | html %]</td></tr>
110             [% IF (errZebraConnection == 10000) %]
111             <tr><th scope="row"><b>Error</b> </th><td>Zebra server seems not to be available. Is it started?</td></tr>
112             [% ELSIF (errZebraConnection) %]
113             <tr><th scope="row"><b>Warning</b> </th><td>Error message from Zebra: [% ( errZebraConnection ) | html %] </td></tr>
114             [% END %]
115             <tr>
116               <th scope="row">Date and time: </th>
117               <td>[% current_date_and_time | $KohaDates  with_hours => 1 %]</td>
118             </tr>
119             <tr>
120               [% timezone_config_class = (time_zone.config_invalid) ? 'status_warn' : '' %]
121               [% timezone_env_class    = (time_zone.env_invalid)    ? 'status_warn' : '' %]
122               <th scope="row">Time zone: </th>
123               <td>Used: <span>[% time_zone.actual | html %]</span>
124                           [% IF time_zone.actual_bad_tz_fallback %]
125                              <span>(This is a fallback value due to a bad configuration)</span>
126                           [% END %]
127                            |
128                   Config: [% IF time_zone.config != '' %]
129                             <span class="[% timezone_config_class | html %]">[% time_zone.config | html %]</span>
130                           [% ELSE %]
131                             <span>Undefined</span>
132                           [% END %] |
133                   Environment (TZ):  [% IF time_zone.environment != '' %]
134                           <span class="[% timezone_env_class | html %]">[% time_zone.environment | html %]</span>
135                         [% ELSE %]
136                           <span>Undefined</span>
137                         [% END %]
138               </td>
139             </tr>
140         </table>
141         </div>
142         <div id="perl">
143             <table style="cursor:pointer">
144                 <caption>Perl modules</caption>
145                 [% FOREACH tabl IN table %]
146                 <tr>
147                     [% FOREACH ro IN tabl.row %]
148                     [% IF ( ro.current ) %]
149                     [% IF ( ro.require ) %]
150                     <th scope="row" style="font-weight:bold;" title="Module current">
151                     [% ELSE %]
152                     <th scope="row" style="font-weight:normal" title="Module current">
153                     [% END %]
154                     [% ELSIF ( ro.upgrade ) %]
155                     [% IF ( ro.require ) %]
156                     <th scope="row" style="background-color:#FFCB2F;font-weight:bold;" title="Module upgrade needed">
157                     [% ELSE %]
158                     <th scope="row" style="background-color:#FFCB2F;font-weight:normal" title="Module upgrade needed">
159                     [% END %]
160                     [% ELSE %]
161                     [% IF ( ro.name == '' ) %]
162                     <th>
163                     [% ELSIF ( ro.require ) %]
164                     <th scope="row" style="background-color:#FF8A8A;font-weight:bold;" title="Required module missing">
165                     [% ELSE %]
166                     <th scope="row" style="background-color:#FF8A8A;font-weight:normal" title="Optional module missing">
167                     [% END %]
168                     [% END %]
169                     [% IF ( ro.name ) %]
170                     [% ro.name | html %] <span style="font-weight:normal; font-size:smaller"> ([% ro.reqversion | html %])</span>
171                     [% END %]
172                     </th>
173                     [% IF ( ro.name == '' ) %]
174                     <td>
175                     [% ELSIF ( ro.version ) %]
176                     <td>[% ro.version | html %]
177                     [% ELSE %]
178                     <td style="font-weight:bold">Not Installed [% END %]</td>
179                     [% END %]
180                 </tr>
181                 [% END %]
182             </table>
183         </div>
184
185         <div id="sysinfo">
186     [% IF warnPrefBiblioAddsAuthorities || warnPrefEasyAnalyticalRecords || warnPrefAnonymousPatron || warnPrefAnonymousPatron_PatronDoesNotExist || warnNoActiveCurrency || QueryParserError || warnIsRootUser || xml_config_warnings.size || AutoSelfCheckPatronDoesNotHaveSelfCheckPerm || AutoSelfCheckPatronHasTooManyPerm || warnStatisticsFieldsError || warnNoTemplateCaching || warnILLConfiguration || has_ai_issues || oauth2_missing_deps || bad_yaml_prefs %]
187         [% IF (warnIsRootUser) %]
188             <h2>Warning regarding current user</h2>
189             <p>You are logged in as the database administrative user. This is not recommended because some parts of Koha will not function as expected when using this account.</p>
190             <p>Please log in instead with a regular staff account. To create a staff account, create a library, a patron category 'Staff' and add a new patron. Then give this patron permissions from 'More' in the toolbar.</p>
191         [% END %]
192
193         [% IF has_ai_issues %]
194             <h2>Data problems</h2>
195             <p>Some of your tables have problems with their auto_increment values which may lead to data loss.</p>
196             <p><strong>You should not ignore this warning.</strong></p>
197             <p>The problem is that InnoDB does not keep auto_increment across SQL server restarts (it is only set in memory). So on server startup the auto_increment values are set to max(table.id)+1.</p>
198             <p>To know how to avoid this problem see the related wiki page:
199             <a href="https://wiki.koha-community.org/wiki/DBMS_auto_increment_fix">DBMS auto increment fix</a>
200             </p>
201
202             <h3>Problems found</h3>
203             [% IF ai_patrons %]
204                 <h4>Patrons</h4>
205                 <p>The following ids exist in both tables [% "borrowers" | $HtmlTags tag="strong" %] and [% "deletedborrowers" | $HtmlTags tag="strong" %]:</p>
206                 <p>[% FOR p IN ai_patrons %][% p.borrowernumber | html %][% UNLESS loop.last %], [% END %][% END %]</p>
207             [% END %]
208             [% IF ai_biblios %]
209                 <h4>Bibliographic records</h4>
210                 <p>The following ids exist in both tables [% "biblio" | $HtmlTags tag="strong" %] and [% "deletedbiblio" | $HtmlTags tag="strong" %]:</p>
211                 <p>[% FOR b IN ai_biblios %][% b.biblionumber | html %][% UNLESS loop.last %], [% END %][% END %]</p>
212             [% END %]
213             [% IF ai_items %]
214                 <h4>Items</h4>
215                 <p>The following ids exist in both tables [% "items" | $HtmlTags tag="strong" %] and [% "deleteditems" | $HtmlTags tag="strong" %]:</p>
216                 <p>[% FOR i IN ai_items %][% i.itemnumber | html %][% UNLESS loop.last %], [% END %][% END %]</p>
217             [% END %]
218             [% IF ai_checkouts %]
219                 <h4>Checkouts</h4>
220                 <p>The following ids exist in both tables [% "issues" | $HtmlTags tag="strong" %] and [% "old_issues" | $HtmlTags tag="strong" %]:</p>
221                 <p>[% FOR c IN ai_checkouts %][% c.issue_id | html %][% UNLESS loop.last %], [% END %][% END %]</p>
222             [% END %]
223             [% IF ai_holds %]
224                 <h4>Holds</h4>
225                 <p>The following ids exist in both tables [% "reserves" | $HtmlTags tag="strong" %] and [% "old_reserves" | $HtmlTags tag="strong" %]:</p>
226                 <p>[% FOR h IN ai_holds %][% h.reserve_id | html %][% UNLESS loop.last %], [% END %][% END %]</p>
227             [% END %]
228             <br/>
229         [% END %]
230
231         [% IF warnPrefBiblioAddsAuthorities || warnPrefEasyAnalyticalRecords || warnPrefAnonymousPatron || warnPrefAnonymousPatron_PatronDoesNotExist || warnNoActiveCurrency || QueryParserError || AutoSelfCheckPatronDoesNotHaveSelfCheckPerm || AutoSelfCheckPatronHasTooManyPerm || warnStatisticsFieldsError || warnNoTemplateCaching || warnILLConfiguration || oauth2_missing_deps || bad_yaml_prefs %]
232             <h2>Warnings regarding the system configuration</h2>
233             <table>
234                 <caption>Preferences and parameters</caption>
235                 [% IF (warnPrefBiblioAddsAuthorities) %]
236                 <tr><th scope="row"><b>Warning</b> </th><td>System preference 'AutoCreateAuthorities' set, but needs 'BiblioAddsAuthorities' set as well.</td></tr>
237                 [% END %]
238                 [% IF (warnPrefEasyAnalyticalRecords) %]
239                 <tr><th scope="row"><b>Warning</b> </th><td>System preference 'EasyAnalyticalRecords' set, but UseControlNumber preference is set to 'Use'. Set it to 'Don't use' or else the 'Show analytics' links in the staff client and the OPAC will be broken.</td></tr>
240                 [% END %]
241                 [% IF warnPrefAnonymousPatron %]
242                     <tr><th scope="row"><b>Warning</b> </th><td>System preference 'OPACPrivacy' set, but AnonymousPatron preference is set to '0'. Set it to a valid borrower number if you want that this feature works correctly.</td></tr>
243                 [% END %]
244                 [% IF warnPrefAnonymousPatron_PatronDoesNotExist %]
245                     <tr><th scope="row"><b>Warning</b> </th><td>Some patrons have requested a privacy on returning item but the AnonymousPatron pref is not set correctly. Set it to a valid borrower number if you want that this feature works correctly.</td></tr>
246                 [% END %]
247                 [% IF warnNoActiveCurrency %]
248                     <tr><th scope="row"><b>Warning</b> </th><td>No active currency is defined. Please go to <a href="/cgi-bin/koha/admin/currency.pl">Administration &gt; Currencies and exchange rates</a> and mark one currency as active.</td></tr>
249                 [% END %]
250                 [% IF warnStatisticsFieldsError %]
251                     <tr><th scope="row"><b>Warning</b> </th><td>System preference 'StatisticsFields' contains field names not belonging to the items database table: [% warnStatisticsFieldsError | html %] </td></tr>
252                 [% END %]
253                 [% IF QueryParserError %]
254                     <tr><th scope="row"><b>Warning</b> </th><td>
255                         You have set UseQueryParser but there was a problem inititializing QueryParser.
256                     [% IF QueryParserError.fallback %]
257                         The 'queryparser_config' entry is missing in your configuration file.
258                         The following configuration file was used without success: [% QueryParserError.file | html %].
259                     [% ELSE %]
260                         The following configuration file was used without success: [% QueryParserError.file | html %].
261                     [% END %]
262                         </td>
263                     </tr>
264                 [% END %]
265                 [% IF AutoSelfCheckPatronDoesNotHaveSelfCheckPerm %]
266                     <tr><th scope="row"><b>Warning</b> </th><td>
267                     The patron used for the self checkout module at the OPAC does not have the self_check => self_checkout_module permission.
268                     </td></tr>
269                 [% END %]
270                 [% IF AutoSelfCheckPatronHasTooManyPerm %]
271                     <tr><th scope="row"><b>Warning</b> </th><td>
272                     The patron used for the self checkout module at the OPAC has too many permissions. They should only have self_check => self_checkout_module.
273                     </td></tr>
274                 [% END %]
275                 [% IF warnNoTemplateCaching %]
276                     <tr><th scope="row"><b>Warning</b> </th><td>
277                     You are missing the &lt;template_cache_dir&gt; entry in your koha-conf.xml file.
278                     That will bring a performance boost to enable it.
279                     </td></tr>
280                 [% END %]
281                 [% IF warnILLConfiguration %]
282                   [% IF no_ill_backends %]
283                     <tr><th scope="row"><b>Warning</b> </th><td>
284                     The ILL module is enabled, but there are no backends available.
285                     </td></tr>
286                   [% END %]
287                   [% IF ill_partner_code_not_defined %]
288                     <tr><th scope="row"><b>Warning</b> </th><td>
289                     The ILL module is enabled, but no 'partner_code' defined in koha-conf.xml. Falling back to the hardcoded 'ILLLIBS'.
290                     </td></tr>
291                   [%END %]
292                   [% IF ill_branch_not_defined %]
293                     <tr><th scope="row"><b>Warning</b> </th><td>
294                     The ILL module is enabled, but no 'branch' block is defined in koha-conf.xml. You must define this block before use.
295                     </td></tr>
296                   [%END %]
297                   [% IF ill_partner_code_doesnt_exist %]
298                     <tr><th scope="row"><b>Warning</b> </th><td>
299                     The ILL module is enabled, but the configured 'partner_code' ([% ill_partner_code_doesnt_exist | html %]) is not defined on the system.
300                     </td></tr>
301                   [% END %]
302                 [% END %]
303                 [% IF oauth2_missing_deps %]
304                     <tr><th scope="row"><b>Warning</b> </th><td>
305                     System preference 'RESTOAuth2ClientCredentials' is set, but the required Net::OAuth2::AuthorizationServer dependency is missing. The feature is disabled.
306                     </td></tr>
307                 [% END %]
308                 [% IF bad_yaml_prefs %]
309                     <tr><th scope="row"><b>Warning</b> </th><td>
310                     Some system preferences have badly formatted YAML content: [% bad_yaml_prefs.join(', ') | html %]
311                     </td></tr>
312                 [% END %]
313             </table>
314         [% END %]
315
316         [% IF xml_config_warnings.size %]
317             <table>
318                 <caption>XML configuration file</caption>
319             [% FOREACH config_entry IN xml_config_warnings %]
320                 [% IF config_entry.error == 'zebra_bib_index_mode_is_grs1' %]
321                 <tr>
322                     <th scope="row"><b>Warning</b></th>
323                     <td>The &lt;zebra_bib_index_mode&gt; entry set to 'grs1', which is no longer supported.
324                         Please use DOM instead. To switch follow this page of wiki:
325                         <a href="https://wiki.koha-community.org/wiki/Switching_to_dom_indexing">Switching to dom indexing</a>
326                     </td>
327                 </tr>
328                 [% ELSIF config_entry.error == 'zebra_auth_index_mode_is_grs1' %]
329                 <tr>
330                     <th scope="row"><b>Warning</b></th>
331                     <td>The &lt;zebra_auth_index_mode&gt; entry set to 'grs1', which is no longer supported.
332                         Please use DOM instead. To switch follow this page of wiki:
333                         <a href="https://wiki.koha-community.org/wiki/Switching_to_dom_indexing">Switching to dom indexing</a>
334                     </td>
335                 </tr>
336                 [% ELSIF config_entry.error == 'queryparser_entry_missing' %]
337                 <tr>
338                     <th scope="row"><b>Warning</b></th>
339                     <td>You have set UseQueryParser but the 'queryparser_config' entry is missing in your configuration
340                         file. [% config_entry.file | html %] is used as a fallback.
341                     </td>
342                 </tr>
343                 [% ELSIF config_entry.error == 'use_zebra_facets_entry_missing' %]
344                 <tr>
345                     <th scope="row"><b>Warning</b></th>
346                     <td>The &lt;use_zebra_facets&gt; entry is missing in your configuration file. Falling back
347                         to legacy facet calculation.
348                     </td>
349                 </tr>
350                 [% ELSIF config_entry.error == 'log4perl_entry_missing' %]
351                 <tr>
352                     <th scope="row"><b>Warning</b></th>
353                     <td>You are missing the &lt;log4perl_conf&gt; entry in your koha-conf.xml file. Please
354                         add it, pointing to the log4perl.conf file for your Koha instance.
355                     </td>
356                 </tr>
357                 [% ELSIF config_entry.error == 'uploadpath_entry_missing' %]
358                 <tr>
359                     <th scope="row"><b>Warning</b></th>
360                     <td>You are missing the &lt;upload_path&gt; entry in your koha-conf.xml file. Please
361                         add it, pointing to the configured file upload directory for your Koha instance.
362                     </td>
363                 </tr>
364                 [% ELSIF config_entry.error == 'uploadpath_and_opacbaseurl_entry_missing' %]
365                 <tr>
366                     <th scope="row"><b>Warning</b></th>
367                     <td>You are missing the &lt;upload_path&gt; entry in your koha-conf.xml file. Please
368                         add it, pointing to the configured file upload directory for your Koha instance.
369                         Also note that you need to properly set the OPACBaseURL preference for the file upload plugin to work.
370                     </td>
371                 </tr>
372                 [% ELSIF config_entry.error == 'tmp_path_missing' %]
373                 <tr>
374                     <th scope="row"><b>Warning</b></th>
375                     <td>You are missing the &lt;tmp_path&gt; entry in your koha-conf.xml file. Please
376                         add it, pointing to the configured temporary directory for your Koha instance.
377                         The effective temporary directory is '[% config_entry.effective_tmp_dir | html %]'.
378                     </td>
379                 </tr>
380                 [% END %]
381             [% END %]
382             </table>
383         [% END %]
384
385     [% ELSE %]
386         <p>No warnings.</p>
387     [% END %]
388         </div>
389
390         <div id="team">
391             <h2>Special thanks to the following organizations</h2>
392             <ul>
393                 <li><a href="http://library.org.nz">Horowhenua Library Trust</a>, New Zealand, and Rosalie Blake, Head of Libraries, (Koha 1.0)</li>
394                 <li>The <a href="http://www.myacpl.org/">Athens County Public Libraries</a>, Ohio, USA (MARC sponsorship, documentation, template maintenance)</li>
395                 <li><a href="http://www.emn.fr">EMN (Ecole des Mines de Nantes)</a>, France (Suggestions, Stats wizards and improved LDAP sponsorship)</li>
396                 <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>
397                 <li><a href="http://www.mediathequeouestprovence.fr/">SAN-Ouest Provence</a>, France (Koha 3.0 enhancements to patrons and holds modules)</li>
398                 <li>The <a href="http://ccfls.org">Crawford County Federated Library System</a>, PA, USA (Koha 3.0 Zebra Integration sponsorship)</li>
399                 <li>The <a href="http://www.geauga.lib.oh.us/">Geauga County Public Library</a>, OH, USA (Koha 3.0 beta testing)</li>
400                 <li>The <a href="http://library.neu.edu.tr">Near East University</a>, Cyprus</li>
401                 <li>OPUS International Consultants, Wellington, New Zealand (Corporate Serials sponsorship)</li>
402                 <li><a href="http://www.famfamfam.com/">famfamfam.com</a> Birmingham (UK) based developer Mark James for the famfamfam Silk iconset.</li>
403                 <li><a href="http://www.ashs.school.nz/">Albany Senior High School</a>, Auckland, New Zealand (OPAC 'star-ratings' sponsorship)</li>
404             </ul>
405
406             <h2>Koha 18.11 release team</h2>
407             <ul>
408                 <li><strong>Release manager:</strong>
409                     <a href="https://www.openhub.net/p/koha/contributors/6620692886191">Nick Clemens</a>
410                 </li>
411                 <li><strong>Release manager assistants:</strong>
412                     <ul>
413                         <li><a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi</a></li>
414                         <li><a href="https://www.openhub.net/p/koha/contributors/6618545125093">Jonathan Druart</a></li>
415                         <li><a href="https://www.openhub.net/p/koha/contributors/6618544661344">Brendan Gallagher</a></li>
416                         <li><a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall</a></li>
417                     </ul>
418                 </li>
419                 <li><strong>Documentation team:</strong>
420                     <ul>
421                         <li>Caroline Cyr La Rose</li>
422                         <li>Lee Jamison</li>
423                         <li>David Nind</li>
424                     </ul>
425                 </li>
426                 <li><strong>Translation manager:</strong>
427                     <a href="https://www.openhub.net/p/koha/contributors/6618544839606">Bernardo González Kriegel</a>
428                 </li>
429                 <li><strong>Quality assurance manager:</strong>
430                     <a href="https://www.openhub.net/p/koha/contributors/6618544670742">Katrin Fischer</a>
431                 </li>
432                 <li><strong>Quality assurance team:</strong>
433                     <ul>
434                         <li>Alex Arnaud</li>
435                         <li><a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi</a></li>
436                         <li><a href="https://www.openhub.net/p/koha/contributors/6618544609030">Chris Cormack</a></li>
437                         <li><a href="https://www.openhub.net/p/koha/contributors/6618545125093">Jonathan Druart</a></li>
438                         <li><a href="https://www.openhub.net/p/koha/contributors/6620692261494">Kyle Hall</a></li>
439                         <li><a href="https://www.openhub.net/p/koha/contributors/6620692419690">Julian Maurice</a></li>
440                         <li>Josef Moravec</li>
441                         <li><a href="https://www.openhub.net/p/koha/contributors/6618544785220">Martin Renvoize</a></li>
442                         <li><a href="https://www.openhub.net/p/koha/contributors/6618544727712">Marcel de Rooy</a></li>
443                     </ul>
444                 </li>
445                 <li><strong>Release maintainers:</strong>
446                     <ul>
447                         <li><a href="https://www.openhub.net/p/koha/contributors/6618544785220">Martin Renvoize</a> (18.05)</li>
448                         <li><a href="https://www.openhub.net/p/koha/contributors/6618545418525">Fridolin Somers</a> (17.11)</li>
449                         <li><a href="https://www.openhub.net/p/koha/contributors/6618545418525">Fridolin Somers</a> (17.05)</li>
450                     </ul>
451                 </li>
452                 <li><strong>Packaging manager:</strong>
453                     <ul>
454                         <li><a href="https://www.openhub.net/p/koha/contributors/6620692605913">Mirko Tietgen</a></li>
455                         <li><a href="https://www.openhub.net/accounts/kohaaloha">Mason James</a> (Assistant)</li>
456                     </ul>
457                 </li>
458                 <li><strong>Jenkins maintainer:</strong>
459                     <a href="https://www.openhub.net/p/koha/contributors/6618544730094">Tomás Cohen Arazi</a>
460                 </li>
461                 <li><strong>Bug wranglers:</strong>
462                     <ul>
463                         <li>Indranil Das Gupta</li>
464                         <li>Claire Gravely</li>
465                         <li>Amit Gupta</li>
466                         <li>Jon Knight</li>
467                     </ul>
468                 </li>
469             </ul>
470
471             <h2>Koha development team</h2>
472             <ul class="columns-4">
473                 [% FOREACH contributor IN contributors %]
474                 <li>[% INCLUDE person p=contributor %][% INCLUDE contributions p=contributor %]</li>
475                 [% END %]
476             </ul>
477             <hr>
478
479             <h2>Contributing companies and institutions</h2>
480             <ul class="columns-4">
481                 <li>Allen Ginsberg Library, USA</li>
482                 <li>Alingsås Public Library, Sweden</li>
483                 <li>American Numismatic Society, USA</li>
484                 <li>Arcadia Public Library, USA</li>
485                 <li>Athens County Public Libraries, USA</li>
486                 <li>BdP de la Meuse, France</li>
487                 <li>BibLibre, France</li>
488                 <li>Bibliotheksservice-Zentrum Baden-Württemberg (BSZ), Germany</li>
489                 <li>Briar Cliff University, USA</li>
490                 <li>Brooklyn Law School Library, USA</li>
491                 <li>Bibliothèque universitaire des langues et civilisations (<a href="http://www.bulac.fr/">BULAC</a>), France</li>
492                 <li>ByWater Solutions, USA</li>
493                 <li>California College of the Arts, USA</li>
494                 <li>Camden County, USA</li>
495                 <li>Carnegie Stout Library, USA</li>
496                 <li>Calyx, Australia</li>
497                 <li>Catalyst IT, New Zealand</li>
498                 <li>Central Kansas Library System (CKLS), USA</li>
499                 <li>Centre collégial des services regroupés (CCSR), Canada</li>
500                 <li>Cheshire Libraries, United Kingdom</li>
501                 <li>Coeur d'Alene Public Library, USA</li>
502                 <li>Corpus Christi Public Libraries, USA</li>
503                 <li>C &amp; P Bibliography Services, USA</li>
504                 <li>Do Space, USA</li>
505                 <li>DoverNet, USA</li>
506                 <li>doXulting</li>
507                 <li>Escuela de Orientacion Lacaniana, Argentina</li>
508                 <li>Farmington Public Library, USA</li>
509                 <li>FIT</li>
510                 <li>Foundations Bible College &amp; Seminary, USA</li>
511                 <li>Goethe-Institut, Germany</li>
512                 <li>Gothenburg University Library, Sweden</li>
513                 <li>Halland County Library, Sweden</li>
514                 <li>Harrison Carmel Public Library, USA</li>
515                 <li>Hauraki District Libraries, New Zealand</li>
516                 <li>Hochschule für Gesundheit (hsg), Germany</li>
517                 <li>Hotchkiss School, USA</li>
518                 <li>Katipo Communications, New Zealand</li>
519                 <li>KEEP SOLUTIONS, Portugal</li>
520                 <li>KohaAloha, New Zealand</li>
521                 <li>LibLime, USA</li>
522                 <li>Library of the Józef Piłsudski Institute of America, USA</li>
523                 <li>Libriotech, Norway</li>
524                 <li>Los Gatos Public Library, USA</li>
525                 <li>MassCat, USA</li>
526                 <li>Middletown Township Public Library, USA</li>
527                 <li>New Zealand Central Agencies Library, New Zealand</li>
528                 <li>New Zealand Ministry of Education Library, New Zealand</li>
529                 <li>North Central Regional Library (NCRL), USA</li>
530                 <li>Northeast Kansas Library System (NEKLS), USA</li>
531                 <li>OPUS</li>
532                 <li>Orex Digital, Spain</li>
533                 <li>Oslo Public Library, Norway</li>
534                 <li>Plano Independent School, USA</li>
535                 <li>Prosentient Systems, Australia</li>
536                 <li>PTFS, Maryland, USA</li>
537                 <li>PTFS Europe Ltd, United Kingdom</li>
538                 <li>Rijksmuseum, Amsterdam, The Netherlands</li>
539                 <li>Rolling Hills Consolidated Libraries, USA</li>
540                 <li>Round Rock Public Library, USA</li>
541                 <li>SAN-Ouest Provence, France</li>
542                 <li>software.coop, United Kingdom</li>
543                 <li>South-East Kansas Library System (SEKLS), USA</li>
544                 <li>Stockholm University Library, Sweden</li>
545                 <li>SWITCH Library Consortium, USA</li>
546                 <li>Talking Tech, Global</li>
547                 <li>Tamil, France</li>
548                 <li>Tulong Aklatan, Philippines</li>
549                 <li>Universidad de El Salvador, El Salvador</li>
550                 <li>Universidad Empresarial Siglo 21, Argentina</li>
551                 <li>Universidad Nacional de Córdoba, Argentina</li>
552                 <li>Universidad ORT Uruguay</li>
553                 <li>Université d'Aix-Marseille, France</li>
554                 <li>Université de Lyon 3, France</li>
555                 <li>Université de Rennes 2, France</li>
556                 <li>Université de St Etienne, France</li>
557                 <li>University of the Arts London, United Kingdom</li>
558                 <li>Vaara-kirjastot, Finland</li>
559                 <li>Vanier College, Canada</li>
560                 <li>Ville de Victoriaville, Canada</li>
561                 <li>Vermont Organization of Koha Automated Libraries (VOKAL), USA</li>
562                 <li>Washoe County Library System, USA</li>
563                 <li>Xercode, Spain</li>
564             </ul>
565
566             <h2>Additional thanks to...</h2>
567             <ul>
568                 <li>Irma Birchall</li>
569                 <li>Rachel Hamilton-Williams (Kaitiaki from 2004 to present)</li>
570                 <li>Stephen Hedges (early Documentation Manager)</li>
571                 <li>Brooke Johnson</li>
572                 <li>Jo Ransom</li>
573                 <li>Nicholas Rosasco (Documentation Compiler)</li>
574                 <li>Regula Sebastiao</li>
575             </ul>
576         </div>
577
578         <div id="licenses">
579             <h2>Koha</h2>
580             <p>
581             <a href="http://www.gnu.org/licenses/gpl-3.0.html">Koha is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.</a>
582             </p>
583             <h2>jQuery and jQueryUI</h2>
584             <p><a href="http://jquery.com/">jQuery</a> and <a href="http://jqueryui.com/">jQueryUI</a> are licensed under the <a href="http://github.com/jquery/jquery/blob/master/MIT-LICENSE.txt">MIT license</a></p>
585             <h2>Bootstrap</h2>
586             <p><a href="https://getbootstrap.com/">Bootstrap</a> code and <a href="http://glyphicons.com">Glyphicons Free</a> licensed under the <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE">MIT license</a>.</p>
587             <h2>YUI</h2>
588             <p>
589             <a href="http://yuilibrary.com/license/">BSD License</a>
590             </p>
591             <h2>Famfamfam iconset</h2>
592               <ul>
593                 <li><a href="http://www.famfamfam.com/lab/icons/silk/">FamFamFam Site</a></li>
594                 <li><a href="http://creativecommons.org/licenses/by/2.5/">Creative Commons Attribution 2.5 License</a></li>
595               </ul>
596             <h2>The Bridge Material Type Icon Set</h2>
597               <ul>
598                 <li><a href="http://apps.carleton.edu/campus/library/bridge_icons/">Bridge Material Type Icons Project</a></li>
599                 <li>The Bridge Material Type Icon Set is licensed under a
600                   <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>
601                   by the Bridge Consortium of Carleton College and St. Olaf College.</li>
602               </ul>
603
604             <h2>The Noun Project icons</h2>
605                 <ul>
606                     <li>All images come from <a href="https://thenounproject.com/">The Noun Project</a> collection</li>
607                     <li>
608                         Circulation ("<a href="https://thenounproject.com/icon/743/">fair-trade</a>") symbol by Edward Boatman ; Patrons
609                         ("<a href="https://thenounproject.com/term/childrens-library/739/">children's library</a>") symbol by Edward Boatman, Saul Tannenbaum,
610                         Stephen Kennedy, Nikki Snow, Brooke Hamilton ; Search ("<a href="https://thenounproject.com/term/magnifying-glass/907/">magnifying
611                         glass</a>") symbol by Philipp Süß ; Lists ("<a href="https://thenounproject.com/term/folder/650/">folder</a>") symbol by Jack
612                         Biesek, Gladys Brenner, Margaret Faye, Healther Merrifield, Kate
613                         Keating, Wendy Olmstead, Todd Pierce, Jamie Cowgill, Jim Bolek ;
614                         Course reserves ("<a href="https://thenounproject.com/term/stack-of-books/11494/">stack of books</a>") symbol by Jeremy J. Bristol;
615                         Cataloging ("<a href="https://thenounproject.com/term/tag/888732/">price tag</a>") symbol by the Noun Project ; Authorities
616                         ("<a href="https://thenounproject.com/term/link/1690/">link</a>") symbol by Matthew Exton ; Serials ("<a href="https://thenounproject.com/term/newspaper/1233/">newspaper</a>") symbol by John
617                         Caserta ; Acquisitions ("<a href="https://thenounproject.com/term/gift/970853/">gift</a>") symbol by David Goodger ; Reports
618                         ("<a href="https://thenounproject.com/term/pie-chart/805/">pie chart</a>") symbol by Scott Lewis ; Administration ("<a href="https://thenounproject.com/term/gears/1063/">gears</a>") symbol by
619                         Jeremy Minnick ; Tools ("<a href="https://thenounproject.com/term/wrench/234/">wrench</a>") symbol by National Park Service ; Interlibrary loan ("<a href="https://thenounproject.com/term/exchange/1265396">exchange</a>") symbol by Iconstock.
620                     </li>
621                 </ul>
622
623             <h2>jQuery Bar Rating Plugin</h2>
624               <p>jQuery Bar Rating Plugin v1.22 by <a href="http://antenna.io/demo/jquery-bar-rating/examples/">Antenna.io</a> is licensed under the <a href="http://en.wikipedia.org/wiki/MIT_License">MIT License</a>.</p>
625
626             <p>Copyright &copy; 2012-2016 <a href="http://antenna.io">Kazik Pietruszewski</a></p>
627
628             <h2>jQuery insertAtCaret Plugin</h2>
629             <p>jQuery insertAtCaret Plugin v1.0 by the phpMyAdmin devel team is licensed under the <a href="http://www.gnu.org/licenses/gpl.html">GPL License</a>.</p>
630
631             <p>Copyright &copy; 2003-2010 phpMyAdmin devel team</p>
632
633             <h2>jQuery treetable Plugin</h2>
634
635             <p>The <a href="http://ludo.cubicphuse.nl/jquery-treetable/">jQuery treetable Plugin 3.1.0</a> is released under MIT license by Ludo van den Boom.</p>
636
637             <h2>OpenJS Keyboard Shortcuts Library</h2>
638
639             <p>The <a href="http://www.openjs.com/scripts/events/keyboard_shortcuts/">OpenJS keyboard shortcuts library</a>
640                by Binny V A is licensed under the BSD license.</p>
641
642             <h2>jquery.dataTables.grouping.js</h2>
643             <p>The <a href="https://code.google.com/p/jquery-datatables-row-grouping/">jquery.dataTables.grouping.js</a>
644                plugin by Jovan Popovic is licensed under the BSD and GPL v2 license.</p>
645
646             <h2>jQuery Colvis plugin</h2>
647             <p>The <a href="http://datatables.net/extensions/colvis/">controls for column visiblity in DataTables</a>
648                 by Allan Jardine is licensed under the BSD 3 and GPL v2 license.</p>
649
650             <h2>jquery.multiple.select.js</h2>
651             <p>The <a href="http://wenzhixin.net.cn/p/multiple-select/">jQuery multiple select plugin</a>
652                by Zhixin Wen is licensed under the MIT license.</p>
653
654             <h2>Javascript Diff Algorithm</h2>
655             <p>The <a href="http://ejohn.org/projects/javascript-diff-algorithm/">Javascript Diff Algorithm</a> plugin by John Resig is licensed under the <a href="http://opensource.org/licenses/mit-license.php">MIT License</a>.</p>
656
657             <h2>jQuery Validation Plugin</h2>
658             <p>The <a href="http://jqueryvalidation.org/">jQuery Validation Plugin</a> written and maintained by Jörn Zaefferer is licensed under the <a href="http://opensource.org/licenses/mit-license.php">MIT License</a>.</p>
659
660             <h2>TinyMCE WYSIWYG editor</h2>
661             <p>The <a href="http://www.tinymce.com/">TinyMCE WYSIWYG editor v3.5.8 </a> by Moxiecode (Ephox) is licensed under the <a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt">LGPL v2.1</a>.</p>
662
663             <h2>Font Awesome</h2>
664             <p><a href="http://fontawesome.io">Font Awesome</a> by Dave Gandy is licensed under the <a href="http://scripts.sil.org/OFL">SIL OFL 1.1</a> and the <a href="http://opensource.org/licenses/mit-license.html">MIT License</a>.</p>
665
666             <h2>CodeMirror editing library</h2>
667             <p>The <a href="http://codemirror.net/">CodeMirror editing library</a> by Marijn Haverbeke is licensed under an <a href="http://codemirror.net/LICENSE">MIT license</a>.</p>
668
669             <h2>FileSaver library</h2>
670             <p>The <a href="https://github.com/eligrey/FileSaver.js/">FileSaver library</a> by Eli Grey is licensed under an <a href="https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md">MIT license</a>.</p>
671
672             <h2>Require.js JS module system</h2>
673             <p>The <a href="http://requirejs.org/">Require.js JS module system</a> by The Dojo Foundation is licensed under an <a href="https://github.com/jrburke/requirejs/blob/master/LICENSE">MIT license</a>.</p>
674
675             <h2>OAI xslt stylesheet</h2>
676             <p>The included OAI.xslt file by the <a href="http://dspace.org/">DSpace project</a> is licensed under a <a href="http://www.dspace.org/license/">BSD License</a>.</p>
677
678             <h2>Select2</h2>
679             <p>The <a href="http://select2.github.io/select2/">Select2</a> library is licensed under <a href="https://github.com/select2/select2/blob/stable/3.5/LICENSE">the Apache License, Version 2.0 (the "Apache License") or the GNU General Public License version 2 (the "GPL License")</a>.</p>
680
681             <h2>jquery.tablednd.js</h2>
682             <p>The <a href="https://github.com/isocra/TableDnD">TableDnD plug-in for jQuery</a> by Denis Howlett is licensed under the <a href="http://opensource.org/licenses/mit-license.php">MIT License</a>.</p>
683
684             <h2>Leaflet</h2>
685             <p>The <a href="http://leafletjs.com">Leaflet</a> JavaScript library by Vladimir Agafonkinis licensed under the <a href="https://github.com/Leaflet/Leaflet/blob/master/LICENSE">BSD License</a>.</p>
686
687             <h2>jquery.emojiarea.js</h2>
688             <p>The <a href="https://github.com/diy/jquery-emojiarea">Emojiarea plug-in for jQuery</a> by DIY Co is licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">the Apache License, Version 2.0</a>.</p>
689
690             <h2>JSZip</h2>
691             <p>The <a href="https://stuk.github.io/jszip/">JSZip</a> JavaScript library is licensed under both the <a href="https://github.com/Stuk/jszip/blob/master/LICENSE.markdown">MIT and GPLv3 Licenses</a>.</p>
692
693             <h2>D3.js</h2>
694             <p><a href="https://d3js.org/">D3.js v3.5.17</a> is a JavaScript library for manipulating documents based on data. It is under the <a href="https://github.com/d3/d3/blob/master/LICENSE">BSD 3-clause Licence</a></p>
695
696             <h2>C3.js</h2>
697             <p><a href="http://c3js.org/">C3.js v0.4.11</a> is a D3-based reusable chart library under the <a href="https://opensource.org/licenses/mit-license.php">MIT licence</a></p>
698
699             <h2>Font Face Observer</h2>
700             <p><a href="https://github.com/bramstein/fontfaceobserver">Font Face Observer</a> is a JavaScript library by Bram Stein licensed under the <a href="https://github.com/bramstein/fontfaceobserver/blob/master/LICENSE">BSD License</a>.</p>
701
702             <h2>Noto fonts</h2>
703             <p><a href="https://github.com/googlei18n/noto-fonts">Noto</a> by Google is a family of fonts licensed under the <a href="http://scripts.sil.org/OFL">SIL Open Font License (OFL) v1.1</a>.</p>
704
705             <h2>HC Sticky</h2>
706             <p><a href="http://somewebmedia.com/hc-sticky/">HC Sticky</a> by Some Web Media is a JavaScript library that makes any element on your page visible while you scroll, licensed under the <a href="https://github.com/somewebmedia/hc-sticky/blob/master/LICENSE">MIT license</a>.</p>
707         </div>
708
709         <div id="translations">
710             <h2>Translation</h2>
711             <ul>
712 <li>العربية (Arabic) Version 3.2 to 3.4, 3.16 & 3.18 by KnowledgeWare Technologies; Versions 3.6 to 3.14 by Arabic Koha support team: Karam Qubsi, Kouider Bounama, Sham Bajaa, Ghofran Alshami, Chrestian Aboud, Fatema Salem and Duaa Bazzazi.
713 <li>&#4768;&#4635;&#4653;&#4763; (Amharic) Getway II Ethiopia Co. (Yohannes Mulugeta (Team Leader), Tegene Assefa, Abiyot Bayou)</li>
714 <li>Armenian Tigran Zargaryan</li>
715 <li>&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080; (Bulgarian) Radoslav Kolev</li>
716 <li>euskara (Basque) Fernando Berrizbeitia, the librarians of Eima Katalogoa, Tabakalera International Contemporary Culture Centre, and Nere Erkiaga</li>
717 <li>&#2476;&#2494;&#2434;&#2482;&#2494; (Bengali) Parthasarathi Mukhopadhyay</li>
718 <li>&#20013;&#25991; (Chinese)</li>
719 <li>Hrvatski (Croatian)</li>
720 <li>&#x010D;e&#353;tina (Czech)</li>
721 <li>D&aelig;nsk (Danish)</li>
722 <li>Nederlands-Nederland (Dutch-The Netherlands) Sponsored by Rijksmuseum</li>
723 <li>Nederlands-Belgi&euml; (Dutch-Belgium)</li>
724 <li>English</li>
725 <li>suomi, suomen kieli (Finnish) Pasi Korkalo</li>
726 <li>Fran&ccedil;ais (French) <a href="http://www.koha-fr.org/content/lassociation-kohala">Kohala</a>, Pascale Nalon (ENSMP), and many more </li>
727 <li>Galego (Galician) Ignacio Javier</li>
728 <li>Deutsch (German) Friedrich zur Hellen, Robert Hillig, Katrin Fischer, Beda Szukics, Mirko Tietgen and Marc Véron</li>
729 <li>&#949;&#955;&#955;&#951;&#957;&#953;&#954;&#940; (Greek, Modern [1453- ]) Koha Hellenic Users' Group (Georgia Katsarou, Dimitris Antonakis, Eugenios Papadopoulos), Theodoros Theodoropoulos, Panoraia Gaitanou and Kiriaki Roditi</li>
730 <li>&#1506;&#1489;&#1512;&#1497;&#1514; (Hebrew)</li>
731 <li>&#2361;&#2367;&#2344;&#2381;&#2342;&#2368; (Hindi)</li>
732 <li>Magyar (Hungarian)Agnes Imecs</li>
733 <li>Norsk Bokmål (Norwegian) Axel Bojer and Thomas Gramstad</li>
734 <li>Norsk Nynorsk (Norwegian) Unni Knutsen and Marit Kristine Ådland</li>
735 <li>(Indonesian)</li>
736 <li>Italiano (Italian) for 3.2: Zeno Tajoli, Pietro Gozzetti and Paolo Pozzan; for 3.4 and more: Zeno Tajoli, Stefano Bargioni, Paolo Bizzarri</li>
737 <li>&#26085;&#26412;&#35486; (Japanese)</li>
738 <li>&#54620;&#44397;&#50612; (Korean)</li>
739 <li>&#3221;&#3240;&#3277;&#3240;&#3233; (kanna&#7693;a)</li>
740 <li>Latina (Latin)</li>
741 <li>Lao Anousak Anthony Souphavanh</li>
742 <li>M&#257;ori</li>
743 <li>&#3374;&#3378;&#3375;&#3390;&#3379;&#3330; (Malayalam)</li>
744 <li>&#1601;&#1575;&#1585;&#1587;&#1609; (Persian)</li>
745 <li>&#2835;&#2908;&#2879;&#2822; (&#x014D;&#7771;iy&#257;)</li>
746 <li>Polski (Polish)</li>
747 <li>Portugu&ecirc;s (Portuguese)</li>
748 <li>Rom&acirc;n&#259; (Romanian)</li>
749 <li>&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081; (Russian) Victor Titarchuk and Serhij Dubyk</li>
750 <li>Espa&ntilde;ol (Spanish) Bernardo González Kriegel, Héctor Castro and Tomás Cohen Arazi, with the help of the koha-es community.</li>
751 <li>Svenska (Swedish)</li>
752 <li>Tetun (Tetum) Karen Myers</li>
753 <li>&#3616;&#3634;&#3625;&#3634;&#3652;&#3607;&#3618; (Thai)</li>
754 <li>T&uuml;rk&ccedil;e (Turkish) pre-3.8: Selma Aslan; for 3.8+, Suleyman Demirel University (Ugur Bulgan, Onur Erdem, Kemal Caner Bayrakci, and Alper Tutunsatar)</li>
755 <li>&#1575;&#1585;&#1583;&#1608;(Urdu) Ata ur Rehman</li>
756 <li>&#1059;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072; (Ukrainian) Victor Titarchuk and Serhij Dubyk</li>
757             </ul>
758
759         </div>
760
761         <div id="history">
762         <h2>Koha history timeline</h2>
763     [% IF ! timeline_read_error %]
764         <table style="cursor:pointer">
765         <thead>
766         <tr>
767             <td  style="font-weight:bold;" >Date</td>
768             <td  style="font-weight:bold;" >Description</td>
769         </tr>
770         </thead>
771         [% FOREACH tabl IN table2 %]
772             <tr class="[% loop.parity | html %]">
773                 [% FOREACH ro IN tabl.row2 %]
774                      <td>[% ro.date | html %]</td>
775                      <td>[% ro.desc | html %]</td>
776                 [% END %]
777             </tr>
778         [% END %]
779         </table>
780     [% ELSE %]
781         <div class="dialog alert">
782             Could not read the history.txt file. Please make sure &lt;docdir&gt; is correctly defined in koha-conf.xml.
783         </div>
784     [% END %]
785         </div>
786
787     </div>
788 </div>
789 </div>
790
791 [% MACRO jsinclude BLOCK %]
792     <script type="text/javascript">
793          $(document).ready(function() {
794             $('#abouttabs').tabs();
795          });
796     </script>
797 [% END %]
798 <!-- the main div is closed in intranet-bottom.inc -->
799 [% INCLUDE 'intranet-bottom.inc' %]
800 <!-- roles for translation -->
801 [%- BLOCK role -%]
802   [%- SWITCH role.key -%]
803     [%- CASE 'manager'               -%]Release manager
804     [%- CASE 'manager_assistant'     -%]Release manager assistant
805     [%- CASE 'qa_manager'            -%]Quality assurance manager
806     [%- CASE 'qa'                    -%]Quality assurance team
807     [%- CASE 'documentation'         -%]Documentation manager
808     [%- CASE 'documentation_team'    -%]Documentation team
809     [%- CASE 'translation'           -%]Translation manager
810     [%- CASE 'translation_assistant' -%]Translation manager assistant
811     [%- CASE 'te'                    -%]Topic expert
812     [%- CASE 'bugwrangler'           -%]Bug wrangler
813     [%- CASE 'maintainer'            -%]Release maintainer
814     [%- CASE 'maintainer_assistant'  -%]Release maintainer assistant
815     [%- CASE 'wiki'                  -%]Wiki curator
816     [%- CASE 'ci'                    -%]Continuous integration manager
817     [%- CASE 'packaging'             -%]Packaging manager
818     [%- CASE 'packaging_assistant'   -%]Packaging manager assistant
819     [%- CASE 'chairperson'           -%]Meetings chairperson
820     [%- CASE 'newsletter'            -%]Newsletter editor
821     [%- CASE 'mm'                    -%]Module maintainer
822     [%- CASE 'vm'                    -%]Virtual machine maintainer
823     [%- CASE 'database'              -%]Documentation specialist
824     [%- CASE 'live_cd'               -%]Live CD maintainer
825   [%- END -%]
826 [%- END -%]
827 [%- BLOCK person -%]
828 [% IF p.openhub %]<a href="[% p.openhub | url %]">[% p.name | html %]</a>[% ELSE %][% p.name | html %][% END %]
829 [%- END -%]
830 [%- BLOCK contributions -%]
831 [%- IF p.roles || p.notes -%]
832 <ul>
833     [% FOREACH r IN p.roles %]<li>[% INCLUDE role role=r %] ([% r.value.join(', ') | html %])</li>[% END %]
834     [% IF p.notes %]<li>[% p.notes | html %]</li>[% END %]
835 </ul>
836 [%- END -%]
837 [%- END -%]