bd75309933
GDPR is a European Union (and, at time of writing, UK) law. The GDPR_Policy system preference is about a patron giving consent to their personal data being processed in line with the library's privacy policy. The name of the preference is vague: there could be many policies implemented by libraries to comply with GDPR. It also makes the preference look irrelevant for libraries outside the areas where GDPR applies, while it may be useful for libraries anywhere. This renames GDPR_Policy to PrivacyPolicyConsent and adjusts the system preference descriptions. To test: * Apply the patch * Run database update * Search for GDPR_Policy in the system preference - you should not find anything. * Search for DataPrivacyConsent in the system preferences - you should find it and be able to activate it * Verify the feature works as expected - If the preference is set to "enforced", you will be asked to give consent to the data privacy agreement in the OPAC when you log in * Verify the page is now phrased neutrally using 'privacy policy' Bonus: Consent date is now formatted according to DateFormat system preference. Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
105 lines
5.2 KiB
Text
105 lines
5.2 KiB
Text
[% USE Koha %]
|
|
[% USE KohaDates %]
|
|
[% USE AdditionalContents %]
|
|
[% SET OpacNav = AdditionalContents.get( location => "OpacNav", lang => lang, library => logged_in_user.branchcode || default_branch, blocktitle => 0 ) %]
|
|
[% SET OpacNavBottom = AdditionalContents.get( location => "OpacNavBottom", lang => lang, library => logged_in_user.branchcode || default_branch, blocktitle => 0 ) %]
|
|
[% SET consentview = 1 %]
|
|
[% INCLUDE 'doc-head-open.inc' %]
|
|
<title>Your consents › [% IF ( LibraryNameTitle ) %][% LibraryNameTitle | html %][% ELSE %]Koha online[% END %] catalog</title>
|
|
[% INCLUDE 'doc-head-close.inc' %]
|
|
[% BLOCK cssinclude %][% END %]
|
|
</head>
|
|
[% INCLUDE 'bodytag.inc' bodyid='opac-patron-consent' %]
|
|
[% INCLUDE 'masthead.inc' %]
|
|
|
|
<div class="main">
|
|
<nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumbs">
|
|
<ol 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-user.pl">[% patron.firstname | html %] [% patron.surname | html %]</a>
|
|
</li>
|
|
<li class="breadcrumb-item active">
|
|
<a href="#" aria-current="page">Your consents</a>
|
|
</li>
|
|
</ol>
|
|
</nav> <!-- /#breadcrumbs -->
|
|
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-lg-2">
|
|
<div id="navigation">
|
|
[% INCLUDE 'navigation.inc' IsPatronPage=1 %]
|
|
</div>
|
|
</div>
|
|
<div class="col-lg-10 order-first order-md-first order-lg-2">
|
|
<div id="patronconsents" class="maincontent">
|
|
|
|
[% IF Koha.Preference('PrivacyPolicyConsent') %]
|
|
<div class="alert alert-warning">
|
|
<p>In order to keep you logged in, we need your consent to process personal data as specified in the privacy policy linked below.</p>
|
|
<p>Please save your consent below or log out. Thank you!</p>
|
|
</div>
|
|
[% END %]
|
|
|
|
<h1>Your consents</h1>
|
|
|
|
<form action="/cgi-bin/koha/opac-patron-consent.pl" method="post">
|
|
[% IF Koha.Preference('PrivacyPolicyConsent') %]
|
|
<legend><h2 id="GDPR_consents">Privacy policy consents</h2></legend>
|
|
<input type="hidden" name="op" value="gdpr_proc_save"/>
|
|
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]"/>
|
|
<fieldset>
|
|
<ul><li>
|
|
<p>I have read the <a target="_blank" href="[% Koha.Preference('PrivacyPolicyURL') | url %]">privacy policy</a> and agree with your processing of my personal data as outlined therein.</p>
|
|
<p><input type="radio" name="gdpr_processing" value="agreed"> Yes, I agree.<br>
|
|
<input type="radio" name="gdpr_processing" value="disagreed"> No, I do not agree. Please remove my account within a reasonable time.</p>
|
|
[% IF gdpr_proc_consent %]
|
|
<p>Your consent was registered on [% gdpr_proc_consent | $KohaDates with_hours => 1 %].</p>
|
|
[% ELSIF gdpr_proc_refusal %]
|
|
<p>You indicated recently that you do not consent, and we will process your request soon.</p>
|
|
[% END %]
|
|
</li></ul>
|
|
</fieldset>
|
|
<fieldset class="action">
|
|
<input id="saveconsent" type="submit" value="Save" class="btn btn-primary" />
|
|
</fieldset>
|
|
[% END %]
|
|
|
|
</form>
|
|
|
|
</div> <!-- / #userpasswd -->
|
|
</div> <!-- / .col-lg-10 -->
|
|
</div> <!-- / .row -->
|
|
</div> <!-- / .container-fluid -->
|
|
</div> <!-- / .main -->
|
|
|
|
[% INCLUDE 'opac-bottom.inc' %]
|
|
[% BLOCK jsinclude %]
|
|
<script>
|
|
var consent = null;
|
|
$(document).ready(function() {
|
|
[% IF gdpr_proc_consent %]
|
|
consent=1;
|
|
$("input[type='radio'][value='agreed']").prop('checked',true);
|
|
$(".alert").hide();
|
|
[% ELSIF gdpr_proc_refusal %]
|
|
consent=0;
|
|
$("input[type='radio'][value='disagreed']").prop('checked',true);
|
|
[% ELSE %]
|
|
[% END %]
|
|
$("#saveconsent").prop('disabled', true);
|
|
|
|
$("input[type='radio']").click(function() {
|
|
var radio = $(this).val();
|
|
if(radio=='agreed' && (consent==null || consent==0)) $("#saveconsent").prop('disabled', false);
|
|
if(radio=='disagreed' && (consent==null || consent==1)) $("#saveconsent").prop('disabled', false);
|
|
if(radio=='agreed') $(".alert").hide();
|
|
if(radio=='disagreed') $(".alert").show();
|
|
});
|
|
|
|
});
|
|
</script>
|
|
[% END %]
|