Koha/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-course-details.tt
Wainui Witika-Park d3ab8dbeec Bug 28242: added captions to tables and legends to forms
Ensured that in the OPAC, all tables have relevant captions and all forms have relevant legends.

Many of these have class="sr-only" so they are not visible but will be
available for people who use screen-readers.

To test:
1) Go to OPAC
2) Apply patch and dependencies
3) Check that on all pages, any tables have a caption (many of them will
    not be visible, but will be in the markup code)
4) Check that on all pages, any forms have a legend (many of them will
    not be visible, but will be in the markup code)
5) Check that the captions are appropriate and relevant
6) Check that the legends are appropriate and relevant

Sponsored-by: Catalyst IT

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2021-06-21 14:05:30 +02:00

136 lines
7.2 KiB
Text

[% USE raw %]
[% USE Asset %]
[% USE Koha %]
[% USE KohaDates %]
[% USE AuthorisedValues %]
[% USE ItemTypes %]
[% USE Branches %]
[% USE TablesSettings %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Course reserves for [% course.course_name | html %] &rsaquo; [% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog</title>
[% INCLUDE 'doc-head-close.inc' %]
[% BLOCK cssinclude %]
[% Asset.css("css/datatables.css") | $raw %]
[% END %]
</head>
[% INCLUDE 'bodytag.inc' bodyid='opac-course-details' %]
[% INCLUDE 'masthead.inc' %]
<div class="main">
<nav aria-label="breadcrumb">
<ul class="breadcrumb">
<li class="breadcrumb-item">
<a href="/cgi-bin/koha/opac-main.pl">Home</a>
</li>
<li class="breadcrumb-item">
<a href="/cgi-bin/koha/opac-course-reserves.pl">Course reserves</a>
</li>
<li class="breadcrumb-item" aria-current="page">
Course reserves for &nbsp;<em>[% course.course_name | html %]</em>
</li>
</ul>
</nav>
<div class="container-fluid">
<div class="row">
<div class="col">
<div id="course_reserves" class="maincontent">
<h1>Course reserves for <em>[% course.course_name | html %]</em></h1>
<div class="rows">
<ol>
[% IF ( course.term ) %]<li><span class="label">Term:</span> [% AuthorisedValues.GetByCode( 'TERM', course.term, 1 ) | html %]</li>[% END %]
<li><span class="label">Department:</span> [% AuthorisedValues.GetByCode( 'DEPARTMENT', course.department, 1 ) | html %]</li>
[% IF ( course.course_number ) %]<li><span class="label">Course number:</span> [% course.course_number | html %]</li>[% END %]
[% IF ( course.section ) %]<li><span class="label">Section:</span> [% course.section | html %]</li>[% END %]
[% IF ( course.instructors ) %]
<li><span class="label">Instructors:</span>
<ul>
[% FOREACH i IN course.instructors %]
<li><div class="instructor">[% i.firstname | html %] [% i.surname | html %]</div></li>
[% END %]
</ul>
</li>
[% END %]
[% IF ( course.public_note ) %]<li><span class="label">Notes:</span> [% course.public_note | $raw %]</li>[% END %]
</ol>
</div>
[% IF ( course_reserves ) %]
<table id="course-items-table" class="table table-bordered table-striped table-condensed">
<caption class="sr-only">Courses</caption>
<thead>
<tr>
<th class="anti-the">Title</th>
<th>Author</th>
<th>Item type</th>
<th>Location</th>
<th>Collection</th>
<th>Call number</th>
<th>Copy number</th>
<th>Status</th>
<th>Date due</th>
<th>Notes</th>
<th>Link</th>
</tr>
</thead>
<tbody>
[% FOREACH cr IN course_reserves %]
<tr>
<td><a href="opac-detail.pl?biblionumber=[% cr.biblio.biblionumber | uri %]">[% INCLUDE 'biblio-title-head.inc' biblio=cr.biblio %]</a></td>
<td>[% cr.biblio.author | html %]</td>
<td>[% ItemTypes.GetDescription( cr.item.itype ) | html %]</td>
<td>[% Branches.GetName( cr.item.holdingbranch ) | html %] <br/> <em>[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.location', authorised_value => cr.item.location, opac => 1 ) | html %]</em></td>
<td>[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.ccode', authorised_value => cr.item.ccode, opac => 1 ) | html %]</td>
<td>[% cr.item.itemcallnumber | html %]</td>
<td>[% cr.item.copynumber | html %]</td>
<td>[% INCLUDE 'item-status.inc' item=cr.item issue=cr.issue %]</td>
<td data-order="[% cr.issue.date_due | html %]">[% cr.issue.date_due | $KohaDates as_due_date => 1 %]</td>
<td>[% IF ( cr.public_note ) %]
[% cr.public_note | $raw %]
[% ELSIF ( cr.item.itemnotes ) %]
[% cr.item.itemnotes | $raw %]
[% END %]
</td>
<td>[% IF (cr.item.uri) %]
<a href="[% cr.item.uri | url %]">Item URI</a>
[% ELSIF (cr.biblioitem.url) %]
<a href="[% cr.biblioitem.url | url %]">Record URL</a>
[% END %]
</td>
</tr>
[% END %]
</tbody>
</table>
[% ELSE %]
<br style="clear:both;" />
<div class="alert alert-info">
<p>No reserves have been selected for this course.</p>
</div>
[% END %]
</div> <!-- / #course_reserves -->
</div> <!-- / .col -->
</div> <!-- / .row -->
</div> <!-- / .container-fluid -->
</div> <!-- / .main -->
[% INCLUDE 'opac-bottom.inc' %]
[% BLOCK jsinclude %]
[% INCLUDE 'datatables.inc' %]
[% INCLUDE 'columns_settings.inc' %]
<script>
$(document).ready(function() {
columns_settings = [% TablesSettings.GetColumns( 'opac', 'biblio-detail', 'course-items-table', 'json' ) | $raw %];
KohaTable("#course-items-table", {
"dom": '<"top"<"table_controls"f>>t',
"sorting": [[ 1, "asc" ]],
"autoWidth": false,
"language": {
"search": "_INPUT_",
"searchPlaceholder": _("Search course reserves")
}
}, columns_settings );
});
</script>
[% END %]