Koha/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-request-article.tt
Owen Leonard afc7a99195 Bug 22102: Markup fixes for OPAC article request page
This patch makes a few improvements to the OPAC article request page:

- Improve the breadcrumbs menu by adding a link to the title
- Add a header with the record's title
- Wrap the "no article requests" message in the correct dialog div
- Remove obsolete CDATA marker

To test, apply the patch and log in to the OPAC

 - Peform a search which will return multiple results
 - Click "Request article" on a title for which article requests can be
   submitted.
   - Confirm that the breadcrumbs menu looks and works correctly.
 - Click "Request article" on a title for which article requsts are not
   allowed.
   - Confirm that the message is correctly styled.

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-01-28 14:47:58 +00:00

227 lines
10 KiB
Text

[% USE Koha %]
[% USE Branches %]
[% USE ItemTypes %]
[% INCLUDE 'doc-head-open.inc' %]
<title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog &rsaquo; Request article</title>
[% INCLUDE 'doc-head-close.inc' %]
[% BLOCK cssinclude %][% END %]
</head>
[% INCLUDE 'bodytag.inc' bodyid='opac-request-article' %]
[% INCLUDE 'masthead.inc' %]
<div class="main">
<ul class="breadcrumb">
<li><a href="/cgi-bin/koha/opac-main.pl">Home</a> <span class="divider">&rsaquo;</span></li>
<li><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% biblio.biblionumber | uri %]">Details for: [% biblio.title | html %]</a> <span class="divider">&rsaquo;</span></li>
<li><a href="#">Request article</a></li>
</ul>
<div class="container">
[% IF biblio.can_article_request( patron ) %]
[% SET article_request_type = biblio.article_request_type( patron ) %]
[% IF article_request_type == 'yes' %] [% SET mandatory_fields = Koha.Preference('ArticleRequestsMandatoryFields') %] [% END %]
[% IF article_request_type == 'bib_only' %] [% SET mandatory_fields = Koha.Preference('ArticleRequestsMandatoryFieldsRecordOnly') %] [% END %]
[% IF article_request_type == 'item_only' %] [% SET mandatory_fields = Koha.Preference('ArticleRequestsMandatoryFieldsItemOnly') %] [% END %]
<h3>Place article request for [% biblio.title | html %]</h3>
<form id="place-article-request" method="post" action="/cgi-bin/koha/opac-request-article.pl">
<input type="hidden" name="action" value="create" />
<input type="hidden" name="biblionumber" id="biblionumber" value="[% biblio.biblionumber | html %]" />
<fieldset class="rows">
<ul>
<li>
[% IF mandatory_fields.search('title') %]
<label for="title" class="required">Title:</label>
[% ELSE %]
<label for="title">Title:</label>
[% END %]
<input type="text" name="title" id="title" size="50"/>
</li>
<li>
[% IF mandatory_fields.search('author') %]
<label for="author" class="required">Author:</label>
[% ELSE %]
<label for="author">Author:</label>
[% END %]
<input type="text" name="author" id="author" size="50"/>
</li>
<li>
[% IF mandatory_fields.search('volume') %]
<label for="volume" class="required">Volume:</label>
[% ELSE %]
<label for="volume">Volume:</label>
[% END %]
<input type="text" name="volume" id="volume" size="50"/>
</li>
<li>
[% IF mandatory_fields.search('issue') %]
<label for="issue" class="required">Issue:</label>
[% ELSE %]
<label for="issue">Issue:</label>
[% END %]
<input type="text" name="issue" id="issue" size="50"/>
</li>
<li>
[% IF mandatory_fields.search('date') %]
<label for="date" class="required">Date:</label>
[% ELSE %]
<label for="date">Date:</label>
[% END %]
<input type="text" name="date" id="date" size="50"/>
</li>
<li>
[% IF mandatory_fields.search('pages') %]
<label for="pages" class="required">Pages:</label>
[% ELSE %]
<label for="pages">Pages:</label>
[% END %]
<input type="text" name="pages" id="pages" size="50"/>
</li>
<li>
[% IF mandatory_fields.search('chapters') %]
<label for="chapters" class="required">Chapters:</label>
[% ELSE %]
<label for="chapters">Chapters:</label>
[% END %]
<input type="text" name="chapters" id="chapters" size="50"/>
</li>
<li>
<label for="patron_notes">Notes:</label>
<input type="text" name="patron_notes" id="patron_notes" size="50"/>
</li>
<li>
<label for="branchcode">Pickup library:</label>
<select name="branchcode" id="branchcode">
[% FOREACH b IN Branches.all %]
[% IF b.branchcode == Branches.GetLoggedInBranchcode %]
<option value="[% b.branchcode | html %]" selected="selected">[% b.branchname | html %]</option>
[% ELSE %]
<option value="[% b.branchcode | html %]">[% b.branchname | html %]</option>
[% END %]
[% END %]
</select>
</li>
</ul>
</fieldset>
[% IF article_request_type != 'bib_only' %]
<table class="copiesrow table table-bordered table-striped">
<caption>Select a specific item:</caption>
<thead>
<tr>
<th>&nbsp;</th>
<th>Item type</th>
<th>Barcode</th>
<th>Home library</th>
<th>Call number</th>
<th>Enumeration</th>
</tr>
</thead>
<tbody>
[% FOREACH item IN biblio.items %]
[% IF item.can_article_request( patron ) %]
<tr>
<td>
[% IF article_request_type == 'item_only' && !checked %]
[% SET checked = 1 %]
<input type="radio" name="itemnumber" value="[% item.itemnumber | html %]" checked="checked" />
[% ELSE %]
<input type="radio" name="itemnumber" value="[% item.itemnumber | html %]" />
[% END %]
</td>
<td>
[% ItemTypes.GetDescription( item.itype ) | html %]
</td>
<td>
[% item.barcode | html %]
</td>
<td>
[% Branches.GetName( item.homebranch ) | html %]
</td>
<td>
[% item.itemcallnumber | html %]
</td>
<td>
[% item.enumchron | html %]
</td>
</tr>
[% END %]
[% END %]
[% IF article_request_type != 'item_only' %]
<tr>
<td>
<input type="radio" name="itemnumber" value="" checked="checked"/>
</td>
<td colspan="6">
Any item
</td>
</tr>
[% END %]
</tbody>
</table>
[% END %]
<input type="submit" class="btn" value="Place request" />
</form>
[% ELSE %]
<h1 class="title">[% biblio.title | html %]</h1>
<div class="alert alert-info">
No article requests can be made for this record.
</div>
[% END %]
</div> <!-- / .container -->
</div> <!-- / .main -->
[% INCLUDE 'opac-bottom.inc' %]
[% BLOCK jsinclude %]
<script>
allow_submit = false;
$('#place-article-request').on('submit', function( event ){
if ( ! allow_submit ) {
event.preventDefault();
[% IF article_request_type == 'item_only' %]
if ( ! $("input:radio[name='itemnumber']").is(":checked") ) {
alert( _("Please select a specific item for this article request.") );
return 0;
}
[% END %]
var mandatory_fields = "[% mandatory_fields | html %]";
var m = new Array();
if ( mandatory_fields ) m = mandatory_fields.split(",");
var f = new Array();
for (i = 0; i < m.length; i++) {
if ( ! $("#" + m[i]).val() ) {
f.push( m[i] );
}
}
if ( f.length ) {
alert( _("The following fields are required and not filled in: ") + f.join(", ") );
return 0;
}
allow_submit = true;
$('#place-article-request').submit();
}
});
</script>
[% END %]