Commit graph

16 commits

Author SHA1 Message Date
c061790f97 Bug 9783 - can hit submit twice when adding patrons
Currently, clicking twice or more on the Save button will generate
duplicate patrons when adding patrons in the Patron module. Of course,
there is handling that detects this, so you can choose to either edit
the original record (i.e. throw away the duplicate) or create a
duplicate record.

However, it shouldn't get to that point by clicking on the Save button.
That handling seems to be there to handle cases where you go through the
whole process of trying to add a new patron only to find out that they
already exist in the system (or at least their username/password do).

--

This patch uses the "preventDoubleFormSubmit" function (which is also
used in holds and fines to prevent double form submits). It was also
necessary to edit members.js, since "check_form_borrowers" was forcing
form submits despite the "preventDoubleFormSubmit" function. I've
changed it from forcing a document.form.submit to return true, which the
browser will still submit the form if it's a unique borrower, but the
"preventDoubleFormSubmit" function will still prevent multiple submits.

I've also added a "waiting" class to staff-global.js which changes the
cursor to "wait" (i.e. loading circle graphic). I've included an
"AddClass" call in "preventDoubleFormSubmit", so that the cursor graphic
will change to show users that the page is loading so that they don't
click Save again. Of course, even if they do click save again, there
will only be one submit. However, this way - as Chris Cormack mentioned
- the user knows that "something" is happening and that the form isn't
broken.

-------
Test Plan

Before applying patch...

1) Fill out the form for a new patron in the Patron module
2) Click "Save" several times
3) Once the page loads, you'll be shown a prompt that says that this
   borrower already exists. You will have the option to view the
   original record, edit the original record, or create a new patron
   anyway
4) Click on edit the existing record, and delete the patron

Apply the patch

5) Repeat steps 1 and 2
6) Notice that your cursor has changed into a little "loading" circle
   graphic when you hover over the "body" of the page, as well as any
   links or any inputs/buttons of the type "submit" within that form
7) Notice that no matter how many times you press the button, the form
   is not re-submitted. Eventually you will be taken to the new patron's
   record (no mention of duplication will occur)

Ta da! Multiple form submits are prevented and the loading graphic
signals to users that the form was submitted and that Koha is processing
their data

--

I understand that some people might want to change which elements are
given the "waiting" class. I'm happy to renegotiate this as necessary.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Looks good and works nicely.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2013-03-27 22:58:17 -04:00
04d9825717 Bug 9284 - JavaScript should follow rules recommended by JSHint
Coding style corrections to members.js:

- Mixed tab/space indentation converted to spaces.
- Converted "!=" and "==" to "!==" and "===" for comparisons with ''.
- Adding missing semicolons.

To test, create or edit a patron and confirm that validation hasn't been
broken by the changes to members.js: Invalid date, empty required
fields, guarantor popup, restricted-until field display, etc.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-12-27 19:02:07 -05:00
3da0f42653 Bug 8014 - On the patron entry form hide "restricted until" field if "Restricted: No" is checked
This patch adds JavaScript to automatically hide the "Restricted
unil" form field on the patron entry form if "Restricted: No" is
selected. If "Restricted: Yes" is chosen the "Until:" field
is shown and focus is given to it.

The patch also adds a note, "(optional)" after the "Until:" field
to make it clearer that a date is not required.

To test, open a patron record and try moving the selection
between "Restricted: No" and "Restricted: Yes." Confirm that
the "Until:" field is shown and hidden as expected. Confirm
that the restricted flag is correctly set or unset upon save,
including setting the flag with or without a date.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-28 11:31:25 +02:00
4a6ec50c62 Fix for Bug 5280 - Fix password field so that the password is masked as it is entered
This patch changes the password field to a password type input on
member-password.pl and adds a confirmation field to both member-password.pl
and memberentry.pl requiring that the password be re-entered to
confirm.

Client-side and server-side validation for the two password fields has been added
to both pages. Multiple error messages can now be displayed together on
member-password.pl.

If the user wishes for Koha to suggest a random password on member-password.pl
they can click a link which will remove the password-type input fields, replace
them with text-type fields, and automatically fill them with the random
password suggestion.

Follow-up fix lets the members.js correctly handling errors when there are
no mandatory fields

LR followup: fixing slight error that corrects previously reported template error.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Tested password setting/changing utilities - all work as expected and described.
Passes prove t xt t/db_dependent tests congruent with current master failures (adds no new fails).

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-13 16:39:59 +01:00
100099d429 Fix for Bug 5056, Untranslatable strings in members.js
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-11-02 15:16:46 +13:00
Garry Collum
1eb9154b73 Bug #2974 Adding category code to BorrowerMandatoryField produced a "The following fields are mandatory: categorycode"
If you made a column that is implemented by a select box mandatory in
BorrowerMandatoryField, Members.js would throw an error on the first
element.  The original intent of the function was probably to catch
the first option for a drop-down list such as "Salutation" where the
text is blank.  Added code to check for an empty string in the first
element.

You can test this by making salutation (title) mandatory.

Also fixed some typos in some of the comments.  Why?  Because I'm a Librarian.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-01 16:47:09 -05:00
Joe Atzberger
bbe018173d members.js - purely whitespace edit (I was debugging the conditionals).
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-20 19:12:38 -06:00
Joe Atzberger
9e333ab077 members.js - return false when validation fails.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-18 16:37:28 -06:00
Ryan Higgins
f4811762d0 cleanup in memberentry,categories.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-17 08:19:07 -06:00
Paul POULAIN
57f25c3dad moving _( function to header
This function is used to extract strings for translator tool. It must be available everywhere, moving it to head-close.inc
& removing it elsewhere

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-05 19:39:23 -05:00
0966dca9e2 Corrections to memberentrygen.tmpl and members.js, experimental reformatting of moremember.tmpl
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-27 16:32:46 -05:00
Paul POULAIN
0e3b44e3f8 Bug fixing : Editing broken javascript
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-24 15:31:37 -05:00
Paul POULAIN
fa87c4d8ff BUGfix : return correctly the form checking
The check_form_borrowers showed an error in the user entry if needed,
but validated it anyway

Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-20 15:31:06 -05:00
Henri-Damien LAURENT
24ac2d0313 Adding error management for memberentry.pl
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-18 15:05:22 -05:00
Joshua Ferraro
27d45375d0 moving calendar to lib
Output.pm: sanatizing variable names
ran  perl -pi~ -e 's/\/includes\/calendar\//\/lib\/calendar\//' * in every staff template dir

Signed-off-by: Chris Cormack <crc@liblime.com>
2007-08-23 21:30:49 -05:00
Joshua Ferraro
d08387dd28 first go at moving templates to a modules/ dir
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-08-23 21:11:27 -05:00
Renamed from koha-tmpl/intranet-tmpl/prog/en/includes/javascript/members.js (Browse further)