From fd1673ea9e61ac601f58b735f40a8070115612be Mon Sep 17 00:00:00 2001
From: Alex Arnaud <alex.arnaud@biblibre.com>
Date: Tue, 10 Oct 2017 15:21:35 +0000
Subject: [PATCH] Bug 19443 - wrong HTML in patron creation page
 (members/memberentry.pl)

The form provided on top of the page if Koha find a duplicate
patron is not closed. This cause some trouble.

Test plan:

 - Edit the syspref IntranetUserJS and type the following code:
   "$(document).ready(function() {
    $("#memberentry_library_management").insertBefore("#memberentry_identity");
    });"
 - create a patron so that Koha will warn you about a duplicate one,
 - click on "Not a duplicate. Save as new record",
 - you should get error(s) about empty field(s).
   Note that now, the library management part's fields are empty or
   reset to default

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
---
 .../prog/en/modules/members/memberentrygen.tt      | 30 ++++++++++++----------
 1 file changed, 17 insertions(+), 13 deletions(-)

diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
index 091486e..a29a370 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt
@@ -76,6 +76,16 @@ $(document).ready(function() {
         }
     });
 
+    $('#duplicate').on('click', function() {
+        $("input[name='op']").val('modify');
+        $("input[name='borrowernumber']").val('[% check_member %]');
+        $('#entryform').submit();
+    });
+
+    $('#not-duplicate').on('click', function() {
+        $("input[name='nodouble']").val('1');
+        $('#entryform').submit();
+    });
 });
 
         var MSG_SEPARATOR = _("Separator must be / in field %s");
@@ -138,18 +148,10 @@ $(document).ready(function() {
 			<div class="dialog alert">
 				<h3>Duplicate patron record?</h3>
                 <p><a class="popup" href="#" onclick="Dopop('moremember.pl?print=brief&amp;borrowernumber=[% check_member %]');return false;" >View existing record</a></p>
-                <form action="/cgi-bin/koha/members/memberentry.pl" method="get">
-                    <input type="hidden" name="op" value="modify" />
-                    <input type="hidden" name="borrowernumber" value="[% check_member %]" />
-                    <input type="hidden" name="csrf_token" value="[% csrf_token %]" />
-                    <button type="submit" class="new"><i class="fa fa-pencil"></i> It is a duplicate.
-                    Edit existing record</button>
-                </form>
+                <button id="duplicate" type="submit" class="new"><i class="fa fa-pencil"></i> It is a duplicate.
+                Edit existing record</button>
 
-                <form name="form" action="/cgi-bin/koha/members/memberentry.pl" method="post" autocomplete="off">
-				<input type="hidden" name="nodouble" value="1" />
-                <input type="hidden" name="csrf_token" value="[% csrf_token %]" />
-                <button type="submit" class="new"><i class="fa fa-plus"></i> Not a duplicate.
+                <button type="submit" id="not-duplicate" class="new"><i class="fa fa-plus"></i> Not a duplicate.
                 Save as new record</button>
 			</div>
 	[% END %]
@@ -222,8 +224,10 @@ $(document).ready(function() {
 [% END %]
 </div>
 
-[% UNLESS ( check_member ) %]<form name="form" id="entryform"  action="/cgi-bin/koha/members/memberentry.pl" method="post" autocomplete="off" class="toggler" >
-<input type="hidden" name="nodouble"  value="[% nodouble %]" /> [% END %]
+<form name="form" id="entryform"  action="/cgi-bin/koha/members/memberentry.pl" method="post" autocomplete="off" class="toggler" >
+[% UNLESS ( check_member ) %]
+    <input type="hidden" name="nodouble"  value="[% nodouble %]" />
+[% END %]
 <!--    field always hidden in different form (1,2,3) -->
 <input type="hidden" name="BorrowerMandatoryField" value="[% BorrowerMandatoryField %]" />
 <input type="hidden" name="category_type" value="[% category_type %]" />
-- 
2.1.4