Commit graph

249 commits

Author SHA1 Message Date
Katrin Fischer
274075a63f Bug 25364: Undo change to 'None specified'
As this has been a little controversial, this patch undoes
the change to "None specified / Prefer not to say" to be
"None specified" again as before this patch set.

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

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-08-18 17:39:48 +02:00
David Roberts
66e70c9201 Bug 25364: Add "Other" to the gender options in a patron record
This patch adds "Other" as an option, and also changes the wording of
"None specified" slightly.

To test:

1) Apply the patch
2) Check that there is an "Other" radio button in the patron record, and
that the wording of "None specified" has changed to "None specified /
Prefer not to say".
3) Check that you can save changes to the gender of this patron record,
both on create and modify.
4) Check that these changes also work in the Opac Self-Registration
functionality.

Correct typos in previous commit

Signed-off-by: Devinim <kohadevinim@devinim.com.tr>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-08-18 17:39:48 +02:00
f661ecd50f Bug 25654: Make the contact and non-patron guarantor sections separate on patron entry form
This patch reverses what I think was an unintended change made by Bug
14570 in which the non-patron guarantor fields are shown for all patron
types (not just child patrons) and  grouped with the patron contact fields.

This patch creates a new "Non-patron guarantor" fieldset to show along
with "Patron guarantor" when adding or editing child patrons.

To test, apply the patch check that the  BorrowerUnwantedField system
preference does not contain contactname, contactfirstname,
or relationship.

 - Open an adult patron for editing. You should see no guarantor-related
   fields.
 - Open a child patron for editing. There should be two guarantor
   sections: "Patron guarantor" and "Non-patron guarantor."
   - Test that adding patron guarantors and non-patron guarantors works
     correctly.
   - Add "contactname|contactfirstname|relationship" to the
     BorrowerUnwantedField system preference.
   - Reload the child patron entry form. The non-patron guarantor
     section should now be hidden.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>

Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>

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

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-08-18 17:39:48 +02:00
4de06b1711 Bug 25879: (follow-up) Update overlooked guarantor markup
This patch updates another section of guarantor markup which should have
been updated with the others.

To test, apply the patch and locate an adult patron.

 - Click "Add guarantee"
 - Confirm that the part of the form for adding a guarantee looks
   correct.
 - Confirm that the new patron information is saved correctly.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-08-13 07:55:44 +02:00
ec630b4b6c Bug 25879: Improve display of guarantor information in the patron entry form
This patch makes some changes to the patron entry template to improve
the display of guarantor information.

To test, apply the patch and locate a patron with a "Child" type
category.

 - Edit the patron's record
 - Under "Guarantor information," click the "Search to add" button.
 - Search for and select a patron.
 - The guarantor information should be added to the patron edit
   form. The information should be correct and well formatted.
 - Click the "Remove" link. The guarantor information should be
   removed.
 - Search for an select a guarantor again and save the record.
 - Edit the patron record again. The saved guarantor information should
   look correct.

Looks great!

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-08-13 07:55:44 +02:00
810972db7a Bug 22844: Make the attribute mandatory when editing a patron
Note: I am not confident with this patch, I think it's not polished. I
will not have time to improve it to make it ready for 19.05.00
1. Conflict with bug 20443 (which would have make this change way much
easier!)
2. It does not work :) You will be able to submit the memberentry form
even if the patron attribute is marked as mandatory (??)
3. What about the OPAC?
4. What about repeatable fields? We certainly will need JS code here
5. What about the "Quick add" feature? (I had trouble in the past to not
introduce regression when we played with this template...)

Do not forget to run updatedatabase.pl and regenerate DBIC schema if you
want to play with this patchset.

Signed-off-by: David Nind <david@davidnind.com>

Bug 22844: (follow-up) Make the attribute mandatory when editing a patron

Previous patch forgot the most important, adding the required attribute
to the select/textarea

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>

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

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-07-20 16:08:22 +02:00
Petro Vashchuk
029f41a667 Bug 25322: fix for not selected "relationship" defaults to father
When a user creates a patron's guarantor on /cgi-bin/koha/members/memberentry.pl but doesn't select the relationship from a dropdown, the relationship defaults to first value, which in default sysprefs is "father". This may or may not be correct as this is not a conscious choice from the user.

The solution is to make the "Relationship" field mandatory when there is no empty entry in the system preferences, always starting with an empty option but not allowing the user to save an empty entry.
And if there is an empty option in sysprefs, it allows to save empty, as well as makes it default choice.

To reproduce with default system preferences:
    1) Create a new patron who is assumed to have a guarantor or modify the existing one.
    2) Under "Guarantor Information" click on "Search to add" button. After performing the search, select a user to act as guarantor. Don't use the dropdown menu to select a relationship. Save your changes.
    3) Observe that relationship is set as "father".
    4) Apply the patch.
    5) Repeat steps 1 and 2.
    6) Observe that it doesn't allow you to save the form until you pick a relationship type.

To reproduce with empty entry added to system preferences:
    1) Add an empty entry to borrowerRelationship at /cgi-bin/koha/admin/preferences.pl?tab=patrons in Patron relationships section (example: "|father|mother").
    2) Create a new patron who is assumed to have a guarantor or modify the existing one.
    3) Under "Guarantor Information" click on "Search to add" button. After performing the search, select a user to act as guarantor. Don't use the dropdown menu to select a relationship. Save your changes.
    4) Observe that relationship is set as "father".
    5) Apply the patch.
    6) Repeat steps 1, 2 and 3.
    7) Observe when you save the empty entry it does set the relationship as empty.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-06-29 12:37:02 +02:00
4a4d3ef0d8 Bug 25070: Centralize member-main-address-style
Signed-off-by: David Nind <david@davidnind.com>

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

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-06-15 11:53:36 +02:00
cfd97049a3 Bug 25070: Centralize member-alt-contact-style
Signed-off-by: David Nind <david@davidnind.com>

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

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-06-15 11:53:36 +02:00
fdca61a745 Bug 25070: Centralize member-alt-address-style
There are 5 includes files per value of AddressFormat (us, de, fr).
The code is duplicated for each language, the only thing that changes is the order.

Wwith this patchset we are going to refactore them to avoid further regressions.

The idea is to remove all code that is duplicated and remove the need of
having 5*3 files. We are going to limit them to 5 files, 1 per use.

Note that we could go even further, for instance
member-display-alt-address-style and member-display-address-style are
quite identical.

Test plan (for the whole patchset):
- Create a patron with all the address, contact and alternate info filled
- Edit them and save
- Look at the patron's info (top left) in the patron module, and the
patron detail view.
- Play with the different values of AddressFormat
The order and the info must be displayed identically before and after
this patchset. No change is expected.

Signed-off-by: David Nind <david@davidnind.com>

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

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2020-06-15 11:53:36 +02:00
Katrin Fischer
d2c01b2458
Bug 25311: (QA follow-up) Add misssing filter
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-05-04 08:38:52 +01:00
b3e3067731
Bug 25311: Better error handling when updating a patron
Same as the precedent patch for patron's modification

Test plan is identical but with an existing patron

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-05-04 08:38:46 +01:00
580e6fabff
Bug 25311: Better error handling when creating a patron
This is still not ideal but brings a bit of enhancement.

One possible problem is that the patron creation will fail if the
streetnumber field is too long (borrowers.streetnumber is varchar(10).

Test plan:
0. Don't apply this patch
1. Create a new patron with a streetnumber longer than 10 characters
2. Save
=> The patron has not been created and the app explodes
The error is about extended_attributes and not meaningful
Can't call method "extended_attributes" on an undefined value at /kohadevbox/koha/members/memberentry.pl line 560
3. Apply the patch
4. Repeat 1. and 2
=> You get a warning on the interface and you still see the creation
form
5. Check the logs
=> The error is meaningful
"Data too long for column 'streetnumber'"

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-05-04 08:38:35 +01:00
Katrin Fischer
8218653df7
Bug 18680: Add an empty entry by default to sort1/sort2 values in patron account
When using sort1/sort2 with authorised values to create a pull down
list, there will be no empty entry unless one is manually added to
the authorised values list.

This is not a good default behaviour, as it can easily
cause errors on patron creation. Without the empty entry, the first
alphabetic value is pre-selected and will be saved if not explicitly
changed. It also doesn't allow to mark sort1/sort2 as mandatory,
as the value is always 'set', the required message won't be triggered.

This adds an empty parameter to av-build-dropbox.inc to allow selectively
adding this empty entry without causing side-effects in other places
this include is used.

To test:
- Create authorised values for either Bsort1 or Bsort2 authorised
  value category
- Create a new patron:
  - you should see a pull down list on one and an input field for the other
  - for the pull down list, there will be no empty entry and the first
    alphabetic value will be preselected
- Make your sort1 and sort2 mandatory using BorrowerMandatoryField
- Verify there is still on empty entry
- Apply patch
- Repeat tests and verify that the behaviour is as expected
  - There should now be an empty entry
  - When the field is marked mandatory and empty is left, the required
    warning will be shown.

Signed-off-by: David Roberts <david@koha-ptfs.co.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-04-20 12:28:04 +01:00
9ac2ddda0b
Bug 25069: Fix AddressFormat="fr" behavior
Something went wrong during a rebase of bug 13618
  commit dcd1f5d48c
  Bug 13618: Add html filters to all the variables

Several changes related to AddressFormat are wrong:

-    [% IF Koha.Preference( 'AddressFormat' ) %]
-        [% INCLUDE "member-main-address-style-${ Koha.Preference( 'AddressFormat' ) }.inc" %]
-    [% ELSE %]
-        [% INCLUDE 'member-main-address-style-us.inc' %]
-    [% END %]
+    [% SWITCH Koha.Preference( 'AddressFormat' ) %]
+        [% CASE 'de' %]
+            [% INCLUDE 'member-main-address-style-de.inc' %]
+        [% CASE # us %]
+            [% INCLUDE 'member-main-address-style-us.inc' %]
+     [% END %]

Test plan:
Create a patron with all the address fields filled
Play with the 3 option values of AddressFormat, and confirm that the address is displayed correctly
on the patron's view, and in the patron module (top left)

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-04-14 08:25:31 +01:00
a8ea4c1df8
Bug 24988: Default to autorenew_checkouts for new patrons
To recreate:
1 - Create a new patron on the staff interface
2 - Note that 'Allow auto-renewal of items' defaults to 'no'
3 - Apply patch
4 - Create another patron
5 - 'Allow auto-renewal of items' defaults to 'yes'

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Devinim <kohadevinim@devinim.com.tr>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-27 08:36:27 +00:00
0d0ec2d414
Bug 16457: (follow-up) Enable click event on dynamically-created elements
This patch moves the click handler for patron attribute actions ("new",
"clear") from the links themselves to the container. This allows jQuery
to correctly target dynamically-created copies of the links.

To test you should have extended patron attributes enabled and you
should have some repeatable attributes defined.

 - Create or edit a patron record
 - In the "Additional attributes and identifiers" section, test the
   "Clear" and "New" links. Confirm that the controls work with both the
   original instance of the field and those created by clicking "New."

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-26 12:03:42 +00:00
2f998ab38d
Bug 16457: Remove the use of "onclick" from the patron entry form
This patch removes several event attributes from the patron entry form
and replaces them with event handlers in the <script> block.

Some event attributes were removed altogether because they weren't
functional: Onchange events on jQueryUI datepickers don't work, and they
would have been redundant even if they did work.

To test you should have some patron attributes configured
(Administration -> Patron attribute types). At least one attribute
should be configured to apply to one particular patron category.

Apply the patch and begin the process of adding a new patron.

1. Try to add a patron with details matching a patron which already
   exists. You should get a confirmation message on screen which asks if
   the patron is a duplicte. Test the link which shows the existing
   record. It should trigger a popup window with details about the
   patron.

2. Test the process of setting a patron's date of birth. Selecting a
   date should trigger the display of the patron's age immedately below
   the field.

3. Test that you cannot set a patron's expiration to a date which
   precedes the date in the registration date field.

4. Test that you can add a manual restriction's expiration date, and
   that the "Clear date" link works correctly.

5. Test that the "clear" and "new" controls links work with additional
   attributes and identifiers.

6. Test that changing the patron's category correctly affects the
   display of available attributes and identifiers: The attribute you
   have associated with a particular patron category should only show if
   that category is selected under "Category."

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-26 12:03:42 +00:00
09f2b5f90b
Bug 24962: Do not display the toolbar when editing a patron and dup is found
Whe a duplicate patron is found, the toolbar to save is display without
the button.
We must hide it completely, user has to use the 2 buttons from the dup
message "Editing existing" or "Save as new".

Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-24 11:31:43 +00:00
e3c6c4beed
Bug 24476: Rename autorenewal to autorenew_checkouts
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-24 11:23:54 +00:00
47f9ec9446
Bug 24476: Allow patrons to opt out of auto-renewal
To test:
1 - Verify on staff side that patron can be edited to opt in our out of auto renewal
2 - Check out some items to a patron opted in to auto renewal
3 - Ensure the items are checked out and set to autorenew
4 - Login on the opac at the patron
5 - Verify items cannot be renewed as scheduled for auto-renewal
6 - On staff side, opt patron out of auto renewal
7 - Verify on opac items are no longer marked for auto renewal
8 - Run the auto renewal cron job, items are not renewed
9 - Set 'no renewal before' to a setting that would prevent renewal
10 - Verify that opting patron in or out of auto renewal changes only the reason items cannot be renewed
11 - Set 'no renewal before' to a setting that would allow for renewal
12 - Verify that opting patron in/out changes their ability to renew
13 - Verify that when opted out cron does not renew
14 - Verify that when opted in the item is auto renewed
15 - Reset the due date, opt out, verify manual renewal succeeds

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-24 11:23:47 +00:00
9abe037f29
Bug 23808: (follow-up) Pre-fill guarantee's contact details from guarantor patron in memberentry.pl
Pre-fill guarantee contact details (email, phone) from guarantor record
when adding a gurantee to a guarantor's record

Test plan:

1. Apply first two patches and follow test plans
2. On an adult's patron record (which has an primary phone number, secondary
   phone, other phone, primary email, secondary email and fax set) select
   'Add a guarantee' and observe the guarantee's 'Contact' section is not
   pre-filled with that information from the guarantor
3. Apply this patch
4. On the same adult's record select 'Add a guarantee' and observe that the
   'Primary phone', 'Secondary phone', 'Other phone', 'Primary email',
   'Secondary email', 'Fax' have been pre-filled from the guarantor's record
5. Fill out the rest of the memberentry.pl and 'Save' and observe that those
   contact details are successfully saved
6. Repeat step 4 and alter the 'Primary phone' and 'Primary email'
   fields and save and observe that those altered values are saved
7. Run tests and confirm they pass:
   sudo koha-shell <instancename>
   prove xt
   prove t

Sponsored-by: South Taranaki District Council, NZ
Signed-off-by: Andreas Roussos <a.roussos@dataly.gr>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-20 15:24:17 +00:00
14637559b4
Bug 23808: (follow-up) Display card number in 'Guarantor information' in memberentry.pl
Instead of displaying 'Patron #' and displaying the guarantor's borrowernumber
in 'Guarantor information' we should display 'Patron card number:' with
the cardnumber displayed as that value is more meaningful to librarians.
The hyperlink containing the borrowernumber should stay the same so that
librarians can easily visit the patron record of existing guarantor
patrons.

Test plan:

1. Apply first patch and follow it's test plan
2. On an Adult patrons record select 'Add guarantee'
3. In 'Guarantor information' section of memberentry.pl observe in the
   pre-filled guarantor information there is a line 'Patron #:' with a
   link displaying a borrowernumber (not card number) and when you click
   on the link it takes you to the adult/guarantors patron account
4. Select 'Search to add' and search and add another guarantor
5. Observe in the added guarantor 'Patron #:' is displayed along with the
   borrowernumber (not card number). The borrowernumber displayed in not
   a link.
6. Apply this patch
7. On a adults patron select 'Add guarantee'
8. Observe in 'Guarantor information' section the pre-filled guarantor now
   has 'Patron card number:' displayed (instead of 'Patron #:', and it's
   link now displays the guarantors cardnumber.
   Clicking on the link still takes you to the guarantors patron account
9. Repeat step 4
10. Observe in the added guarantor they also have 'Patron card number:'
    (instead of 'Patron #:'). A cardnumber rather than borrowernumber is
    displayed. The cardnumber is not a link.
11. Confirm tests still pass:
    sudo koha-shell <instancename>
    prove xt
    prove t

Sponsored-by: South Taranaki District Council, NZ
Signed-off-by: Andreas Roussos <a.roussos@dataly.gr>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-20 15:22:47 +00:00
6fc82e008c
Bug 23808: Pre-fill guarantor fields when adding guarantee to guarantor
Bug 14570 removed the guarantor pre-fill functionality when selecting
'Add guarantee' to an Adult patron. This is because guarantor
information would now only display if (1) the patron record exists
(which it won't when first adding guarantee to guarantor record) and (2)
if there is already a guarantor added to a guarantee

This patchfix will pre-fill guarantor fields and address fields (so the guarantee
has the same address as the guarantor) if no relationship (existing
guarantor data exists) and a guarantor_id is handed to memberenty.pl in
URL when clicking 'Add guarantee' button on Adults patron record.

Test plan:
1. Add adult patron make sure to fill in their 'Main address' details
2. Select 'Add guarantee'
3. Observe no details of the adult patron are displaying in the
   'Guarantor information' section or 'Main address' sections of memberentry.pl
4. Select 'Search to add', search for your adult patron and choose
  'Select' to add them as guarantor
5. Fill out rest of memberentry.pl and 'Save'
6. Observe adult is showing as the guarantor
7. Apply patch
8. Run tests:
   sudo koha-shell <instancename>
   prove xt
   prove t
9. Confirm tests pass
10. Return to your adult patron
11. Select 'Add guarantee'
12. Observe in 'Guarantor information' and 'Main address' sections of
    memberentry.pl are pre-filled with the 'patron #' (borrowernumber),
    surname, firstname and street number, address, address2 (if you
    filled that in on adults account), city
13. Fill out the rest of memberenty.pl and save and confirm your adult
    patron is showing as the guarantor and the pre-filled address details
    have been saved and are showing
14. Repeat steps 10,11 and 12 and in the 'Guarantor information' select
    'Search to add' and add another adult as guarantor
15. Fill out the rest of memberentry.pl and 'Save' and notice with this
    patch applied you can still add multiple guarantors successfully

Sponsored-by: South Taranaki District Council, NZ
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: George Veranis <gveranis@dataly.gr>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-20 15:20:47 +00:00
Katrin Fischer
acda3765b1
Bug 3137: (QA follow-up) Switch hidden for collapsed in text
Changes the text and tooltip on top of the add/edit patron screen
to use collapsed instead of hidden.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-19 09:10:46 +00:00
Aleisha Amohia
87c3436f77
Bug 3137: (follow-up) Rename using 'collapse', remove syspref lettering and fix guarantor section collapsing
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-19 09:10:41 +00:00
Aleisha Amohia
1a33d51246
Bug 3137: HideFieldsPatronAddForm syspref
This patches adds a syspref - HideFieldsAddPatronFrom - that controls
which fieldsets are hidden by default in the add patron form.

To test:
1) Apply patch and update database
2) Go to System preferences and confirm HideFieldsPatronAddForm has no
fields selected
3) Go to add a patron / edit an existing patron (any patron category).
confirm everything still works as expected.
4) Tick some of the fields in the syspref to hide them in the form
5) Go back to add patron form.
6) Confirm these fields are hidden and listed at the top of the page
7) Toggle the checkbox and confirm the hidden fields show or hide as
expected.
8) Go back to the HideFieldsPatronAddForm system preference and ensure
the Main address option is checked to be hidden
9) Go to the patron's details page
10) Click to edit the Contact Information section
11) Confirm the Main address option shows and the checkbox to show
hidden fields is not present.
12) Confirm you can click the legend of each section to show and hide
sections

Sponsored-by: Catalyst IT
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-19 09:10:31 +00:00
ee12fb2247
Bug 23536: Remove obsolete category markup from patron entry
This patch removes some obsolete markup from the patron entry template
(memberentrygen.tt). The old markup was necessary in a long-gone version
of Koha where it was possible to add patrons using built-in categories
instead of defining your own.

To test, apply the patch and test the process of adding or editing
patrons. You should see the patron category displayed correctly in the
page title, breadcrumbs, and main heading.

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-02 09:49:56 +00:00
afd5ee31ba
Bug 23534: Use patron-title.inc on patron entry page
There are a few instances where we can simplify the patron entry
template by using the patron-title include file instead of outputting
patron name variables one by one. This patch does so in the page title,
page breadcrumbs, and page heading.

To test, apply the patch and edit a patron record. The page title,
breadcrumbs, and main heading should all look correct.

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-02 09:49:56 +00:00
Caroline Cyr La Rose
b73dfef3e1
Bug 24648: Contextualization of past tense 'Created'
In French, everything has one of the binary genders (male or female),
and it affects the past tense verb agreements.

This patch adds contextualization for the "Created" verb

The following files have been modified:
booksellers.tt - refers to a basket
basket.tt - refers to a basket
transferorder.tt - refers to a basket
memberentrygen.tt - refers to a patron restriction
suggestion.tt - refers to a suggestion

To test, apply the patch and visit all those pages in English to make
sure there is no change.
1) Go to Acquisitions
2) Search for vendors
3) On the vendors result pages, check the 'Created by' column heading
of the baskets
4) Click on one of the baskets, check the basket info at the top,
it should say 'Created by:'
5) Click Transfer on one of the orders
6) Search for and choose a vendor
7) In the list of that vendor's basket, it should say 'Created by'
8) Go to a patron's account
9) Add a manual restriction in the Restrictions tab at the bottom
10) In the restriction info, it should say 'Created'
11) Click on the Purchase suggestions tab on the left
12) Add a new suggestion
13) In the Suggestion management section, it should say 'Created by:'
14) Submit the suggestion
15) From the list of suggestions, click on the title
16) In Suggestion management, it should say 'Created by:'

Next, install a new language (fr-CA used as example)
1) translate create fr-CA
2) open fr-CA-messages.po and add a translation for 'basket created by',
'patron restriction created on' and 'suggestion created by' (it doesn't
have to be real, just write something different for each)
3) translate install fr-CA
4) in the system preferences, enable the french language in
'language'
5) change interface language to french

Redo the tests above to make sure the word you put in the translation
for the basket is in the places where 'Created by' refers to a basket, that
the translation for the patron restriction is where it should be and that
the translation you put in for the purchase suggestion is in the places where
'Created by' refers to a purchase suggestion

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-02-19 15:57:21 +00:00
c54163940d
Bug 23533: Remove spaces after/before the open/close parenthesis
t/db_dependent/selenium/patrons_search.t is failing because of this change:

    #          got: 'Koha › Patrons › Modify patron <strong>fir's"tname</strong> \123 ❤ test_patron_1 ( iOVAoJj )'
    #     expected: 'Koha › Patrons › Modify patron <strong>fir's"tname</strong> \123 ❤ test_patron_1 (iOVAoJj)'

We are adding space after and before the open/close parenthesis of the category code.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-02-04 15:09:25 +00:00
0f6d55a0a1
Bug 23533: (follow-up) Add markup comments
This patch adds comments to the template to highlight the markup
structure.

This patch should have no effect on the interface or functionality.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-02-04 10:19:56 +00:00
35635b98db
Bug 23533: Reindent patron entry form (memberentrygen.tt)
This patch re-indents the template for patron entry/editing. It
makes only whitespace changes. It should have no effect on the behavior
of the page.

To test, create or edit a patron.

Test every aspect of the process. At each step the page should work
correctly. Including:

 - Adult patron
 - Child patron
 - Organizational patron
 - Quick patron add
 - Duplicate patron
 - With mandatory fields
 - With 'BorrowerUnwantedField's defined
 - With ExtendedPatronAttributes enabled

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-02-04 10:19:47 +00:00
5a8f202cb2
Bug 23451: Fix other similar wrong filterings
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-11-27 11:30:18 +00:00
f23e49c08c
Bug 23958: Use Font Awesome icon to replace "new window" icon image
This patch modifies several templates in order to eliminate the
dependency on an image file for styling certain links which open popups
or new windows. A Font Awesome icon is used instead.

To test, apply the patch and rebuild the staff client CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).

Cataloging:

 - Create a new MARC record which has the same ISBN as a record in your
   catalog.
 - When you save the record it should warn you that it is a possible
   duplicate. The message should contain an icon-prefixed link to the
   existing record.
 - Clicking the link should open details about the title in a new
   window.

Circulation:

 - Enable the itemBarcodeFallbackSearch system preference.
 - Open a patron for checkout and enter a word in the "barcode" field
   instead of a barcode.
 - The page should return a list of titles to choose from. Each title
   should be a link with an icon. Clicking the link should open details
   about the title in a new window.

Acquisitions:

 - Go to Acquistisions -> Vendor -> Basket.
 - Choose "Add to basket" -> From an external source.
 - Search for and select a record which exists in your catalog.
 - You should be taken to a page with a "Duplicate warning" message. The
   message should contain an icon-prefixed link to the existing record.
 - Clicking this link should open details about the title in a new
   window.

 - Create a MARC file with two records: One which exists in your catalog
   and one which doesn't. Stage that file for import.
 - Choose "Add to basket" again and select "From a staged file."
 - Select the file you staged.
 - You should be taken to a page with a "Duplicate warning" message. The
   message should contain an icon-prefixed link to the existing record.
 - Clicking the link should open details about the title in a new
   window.

Patrons:

 - Create a new patron which has the same name and birthday as an
   existing patron.
 - When you save the record you should be shown a duplicate warning. The
   link to the possible duplicate patron should be prefixed with an icon
   and should open the patron's details in a popup window.

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-11-27 09:25:16 +00:00
7f6f4f3c68
Bug 24113: guarantor info lost when a duplicate is found
When a patron is created with a guarantor but a duplicate is found (or any other warnings I guess) the guarantor's info are lost.

This patch improves on previous functionality by retaining the select guarantor relationship as well.

Test Plan:
1) Create a new child with a name already used, add a guarantor
2) Attempt to save, no the guarantor is not shown when the editor is redisplayed
3) Apply this patch
4) Restart all the things!
5) Repeat 1
6) Note the guarantor is retained and the relationship is as well!

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-11-27 07:51:04 +00:00
2d9bfcbfbe
Bug 23905: Remove extra closing span
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-11-26 11:15:23 +00:00
dcb9bf3581
Bug 23905: Button "Search to add" doesn't work on Quick add new patron
This issue is caused by duplicating the patron guarantor fieldset.
The solution is to move it between the two forms insetad.
In addition, this patch moves the guarantor information fieldset to the area below the "Quick add" fieldset, instead of *inside* it. This change preserves the correct styling and layout of the Guarantor information fieldset whilst it is moved back and forth by the "quick add"/"full form" toggle.

Test Plan:
1) Quick add a child patron
2) Attempt to use the "Search to add" button
3) Note it does nothing
4) Apply this patch
5) Repeat steps 1 and 2
6) It works now!
7) Test toggling between the quick add and full form views,
   note the "Guarantor information" fieldset shows correctly
   in the full form view.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-11-26 11:15:12 +00:00
bc9871f428
Bug 23778: Regression: Guarantor entry section no longer has a unique id
This patch adds back a fieldset ID which was accidentally removed by Bug
14570:

<fieldset id="memberentry_guarantor" class="rows">

This ID is important if libraries want to customize the patron entry
page to hide the guarantor section.

To test, apply the patch and go to Patrons -> New patron.

Inspect the markup and look at the fieldset labeled "Guarantor
information." It should have the correct ID attribute.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-10-09 14:30:39 +01:00
Kyle M Hall
1ad03f5509
Bug 20691: Add ability to turn feature on and off
This patch adds two preferences
1. AllowPatronToSetFinesVisibilityForGuarantor: Allow/Don't allow patrons to choose their own privacy settings for showing the patron's fines to the patron's guarantor
2. AllowStaffToSetFinesVisibilityForGuarantor: Allow/Don't allow staff to set the ability for a patron's fines to be viewed by linked patrons in the OPAC

Also adds a tinyint, non nullable, default to 0 column in borrower and deletedborrower named privacy_guarantor_fines.
1. privacy_guarantor_fines = 0 => don't allow guarantor to see guarantee's fines
2. privacy_guarantor_fines = 1 => allow guarantor to see guarantee's fines

To test:
1) git reset --hard master
2) apply patches (including dependencies)
3) perl installer/data/mysql/updatedatabase.pl
4) dbic
5) restart_all
6) in intranet search for AllowPatronToSetFinesVisibilityForGuarantor and AllowStaffToSetFinesVisibilityForGuarantor preferences
SUCCESS => both preferences should be present
7) search for a patron with guarantor
SUCCESS => in details tab, in "Library use" section you should see a row labeled "Show fines to guarantor"
8) edit
CHECK => in Guarantor information there is no "Show fines to guarantor" select
9) set AllowStaffToSetFinesVisibilityForGuarantor preference to "Allow"
10) return to patron with guarantor and edit
SUCCESS => in Guarantor information section there is a "Show fines to guarantor" select
11) change "Show fines to guarantor" select to "Yes" and save
SUCCESS => Value is saved
12) go to details tab
SUCCESS => in "Library use" section you see a row labeled "Show fines to guarantor" with value "Yes"
13) set OPACPrivacy preference to "Allow"
14) open 2 opacs, one with a patron that has a guarantor and another that hasn't and go to "your privacy" tab.
CHECK => in both opacs you should not see a "Allow your guarantor to view your current fines?" select
15) in intranet set AllowPatronToSetFinesVisibilityForGuarantor to "Allow"
16) refresh both opacs
SUCCESS => in Patron that has guarantor you see a "Allow your guarantor to view your current fines?" select
	=> in Patron without guarantor you don't see a "Allow your guarantor to view your current fines?" select
17) in Patron with guarantor change value of select and save
SUCCESS => Value is saved
18) in intranet set OPACPrivacy preference to "Don't allow" and AllowPatronToSetFinesVisibilityForGuarantor to "Don't allow"
19) got to "your personal details" in both opacs
CHECK => in both opacs you should not see no Privacy section with a "Allow your guarantor to view your current fines?" select
20) in intranet set AllowPatronToSetFinesVisibilityForGuarantor to "Allow"
21) refresh both opacs
SUCCESS => in Patron that has guarantor you see a "Allow your guarantor to view your current fines?" select in a Privacy section
        => in Patron without guarantor there is no Privacy section
22) in Patron with guarantor change value of select and update
SUCCESS => Value is saved
23) Sign off

Signed-off-by: Agustin Moyano <agustinmoyano@theke.io>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-09-11 08:53:46 +01:00
949b5b3711
Bug 14570: (RM follow-up) Consistent button styling
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-08-20 16:06:42 +01:00
5d2a082647
Bug 14570: (QA follow-up) Fix issues in Guarantor context
Signed-off-by: Agustin Moyano <agustinmoyano@theke.io>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-08-20 16:05:46 +01:00
f827064bad
Bug 14570: (QA follow-up) Fix issues in Guarantee context
Signed-off-by: Agustin Moyano <agustinmoyano@theke.io>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-08-20 16:05:41 +01:00
Agustin Moyano
53b3ebe9d0
Bug 14570: (follow-up) fix qa FAIL tests
Signed-off-by: Agustin Moyano <agustinmoyano@theke.io>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-08-20 16:05:14 +01:00
109334102f
Bug 14570: Make it possible to add multiple guarantors to a record
This patch adds the ability to set an unlimited number of guarantors
for a given patron. As before, each guarantor may be linked to another
Koha patron, and all the behavior that applies to a given guarantor
remains the same.

Test Plan:
 1) Apply this patch
 2) Run updatedatabase.pl
 3) Find some patrons with guarantors, verify the still have their guarantor
 4) Test adding and removing guarantors on a patron record, both Koha users and not
 5) Verify the "Add child" button works
 6) Verify NoIssuesChargeGuarantees still works
 7) Verify tools/cleanborrowers.pl will not delete a guarantor
 8) Verify the guarantors are displayed on moremember.pl
 9) Verify the guarantor is removed by members/update-child.pl
10) Verify the guarantor is removed by misc/cronjobs/j2a.pl
11) Verify import patrons converts guarantor_id, relationship, contactfirstname,
  and contactsurname into a guarantor
12) prove t/Patron.t
13) prove t/db_dependent/Circulation.t
14) prove t/db_dependent/Circulation/NoIssuesChargeGuarantees.t
15) prove t/db_dependent/Items.t
16) prove t/db_dependent/Koha/Patrons.t
17) prove t/db_dependent/Members.t
18) prove t/db_dependent/Patron/Relationships.t

Signed-off-by: Kim Peine <kmpeine@gmail.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Agustin Moyano <agustinmoyano@theke.io>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-08-20 16:04:48 +01:00
4605d76a73 Bug 3766: Cities/Towns only on one address
This patch ties the alternate address and alternate contact address
fields in the patron entry form to the cities and towns data. This
provides a dropdown of predefined city data to these address fields.

To test, apply the patch and edit a patron record.

Test city selection for all three address fields: Main address,
alternate address, and alternate contact. Confirm that city selection
works correctly and that your changes are saved correctly.

Perform these tests with all AddressFormat options: French, German, and
US.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

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

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-04-17 12:25:25 +00:00
2d7eba5be3 Bug 22698: Fix incorrect button classes
This patch builds on Bug 22023 in making further corrections to toolbar
button classes.

To test, apply the patch and view the following pages to confirm that
toolbar buttons are consistent:

- Acquisitions -> Vendor -> View basket.
- Administration -> Additional fields -> Select a table.
- Administration -> Audio alerts.
- Catalog -> Advanced search -> More/fewer options link
- Cataloging -> Edit record -> Advanced editor -> Advanced search.
- Cataloging -> Edit record -> Advanced editor -> Macros.
- Cataloging -> Edit record -> MARC21 008 value builder.
- Cataloging -> Search results.
- Circulation -> Checkout notes.
- Circulation: Sticky due date clear button, view restrictions, override
   restrictions temporarily, add message, delete message
- Course reserves: Toolbar buttons on that page and the course reserve
   detail page.
- ILL requests -> View ILL requests. The "New ILL request" and "List
   requests" button.
- Lists and Lists -> View list.
- Patrons -> Search -> Merge patrons.
- Patrons -> View patron -> "Edit" button on patron image (patronimages
   must be enabled).
- Patrons -> View patron -> "More" menu -> Manage API keys.
- Patrons -> View patron -> "More" menu -> Set permissions.
- Patrons -> View patron -> Delete circulation message link.
- Patrons -> View patron -> Edit patron.
- Patrons -> View patron -> Housebound.
- Reports -> Dictionary.
- Serials -> Numbering patterns.
- Serials -> Subscription -> Receive.
- Tools -> Labels -> Manage -> Label batches: Export selected.
- Tools -> Patron card creator -> Manage -> Card batches -> Edit batch.
- Tools -> Patron card creator. The "New" and "Manage" buttons.
- Tools -> Patron clubs.
- Tools -> Quote editor -> Import quotes.
- Tools -> Rotating collections. Toolbar buttons on that page and the
   collection view page.
- Tools -> Tags.
- Tools -> Upload local cover image.

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-04-16 13:17:33 +00:00
a0e61d8c3e Bug 22594: Validate SMS messaging numbers using the E.164 format
Many SMS messaging services reject numbers that do not conform to the E.164 international public telecommunication
numbering plan.

We already tell patrons on the OPAC "Please enter numbers only. (123) 456-7890 would be entered as 1234567890."
but we do not enforce this. We should be validating the patron's SMS number on both the staff side and the patron
self-service for updating the SMS number.

Test plan:
1) Apply this patch
2) Enable SMS message ( you can set to Email to enable )
3) Test entering and updating SMS numbers on the OPAC and staff
   interfaces.
4) Note you can only enter a 1 to 14 digit number with an optional + sign
   at the beginning ( used to indicate the number includes a country calling code )

Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-04-12 02:23:54 +00:00
4fe300dec1 Bug 12159: Fix getting extended patron attributes for circ-menu
Changes:
- Replace getting preference ExtendedPatronAttributes by Koha.Preference
in templates
- Add Koha::Patron->attributes for getting patrons extended attributes
- Use this method in circ-menu.inc
- Remove getting attributes from members perl scripts

Test plan:
0) Apply the patch
1) Add some patron attributes type - with free text, authorised value,
    limited by libraries...
2) Add some values to this attributes for some patrons
3) Go through as many patron pages as you can and confirm that
attributes are shown at side panel when they shoul and are not shown
when they should not be shown

Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
[EDIT] Removed Koha/Schema/Result/BorrowerAttribute.pm
[EDIT] Added missing semicolon on L114 in Koha/Patron/Attribute.pm

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-03-28 13:05:22 +00:00
a344b8cf8c Bug 22023: Further improve responsive layout handling of staff client menu bar
This patch makes a number of changes in order to improve the way the
staff client's header menu adjusts at narrower browser widths:

 - Updated version of Bootstrap 3.3.7 which includes the "collapse"
   JavaScript plugin.
 - Modified default Bootstrap CSS using Bootstrap's customization tool.
   These changes facilitate the removal of some custom CSS (overriding
   Bootstrap) from staff-global.scss.
 - Added Bootstrap config file for loading customizations at
   https://getbootstrap.com/docs/3.3/customize/
 - Revised button classes for buttons in Bootstrap-styled toolbars.

   The modified default CSS resets the base font size in Bootstrap to
   better match our global CSS. A side-effect of this is that toolbar
   buttons ended up looking smaller than they should. Changing the
   button class solves this.

 - Restructure the header menu in order to allow different rules to
   govern the appearance of the navigational part of the menu
   (Circulation, Search, etc) and the user menu (Set library, My
   account, Log out).

 - Modify the cart JS to so that the popup works well at narrow widths.

To test, apply the patch, regenerate the staff client CSS, and clear
your browser cache.

 - Log in to the staff client and observe the layout of the header menu
   as you adjust the browser to various widths.
   - Confirm that sections of the menu "collapse" as the window gets
     narrower.
   - Confirm that dropdown menus behave correctly and that links work.
   - Confirm that the Cart link works as expected when the cart empty
     and when it has items.
- Install and enable multiple translations, including at least one
  set of sub-languages (e.g. fr-FR and fr-CA).
  - Test the appearance of the language menus in the footer at
    various browser widths.
- View pages with button toolbars and confirm that they appear unchanged
  (e.g. biblio detail page, patron detail page).

NOTE: While this patch is intended to make improvements to staff client
responsiveness, it does so within a limited scope. There are still many
pages which do not work well at narrower browser widths.

Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2019-03-13 05:31:28 +00:00