Bugzilla – Attachment 121507 Details for
Bug 27948
Add disclaimer text to article requests feature
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 27948: Add disclaimer to article request
Bug-27948-Add-disclaimer-to-article-request.patch (text/plain), 23.82 KB, created by
David Nind
on 2021-05-29 02:32:47 UTC
(
hide
)
Description:
Bug 27948: Add disclaimer to article request
Filename:
MIME Type:
Creator:
David Nind
Created:
2021-05-29 02:32:47 UTC
Size:
23.82 KB
patch
obsolete
>From 895349e1cadf6fdd2aa3611cdd5044f04c549a5b Mon Sep 17 00:00:00 2001 >From: Agustin Moyano <agustinmoyano@theke.io> >Date: Wed, 26 May 2021 16:00:32 -0300 >Subject: [PATCH] Bug 27948: Add disclaimer to article request > >If ArticleRequestsDisclaimerText syspref is set, a disclaimer text will appear fefore an article request can be made > >To test: >1. apply patches >2. enable ArticleRequest syspref >3. in OPAC place an article request for a patron >CHECK => No disclaimer text should appear before placing article request >4. add a text in ArticleRequestsDisclaimerText syspref >5. repeat step 3 >SUCCESS => A disclaimer text is shown before you can place an article request > >Signed-off-by: David Nind <david@davidnind.com> >--- > .../bootstrap/en/modules/opac-request-article.tt | 317 +++++++++++---------- > opac/opac-request-article.pl | 3 + > 2 files changed, 167 insertions(+), 153 deletions(-) > >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-request-article.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-request-article.tt >index caf214e8b0..9bf4965f6b 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-request-article.tt >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-request-article.tt >@@ -1,4 +1,5 @@ > [% USE Koha %] >+[% USE raw %] > [% USE Branches %] > [% USE ItemTypes %] > [% INCLUDE 'doc-head-open.inc' %] >@@ -30,171 +31,181 @@ > <div class="row"> > <div class="col"> > [% IF biblio.can_article_request( patron ) %] >- [% SET article_request_type = biblio.article_request_type( patron ) %] >+ <h1>Place article request for [% biblio.title | html %]</h1> >+ [% IF disclaimer %] >+ <div> >+ <p> >+ [% Koha.Preference('ArticleRequestsDisclaimerText') | $raw %] >+ </p> >+ <a href="/cgi-bin/koha/opac-request-article.pl?biblionumber=[% biblio.biblionumber | uri %]&action=accept" >+ class="btn btn-sm btn-primary"><i class="fa fa-check" aria-hidden="true"></i> Accept</a> >+ </div> >+ [% ELSE %] >+ [% 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 %] >+ [% 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 %] > >- <h1>Place article request for [% biblio.title | html %]</h1> > >- <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> >- <input type="text" required="required" name="title" id="title" size="50"/> >- [% ELSE %] >- <label for="title">Title:</label> >- <input type="text" name="title" id="title" size="50"/> >- [% END %] >- </li> >- >- <li> >- [% IF mandatory_fields.search('author') %] >- <label for="author" class="required">Author:</label> >- <input type="text" required="required" name="author" id="author" size="50"/> >- [% ELSE %] >- <label for="author">Author:</label> >- <input type="text" name="author" id="author" size="50"/> >- [% END %] >- </li> >- >- <li> >- [% IF mandatory_fields.search('volume') %] >- <label for="volume" class="required">Volume:</label> >- <input type="text" required="required" name="volume" id="volume" size="50"/> >- [% ELSE %] >- <label for="volume">Volume:</label> >- <input type="text" name="volume" id="volume" size="50"/> >- [% END %] >- </li> >- >- <li> >- [% IF mandatory_fields.search('issue') %] >- <label for="issue" class="required">Issue:</label> >- <input type="text" required="required" name="issue" id="issue" size="50"/> >- [% ELSE %] >- <label for="issue">Issue:</label> >- <input type="text" name="issue" id="issue" size="50"/> >- [% END %] >- </li> >- >- <li> >- [% IF mandatory_fields.search('date') %] >- <label for="date" class="required">Date:</label> >- <input type="text" required="required" name="date" id="date" size="50"/> >- [% ELSE %] >- <label for="date">Date:</label> >- <input type="text" name="date" id="date" size="50"/> >- [% END %] >- </li> >- >- <li> >- [% IF mandatory_fields.search('pages') %] >- <label for="pages" class="required">Pages:</label> >- <input type="text" required="required" name="pages" id="pages" size="50"/> >- [% ELSE %] >- <label for="pages">Pages:</label> >- <input type="text" name="pages" id="pages" size="50"/> >- [% END %] >- </li> >- >- <li> >- [% IF mandatory_fields.search('chapters') %] >- <label for="chapters" class="required">Chapters:</label> >- <input type="text" required="required" name="chapters" id="chapters" size="50"/> >- [% ELSE %] >- <label for="chapters">Chapters:</label> >- <input type="text" name="chapters" id="chapters" size="50"/> >- [% END %] >- </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" required="required"> >- [% 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> >+ <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> >+ <input type="text" required="required" name="title" id="title" size="50"/> >+ [% ELSE %] >+ <label for="title">Title:</label> >+ <input type="text" name="title" id="title" size="50"/> >+ [% END %] >+ </li> >+ >+ <li> >+ [% IF mandatory_fields.search('author') %] >+ <label for="author" class="required">Author:</label> >+ <input type="text" required="required" name="author" id="author" size="50"/> >+ [% ELSE %] >+ <label for="author">Author:</label> >+ <input type="text" name="author" id="author" size="50"/> >+ [% END %] >+ </li> >+ >+ <li> >+ [% IF mandatory_fields.search('volume') %] >+ <label for="volume" class="required">Volume:</label> >+ <input type="text" required="required" name="volume" id="volume" size="50"/> >+ [% ELSE %] >+ <label for="volume">Volume:</label> >+ <input type="text" name="volume" id="volume" size="50"/> >+ [% END %] >+ </li> >+ >+ <li> >+ [% IF mandatory_fields.search('issue') %] >+ <label for="issue" class="required">Issue:</label> >+ <input type="text" required="required" name="issue" id="issue" size="50"/> >+ [% ELSE %] >+ <label for="issue">Issue:</label> >+ <input type="text" name="issue" id="issue" size="50"/> >+ [% END %] >+ </li> >+ >+ <li> >+ [% IF mandatory_fields.search('date') %] >+ <label for="date" class="required">Date:</label> >+ <input type="text" required="required" name="date" id="date" size="50"/> >+ [% ELSE %] >+ <label for="date">Date:</label> >+ <input type="text" name="date" id="date" size="50"/> >+ [% END %] >+ </li> >+ >+ <li> >+ [% IF mandatory_fields.search('pages') %] >+ <label for="pages" class="required">Pages:</label> >+ <input type="text" required="required" name="pages" id="pages" size="50"/> >+ [% ELSE %] >+ <label for="pages">Pages:</label> >+ <input type="text" name="pages" id="pages" size="50"/> >+ [% END %] >+ </li> >+ >+ <li> >+ [% IF mandatory_fields.search('chapters') %] >+ <label for="chapters" class="required">Chapters:</label> >+ <input type="text" required="required" name="chapters" id="chapters" size="50"/> >+ [% ELSE %] >+ <label for="chapters">Chapters:</label> >+ <input type="text" name="chapters" id="chapters" size="50"/> >+ [% END %] >+ </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" required="required"> >+ [% 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> </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 %] >- </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> </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 ) %] >+ >+ [% IF article_request_type != 'item_only' %] > <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 %] >+ <input type="radio" name="itemnumber" value="" checked="checked"/> > </td> >- <td> >- [% Branches.GetName( item.homebranch ) | html %] >- </td> >- <td> >- [% item.itemcallnumber | html %] >- </td> >- <td> >- [% item.enumchron | html %] >+ <td colspan="6"> >+ Any item > </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 %] >+ </tbody> >+ </table> >+ [% END %] > >- <input type="submit" class="btn btn-primary" value="Place request" /> >- </form> >+ <input type="submit" class="btn btn-primary" value="Place request" /> >+ </form> >+ [% END %] > [% ELSE %] > <h1 class="title">[% biblio.title | html %]</h1> > <div class="alert alert-info"> >diff --git a/opac/opac-request-article.pl b/opac/opac-request-article.pl >index d6ce08f8ad..819d47d7e3 100755 >--- a/opac/opac-request-article.pl >+++ b/opac/opac-request-article.pl >@@ -23,6 +23,7 @@ use CGI qw ( -utf8 ); > > use C4::Auth; > use C4::Output; >+use C4::Context; > > use Koha::Biblios; > use Koha::Patrons; >@@ -40,6 +41,7 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user( > > my $action = $cgi->param('action') || q{}; > my $biblionumber = $cgi->param('biblionumber'); >+my $disclaimer = C4::Context->preference('ArticleRequestsDisclaimerText') && !$action; > > if ( $action eq 'create' ) { > my $branchcode = $cgi->param('branchcode'); >@@ -81,6 +83,7 @@ my $patron = Koha::Patrons->find($borrowernumber); > $template->param( > biblio => $biblio, > patron => $patron, >+ disclaimer => $disclaimer > ); > > output_html_with_http_headers $cgi, $cookie, $template->output, undef, { force_no_caching => 1 }; >-- >2.11.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 27948
:
121439
|
121440
|
121441
|
121505
|
121506
|
121507
|
122053
|
122132
|
122134
|
122519
|
122520
|
122523
|
122524
|
122525
|
122526
|
122771
|
122774
|
122795