Test Plan:
1) Create two Checkouts
2) view patron's checkout list
cgi-bin/koha/members/moremember.pl?borrowernumber=pp <show
checkout>
3) in mysql shell delete a checkout home branch: update items set
homebranch = null where itemnumber = xx;
4) view patron's checkout list, again
Without this patch the list is empty.
Same if biblio title is null (update biblio set title = null where
biblionumber = yy;).
Javascript error:
TypeError: oObj.title is null
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Test plan:
- Check some items out, all from different libraries
- Modify the checkout and due dates, like:
2018-10-22
2018-01-23
2018-05-27
- Sort by checkout date, verify it is actually sorting on homebranch
- Apply patch
- Reload page
- Note you can now sort items correctly
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds a submenu to the sidebar menu in the system preferences
interface. Submenu links let you jump to the sub-sections in each
preference category.
In the search results view, a link is added to allow the user to jump
directly to the section from which those results came. For instance, if
your search returns the "SuspendHoldsOpac" preference, the link will
take you to to the Circulation preferences page and jump the page to the
"Holds policy" section.
This patch also converts the expand/collapse arrows to Font Awesome
icons. The obsolete image files are removed.
If you click a submenu link for a section on the current page which has
been collapsed, the section will expand.
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).
- Go to Administration -> System preferences.
- Test the various preference categories and confirm that the submenus
appear correctly and jump you to the right section.
- Test that if you click a section heading to collapse it that
clicking the corresponding submenu link in the sidebar causes it to
expand again.
- Do a search for system preferences and confirm that the sidebar menu
displays correctly.
- Confirm that the "View all..." links take you to the correct page and
section.
Signed-off-by: David Nind <david@davidnind.com>
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>
This patch adds the code that is used for handling columns settings on
datatables and allows passing the columns_settings information to the
API-centric datatable. To test, you need bug 25288, which uses this features.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Works with bug 24561. Make working bug 25288
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds DataTables sorting and filtering to the table of
subfields shown on the MARC subfield structure administration page.
To test, apply the patch and go to Administration -> MARC bibliographic
framework.
- From the 'Actions' menu, select 'MARC structure.'
- From the 'Actions' menu, select the 'View subfields' link for a tag
with multiple subfields.
- On the page showing all the subfields for the tag, confirm that the
table is sorted by default by subfield and that sorting works
correctly.
- Confirm that the search form at the top of the table works.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch modifies, again, the way the actions popup is implemented in
Z39.50 search results, whether it be in cataloging, authorities, or
acquisitions. The solution for Bug 25282 changed some markup which was
being referred to in JavaScript. This patch makes the markup more
consistent and unifies handling of the menu in one JavaScript file.
The solution changes the way a menu is generated when the user clicks
within the row of Z39.50 search results (not on the "Actions" button).
The script now creates a clone of the actions menu in that row and
appends it to the <td> the user clicked on.
To test, apply the patch and clear your browser cache if necessary. Test
these three areas in the same way:
1. Cataloging -> New from Z39.50 -> Search
2. Authorities -> New from Z39.50 -> Search
3. Acquisitions -> Vendor -> Add to Basket -> From an external source ->
Search.
In each case, test the functionality of the "Actions" menu button in the
last column ("Preview" in Acquisitions search results). The menu
should be positioned correctly and menu choice works correctly
Click anywhere else in the search results table. The same actions menu
should be triggered in that table cell. Confirm that these menu items
work correctly according to the row which was clicked.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch merges the contents of common.js with staff-global.js. Both
are included globally in the staff interface, and there doesn't seem to
be any reason to require that the user downloads two different
JavaScript files.
To test, apply the patch and perform a catalog search in the staff
client.
View the detail page for a title in the search results. On the detail
page you should see navigation controls in the sidebar for browsing
through search results. Confirm they work correctly.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
On bug 24386 we prevent double form submission using the our own preventDoubleFormSubmit JS function.
The problem is that we are checking some conditions, and prevent the
form submission if something is not filled (for instance no checkbox
checked, or no fund selected).
Technically it means that:
- click the submit button
- it submits the form
- we disable the submit button
- we prevent the form to be submitted before something is wrong
At this stage the button is disabled and the form cannot be longer be
submitted.
This patch replaces the "on submit" event of the form with the "on click" event of the submit button.
Which means we are going to:
- click the submit button
- we prevent the form to be submitted before something is wrong
=> The button will only be disabled if the form is really submitted
Test plan:
- stage a marc record
- acquisitions: have a basket
- click on "Add to basket"
- "From a staged file"
- Don't tick the record
- Save
- You should see an expected error message
- Tick the record
- Save
- You should see an expected error message
- Choose a fund
- Click the "Save" button as many times as you can, to try double submit
it.
=> The order is saved
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
While adding the data from the existing field to the auth_finder URI,
we're using encodeURI(), which is meant for an entire URI and thus
doesn't escape &. Things that are going into a querystring need
encodeURIComponent() instead.
Test plan:
1. Enable the system preference EnableAdvancedCatalogingEditor
2. Clear your browser cache, even a shift+reload won't get you a fresh
marc-editor.js for the advanced editor
3. Create a Topical Term authority with 150 $aThis & That$xStuff & Junk
4. In the Basic editor, use the authority plugin on the 650 field to
select that authority.
5. Click the authority plugin again, verify that the popup contains This
& That and Stuff & Junk rather than just This and Stuff
6. From the Cataloging home page choose Advanced editor
7. In a new line paste 650 _ _ ‡aThis & That‡xStuff & Junk
8. Type ctrl+shift+L and verify the popup shows both words in both
fields
9. When you remember the plugin exists there too, edit your
Stuff & Junk authority, and in a 550 tag type One & Two in
$a and Three & Four in $x and click the plugin link, verify that
the search window has your search terms not cut off.
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
We are trying to keep the current datatables behaviour so this is a
trivial yet sensible change.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds option.criteria as an option. Possible values are
'contains', 'starts_with', 'ends_with' and 'exact'. 'contains' is the
default value.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds the ability to filter and order by embedded columns.
To use it you must in JS:
$('datatable_selector').api({datatables_options})
where datatables_options are all datatables options plus:
1. embed: [list of embeddable tables]
This option adds x-koha-embed header to request.
2. header_filter: true|false
This option if true sets x-koha-query header with stringyfied json of filters
Oderable and searchable columns must define data option as string, otherwise filter and order won't be possible.
If you must custom the output, use the render function.
For example:
* Don't
> $('.table_selector').api({
> columns: [
> {
> data: function(row, type, val, meta) {
> return '<a href="'+row.link+'">'+row.holds.patron.firstname+'</a>';
> },
> orderable: true,
> searchable: true
> }
> ]
> });
* Do
> $('.table_selector').api({
> columns: [
> {
> data: 'holds.patron.firstname',
> render: function(row, type, val, meta) {
> return '<a href="'+row.link+'">'+row.holds.patron.firstname+'</a>';
> },
> orderable: true,
> searchable: true
> }
> ]
> });
To test you must implement and test bug 20936, where it will be used.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch modifies the JavaScript which handles the process of adding
items to a list in the staff client. Error-handling is added in the case
when a set of biblionumbers hasn't been passed to the vShelf function.
To test, apply the patch and perform a catalog search in the staff
client.
On the search results page, select any list from the "Add to list" menu
at the top of the search results table without checking any checkboxes.
You should get an alert, "No item was selected."
Also test that adding to a list works correctly after selecting one or
more titles.
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>
String sorrounded by "__()"
To test:
1) create translation files for a language
(cd misc/translator; ./translate create xx-YY)
2) Check string
egrep -l "No cover image available" misc/translator/po/xx-YY-*
present in 2 files, opac-bootstrap and staf-prog
3) Apply patch
4) Create files again
(cd misc/translator; rm -f po/xx-YY*; ./translate create xx-YY)
5) Check again
egrep -l "No cover image available" misc/translator/po/xx-YY-*
present in 3 files, new in messages-js
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>
Test plan:
1) Apply first patch, and have the same requests as in previous patch
test plan
2) Load ill requests list
2a) You can see another TypeError in console
2b) You can notice, the Placed on and Updated on columns have prepended
another columns with unformatted dates and without header label
3) Apply this patch
4) Reload page (be sure it is not loaded from cache - Ctrl+F5)
5) Errors from 2a and 2b are gone
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch modifies the way in which a request's status name is
retrieved. I think the previous way it was done (which can never have
worked properly) must have come from a time when we weren't embedding
the request's backend capabilities in each request. So now we can just use
the current row.
Test plan:
1. *Before applying the patch*:
2. Ensure you have at least two requests, from two different backends.
One of the backends you are using must have a possible status that
doesn't exist in the other. For example, the BLDSS backend has a status
of STAT, that doesn't not exist in any other backends.
3. Ensure that the request who's backend has the unique status is *not*
the first request in the returned list.
4. Load the "View ILL requests" page
5. Observe that the page JS fails with a "Cannot read property 'name' of
undefined" error
6. Apply the patch
7. Reload the page (maybe doing a hard reload to ensure the JS is not
cached)
8. TEST: Observe that the error no longer occurs and the requests all
have their statuses displayed correctly.
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Test Plan:
1) Set ClaimReturnedLostValue
2) Create a checkout
3) Claim a return
4) Change the barcode to something with html inside, </a> will do
Without this patch cgi-bin/koha/members/moremember.pl claim tab barcode link is broken.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
If we are coming from the "Modification logs" of the patron module we
should not disable the checkboxes (that are not visible).
Otherwise the logs are not longer filtered and all are visible.
Test plan:
0. Don't apply this patch
1. Modify a patron, add them a fine, and do a checkout
2. Click the "Modification logs"
=> You see the Patrons and Circulation logs
3. Click submit
=> You see all the logs (KO)
4. Apply this patch
5. Click the "Modification logs"
=> You see the Patrons and Circulation logs
6. Click submit
=> You see the Patrons only (KO)
7. Apply the patch from bug 25249
8. Click the "Modification logs"
=> You see the Patrons and Circulation logs
9. Click submit
=> You see the Patrons and Circulation logs (OK!)
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds the right function calls to checkouts.js so that English
strings can be picked up by the translator. The resolution message has
been reformatted so that it can be clear without including "on" and
"by" in the middle of the string.
To test you should have a patron with at least one return claim. Open
the checkout page for that patron and open the "Claims" tab. Test the
process of editing, deleting, and resolving claims.
TESTING TRANSLATABILITY
- Update a translation:
> cd misc/translator
> perl translate update fr-FR
- Open the corresponding .po file for the staff
client: misc/translator/po/fr-FR-messages-js.po
- Locate strings pulled from checkouts.js for translation, e.g.:
#: koha-tmpl/intranet-tmpl/prog/js/checkouts.js:920
msgid "Double click to edit"
msgstr ""
- Edit the "msgstr" string however you want (it's just for testing).
- Install the updated translation:
> perl translate install fr-FR
Switch to the udpated translation and test the functionality under the
"Claims" tab again to confirm that your translated strings appear.
Note that "untranslatable string" failures reported by the QA script are
false positives.
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>
I believe I suggested a typo - trying to fix it here.
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Sometimes librarians are creating purchase suggestions that came from patrons
which didn't use the opac (but sent an email, or told the librarian verbally...)
This patch allows the librarian to change the creator of the purchase suggestion
when entering it.
This way, the patron will be able to receive notifications during the purchase
suggestion workflow.
Test plan:
- Apply the patch
- Check that you can change the default creator of the purchase suggestion when
creating a new suggestion by clicking on 'Set to patron'
(Home > Acquisitions > Suggestions management > New purchase suggestion)
- Check that you can also change the creator of the purchase suggestion when
editing an existing 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>
This patch corrects the translation function inside results.js. It
should be two underscores instead of one.
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds three new options to the staff interface catalog search
results for users with cataloging permission: batch edit, batch delete,
and merge. The choices are found in an "Edit" menu which is disabled by
default. Checking any boxes in the search results table enables the
button.
To test, apply the patch and log in to Koha as a user with
edit_catalogue permission.
- Perform a search in the catalog
- You should see a disabled "Edit" button in the toolbar at the top of
the search results table.
- Check a single checkbox. The button should become enabled.
- Test the "Batch edit" and "Batch delete" menu items. They should
work correctly.
- Test the "Merge records" item. It should warn you that you must
select at least two records.
- Check more than one checkbox and test each menu item again. All
should work as expected.
- Log in to the staff client as a user who does not have edit_catalogue
permission. The "Edit" menu should no longer appear on the search
results page.
Signed-off-by: Abbey Holt <aholt@dubuque.lib.ia.us>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
When selecting partners for search during the "Place request with
partner libraries" workflow, there was no indication of which partners
could actually be searched (i.e. are attached to a Z target and enabled
for partner search). We now list them
Signed-off-by: Niamh Walker-Headon <Niamh.Walker-Headon@tudublin.ie>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds the required infrastructure to enable ILL availability
plugins to intercept the request creation process and, using the
supplied metadata, search for and display possible relevant items from
whichever availability plugins are installed.
Currently three availability plugins exist:
z39.50 - Searches any number of the Koha instance's configured Z targets
https://github.com/PTFS-Europe/koha-plugin-ill-avail-z3950
EDS - Searches the EBSCO Discovery Service
https://github.com/PTFS-Europe/koha-plugin-ill-avail-eds
Unpaywall - Searches the Unpaywall API for possible open access versions
of the requested item
https://github.com/PTFS-Europe/koha-plugin-ill-avail-unpaywall
The Unpaywall plugin is intended to serve as a "reference" plugin as the
API it deals with is extremely simple
Signed-off-by: Niamh Walker-Headon <Niamh.Walker-Headon@tudublin.ie>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch makes alert added in subscription-add.js translatable using
the new __() function.
To test, apply the patch and confirm that the alert still works
correctly when submitting the subscription edit form with an invalid
vendor id.
Test that the string can be translated (using fr-Fr for example):
1. cd misc/translator && ./translate update fr-FR
2. Translate strings in misc/tranlator/po/fr-FR-messages-js.po
3. cd misc/translator && ./translate install fr-FR
Switch to the fr-FR translation and confirm the the alert shows your
translated string.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
It will avoid crash and invalid data when creating/updating a
subscription.
This could have been done with a AJAX query but seems more convenient
this way.
Test plan:
- Create or update a subscription
- In the "Vendor" input try an empty string, a valid vendor's id, and
invalid one.
=> With an empty string you get the existing alert message
=> With a valid id you do not get any messages
=> With an invalid id you are not allowed to go to page 2
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>
To test:
1 - Have a marc record file
2 - Go to Acquisitions, find a vendor, then an open basket
3 - Add to basket from a new file (if you already have one staged you can choose that instead)
4 - Import the file, then add to basket
5 - On the page where you select the records and set info select a record, set matching to 'Do not check' fill in the fund for the order
6 - When ready, click save as many times as you can
7 - When you go to the basket there are many copies of the order added
8 - Don't despair, apply the patch
9 - Repeat above
10 - When ready to add orders, click furiously
11 - The order is only added once!
12 - Success!
Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
So we can see all options at once, and more easily select more than one
option.
Test plan:
1) Go to Tools -> Log viewer
2) Notice the new checkboxes under Modules, Actions and Interface. 'All'
should be selected by default for all three options
3) Confirm you can deselect 'All' and the other options are enabled.
Confirm selection all of the other options automatically selects 'All'
and disables the options again.
4) Confirm the results still work as expected when clicking 'Submit'
button
Sponsored-by: Catalyst IT
Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
When an item is claimed returned by staff, there is a column called Updated On - this date field column should remain blank until this claimed returned has been updated. Currently, when an item has been claimed returned, the date in the updated column states 12/31/1969. This date only shows up in the display, it is doesn't show up in the database like this.
Test Plan:
1) Enable return claims
2) Make a claim
3) Note the 'updated on' column has the date 1969-12-31
4) Apply this patch
5) Reload the page ( you may need to clear your browser cache )
6) Note the field is now blank
Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
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>
This patch adopts the approach detailed in comment #1.
It also fixes a couple of additional minor bugs relating to the ILL
partner list:
- Exclude partners with no email address, we cannot use them
- Quote the "value" attribute to avoid warnings displayed by IE, they
should be quoted anyway!
Test plan: USE IE11
- Apply the patch
- Define 3 ILL partner patrons (patrons in the category that has a code
that matches the <partner_code> value in the ILL config). One patron
should have no email address, the other two should have an email address
- Navigate to "Place request with partners" for an ILL request
- TEST: Observe that the patron with no email address is not displayed
- Try filtering the list
- TEST: Observe that the list filters correctly
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Now that bug 21156 is pushed, we don't need to have global variables in
.inc or .tt files for translation in .js file. We can simply declare our
translatable strings where they are used.
This patch removes all global variables used in DataTables configuration
Test plan:
1. cd misc/translator && ./translate update fr-FR
2. Translate strings in misc/tranlator/po/fr-FR-messages-js.po
3. cd misc/translator && ./translate install fr-FR
4. Go to the staff interface, in english, and check that DataTables
tables are still working. You should check at least the following pages:
- catalogue/detail.pl
- circ/circulation.pl
- tools/quotes.pl
- tools/letter.pl
5. Switch to french and check again DataTables tables, and verify that
strings are translated
This patch depends on bug 24661
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
We need the API call to get ILL requests on the patron profile page,
this commit allows this.
Test plan:
- Do not apply the patch.
- Go to the "Ill requests history" page for a patron who has made ILL
requests
- TEST: Observe that no requests are displayed
- Apply the patch
- Refresh the page
- TEST: Observe that requests are displayed
- Go to the main "ILL requests" page
- TEST: Observe that requests are displayed
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
There is a mismatch between sort_cgi, sort and sort_by variables.
* sort_cgi
I did not find relevant occurrences of sort_cgi in the git log of both
search.pl and results.tt. So it seems that it never worked correctly.
* sort
It is the JS variable use in browser.js
* sort_by is the search.pl parameter to set the sort_by option
Test plan:
1. Perform a search in the staff client
2. Change the sort order to something different (try Author A-Z)
3. Click on a result to view the record
4. Click on "Results" button on left side to return to result list
=> Without this patch the result list is sorted by relevancy
=> With this patch applied the Author A-Z is kept
Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
system preferences
This patch adds CodeMirror plugins for linting JS, CSS, HTML, and YAML.
When invalid data is entered in a linted CodeMirror editor an icon is
displayed in the editor's "gutter." Hovering over the icon displays the
error message.
This patch renames the minified CodeMirror JS file to match convention
but the version is unchanged.
To test, apply the patch and go to Administration -> System preferences.
Test preferences of each type and confirm that each type of CodeMirror
editor shows an error indicator if you entry invalid data. Valid data
should trigger no error indicator.
- HTML: e.g. OpacMainUserBlock, opacheader. Enter invalid HTML, for
example "<h1>Hello <h2>World</h2>."
Example valid HTML: "<h1>Hello world</h1>"
- JavaScript: e.g. OpacUserJS, IntranetUserJS. Example bad JS,
"alert("Success!');"
Example valid JS: "alert("Success!");"
- CSS: e.g. IntranetUserCSS, SCOUserCSS. Example bad CSS,
"p { color blue }"
Example valid CSS, "p { color: blue; }"
- YAML: e.g. OpacHiddenItems. Example bad YAML:
"one: two, three: four"
Example valid YAML:
"one: two
three: four"
Also test that other CodeMirror instances still work correctly without
linting: The advanced MARC editor, SQL reports editing.
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>
There was a missing space between the title and the barcode.
Also added a space between title and author.
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
From Julian on bug 24661 comment 6:
"""
It looks like xgettext does not like ES6 template literals.
https://savannah.gnu.org/bugs/?50920
From what I understand, support for template literals was added in gettext 0.20 (still not packaged in debian) but is still buggy in latest released version 0.20.1 and a fix is present in master.
"""
We should not use backticks ` in .js file, it breaks xgettext.
To replicate:
kohadev-koha@e1f3025cca60:/kohadevbox/koha/misc/translator$ perl translate update es-ES
koha-tmpl/intranet-tmpl/prog/js/checkouts.js:569: warning: unterminated string
koha-tmpl/intranet-tmpl/prog/js/checkouts.js:858: warning: unterminated string
koha-tmpl/intranet-tmpl/prog/js/checkouts.js:904: warning: unterminated string
koha-tmpl/intranet-tmpl/prog/js/checkouts.js:911: warning: unterminated string
koha-tmpl/intranet-tmpl/prog/js/checkouts.js:1095: warning: RegExp literal terminated too early
/usr/bin/msgmerge: error while opening "/kohadevbox/koha/misc/translator/po/es-ES-messages-js.po" for reading: No such file or directory
(last error 'No such file or directory' is not related to this).
Test plan:
Make sure nothing is broken on the claims table
Confirm that the errors do not longer appear on `perl translate update LANG`
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>
903 let title = `<a
class="return-claim-title strong"
href="/cgi-bin/koha/circ/request-rcticle.pl?biblionumber=[%
rc.checkout.item.biblionumber | html %]">
At first it seems like a typo:
request-rcticle.pl vs request-acticle.pl
But actually it does not make sense to link to request-article, we want
(I think) to link to the bibliographic record detail page.
Test plan:
- Have something in the claim table (cf bug 14697)
- Click on the title of the bibliographic record
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>
The JS conditions were wrong, we want to allow copy and move between
control fields.
Test plan:
Create a new MARC modification template action using control fields.
Confirm that you are allowed to copy/move a control field to another one
Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>
Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch makes corrections to cataloging.js so that there are no
issues flagged by eslint. The fewer eslint warnings we have to see makes
it more likely that real problems will be noticed.
Some functions were unused have been removed.
To test, apply the patch and clear your browser cache if necessary.
- Open a MARC record for editing in the basic cataloging editor.
- Test the JavaScript-driven functionality affected by the changed
file:
- Open the authority browser from a field (e.g. 100a) which is
linked to an authority type.
- Clone a repeatable tag.
- Clone a repeatable subfield
- "Unclone" a tag or subfield: This should remove the tag or
subfield (if possible) or clear the contents of the tag or
subfield if not.
- Clone a subfield on the item edit page (In my MARC21 installation
I had to modify the default framework in order to have a
repeatable item subfield to test with).
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>
This fix permits to add an "Important" option to the marc structure pages.
Testing:
1) Apply the patch
2) Run updatedatabase.pl
3) Regenerate CSS
4) Define 100 as an "important" field ( Administration » MARC bibliographic framework » MARC structure ( Default Frameword) » Edit )
5) Define 100$a as an "important" subfield (Administration » MARC bibliographic framework » MARC structure (Default Frameword) » Subfield » Onglet a)
6) Edit a record to clear the field 100 (subfields are all blank)
7) Save the record.
8) Validate the following message:
A few important fields are not filled:
* tag 100 subfield a Nom de personne in tab
* Field 100 is important, at least one of its subfields should be filled.
Are you sure you want to save?
Sponsored by the CCSR ( http://www.ccsr.qc.ca )
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch modifes the process of searching for an existing record
to add to a basket. Now the search is performed as a keyword search in
the regular catalog rather than via a custom search script. Options are
added to the search results and detail pages to add results to an order.
This process follows the same pattern as the "Search to hold" feature:
When the search is initiated, a cookie is set with the requisite
information--in this case vendor id and basket number.
If the search results or bibliographic detail pages detect that a
"searchToOrder" cookie is present, the correct "Add order" link will be
shown. Like with the "search to hold" feature, the cookie expires in 10
minutes.
To test, apply the patch and log into the staff client as a user who has
permission to add to a basket in acquisitions.
- Go to Acquisitions -> Vendor -> Basket -> Add to basket.
- Using the "From an existing record" option, perform a search.
- On the search results page, test the "Add order" link which appears
with each result. Clicking the link should take you to the "New
order" page for the correct vendor and basket. The catalog
details section of the form should include the correct information.
- From the search results page view the bibliographic details page for
any record. There should be a new toolbar button, "Add order." Verify
that it works correctly.
- Test the same thing from all bibliographic detail pages: Normal,
MARC, Labeled MARC, ISBD, as well as the items page
(moredetail.pl).
- Test this process for both the locations in acquisitions where one
can add to an existing basket: Vendor search results and the basket
detail page
- Test the cookie timeout: Wait 10 minutes and perform another catalog
search. The "Add order" link should no longer be present.
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>
Prior to this we arbitrarily set a colspan of 100 for the rowgroup
header row. If we remove the td wrapper from the render function then
datatables will automatically wrap the output in an appropraite td with
cell with fullwidth colspan correctly set.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>