To old plugin prevents the upgrade to the latest jquery. By replacing
with openjs' shortcut.js, we have now one less hurdle in upgrading
Koha to latest.
Changes:
- removed jquery.hotkeys.min.js
- added shortcut.js
- modified the related includes (doc-head-close.inc and help-top.inc)
- modified the calls in staff-global.js
Regression test:
1) apply the patch
2) in the intranet, test the shortcuts alt-q, alt-r, alt-u.
These are the only affected functionalities. There is no new functionality.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script. Tested existing
shortcuts for the search bar tabs on various circulation
related pages.
This uses a Javascript under BSD license, I wonder if it
should be listed in the About>licenses section that we
are using it. As Yui is also BSD I assume the license is
compatible.
+/**
+ * http://www.openjs.com/scripts/events/keyboard_shortcuts/
+ * Version : 2.01.B
+ * By Binny V A
+ * License : BSD
+ */
Chris Cormack [Mon, 2 Dec 2013 23:01:23 +0000 (12:01 +1300)]
Bug 11322: rscrub bad data before storing suggestions in the DB
1/ In the public interface, add a suggestion containing html
2/ Save, notice the html is rendered (or if you have the other patches
is displayed)
3/ Apply this paget
4/ Add another suggestion
5/ Notice the html is stripped
Signed-off-by: David Cook <dcook@prosentient.com.au>
Works as described.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 48b339980e20bdefb21141d537c283d15e267d93) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Chris Cormack [Mon, 2 Dec 2013 22:46:24 +0000 (11:46 +1300)]
Bug 11322: fix XSS bug in purchase suggestions - OPAC
1/ Add a suggestion in the opac, with lots of html
2/ View that suggestion in the OPAC, note the html is rendering
3/ Apply the patch
4/ Test again, in prog and bootstrap, no more rendered html
Signed-off-by: David Cook <dcook@prosentient.com.au>
Works as described.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 90f3b84def924dcc76719c01d75aa09241c92f8e) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Chris Cormack [Mon, 2 Dec 2013 22:34:48 +0000 (11:34 +1300)]
Bug 11322: fix XSS bug in purchase suggestions pages
To test
1/ Switch on purchase suggestions
2/ On the public interface (OPAC) add a suggestion, put html in every
field
3/ In the staff interface go to the suggestions page
/cgi-bin/koha/suggestion/suggestion.pl
4/ Notice the html is rendered
5/ Click on a suggestion, notice the html is rendered on the show page
also
6/ Apply the patch, check these two pages again, html should now be
escaped
Signed-off-by: David Cook <dcook@prosentient.com.au>
Works as described.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests, thx Chris!
Mathieu Saby [Fri, 18 Oct 2013 09:44:39 +0000 (11:44 +0200)]
Bug 7791: (follow-up) add warning after deletion if some records were not deleted
This followup add some warnings after deletion if some items were not
deleted.
4 types of messages are possible :
- x item(s) attached.
- x subscription(s) attached.
- x order(s) attached.
- Unknown error.
To test :
test a
1. create a basket with
- an order using a record A which has already an item, which is used in
a subscription, and in other order (in an other basket)
- an order using a record B used nowhere elese
2. click on "Delete basket"
3. choose button "Delete basket, orders and records"
4. you should see a page anouncing basket deletion, and that record A was
not deleted because of its item, subscription and order.
5. check the link around the title of record B takes you to the record
6. check the link under the warning box ("Click here to go back to
booksellers page") takes you to booksellers page
5. check record B is deleted
test b
1. suppress the subscription linked with record A
2. create an other basket using record A
3. delete the basket on the same way as for test a
4. you should see a page anouncing basket deletion, and that record A was
not deleted because of its item and order
test c
1. suppress the item attached under record A
2. create an other basket using record A
3. delete the basket on the same way as for test a
4. you should see a page anouncing basket deletion, and that record A
was not deleted because of its orderBug 7791 Followup: add warning
after deletion if some records were not deleted
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit de2bfb6799f718a75eb338490b1cee8f8145b6a8) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Bug 7791: (follow-up) tidy up some cruft in the main patch
This patch
- delete warns
- add a missing }
- add a condition in template of avoiding asking to delete orders or
records if the basket is empty
To test :
1. Make the same tests as defined in test plan of main patch. It should
behave the same way
2. Try to delete a basket with no records inside. You will only have a
"Delete basket" button, with fewer warnings
Signed-off-by: Cedric Vita <cedric.vita@dracenie.com> Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 2c307f3e92d6e4051a37f19bb17f60f45fded9d9) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Bug 7791: add ability to delete records when deleting a basket
Currently, when a basket is deleted, all the orders are deleted (there
is a foreign key in aqorders table on basketno).
This could be dangerous, and there is no warning.
After the deletion, unused biblios are left in the catalogue.
This patch
- adds a more detailed message describing the consequences of deletion
- give the choice of also deleting biblio records if possible
To test :
Test A :
1. create a basket with 4 orders:
- an order from a new record A
- an order from a record B which has already an item
- an order from a record C used in a subscription
- an order from a record D used in an other order
2. note the biblionumbers of the records used (or open them in other
tabs in your browser)
3. click on "Delete basket"
4. choose button "Delete basket and orders"
5. check the catalogue : records A,B,C,D should still be there
Test B:
1. create a basket with 4 orders:
- an order from a new record A
- an order from a record B which has already an item
- an order from a record C used in a subscription
- an order from a record D used in an other order
2. note the biblionumbers of the records used (or open them in other
tabs in your browser)
3. click on "Delete basket"
4. choose button "Delete basket, orders and records"
5. check the catalogue : records B,C,D should still be there. Record A
should be deleted
Signed-off-by: Cedric Vita <cedric.vita@dracenie.com> Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 09953f836de01a68a3117227965719b74f543844) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Owen Leonard [Wed, 21 Aug 2013 14:53:20 +0000 (10:53 -0400)]
Bug 2693: add ability to filter by reviewer name on tag review page
If you want to filter results on the tags management page by the
reviewer you have to know their borrowernumber. It would be better to be
able to search by name, but in the meantime this patch adds an
autocomplete widget to the form field so that you can do a name search
and populate the field with the borrowernumber.
To test you must have approved or rejected tags. From the tags review
page (tags/review.pl), view all, approved, or rejected tags. Type a name
in the "reviewer" form field in the left sidebar filter. You should get
an autocomplete dropdown with names matching your search. When you
select one the form field should be populated by the borrowernumber.
Signed-off-by: David Cook <dcook@prosentient.com.au>
Patch works as described. I'm not sure whether or not it would be better
to be able to search by name, as that would involve either choosing
between names after applying the filter or showing any possible matches,
so this seems fine.
--
Owen and I did observe that we were able to cause AJAX errors while
using this autocomplete, but we are not 100% sure how we caused the error.
In my case, I was able to occasionally cause it by typing in a name
then backspacing rapidly. The ajaxError method is attached to every
element in the DOM (yikes) so it's tough to say what exactly is the
source of the error (which is signalled by a pop-up window that can be
cancelled).
The error is quite rare so I don't think it's necessarily a problem
for us.
One idea that Owen had was to remove the current error message, which
is very unhelpful and replace it with an error like "Something went
wrong. Try again."
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit d536ed92fa6488a37a5e6325acb2b9b12f89ddaf) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Fridolyn SOMERS [Tue, 12 Nov 2013 16:19:09 +0000 (17:19 +0100)]
Bug 11059: (follow-up) restore time in staged dates in addorderiso2709.tt
Follow-up patch to restore the display of time in
acqui/addorderiso2709.tt in staged date.
Simply uses an option of KohaDates TT plugin.
This time may be useful if there where several imports in the same day.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit cfa0dc1aedf3a280f98b9a1728853a6041f59af5) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Lyon3 Team [Tue, 12 Nov 2013 19:32:34 +0000 (15:32 -0400)]
Bug 11059: fix date sorting of import batches in basket add form
This patch improves the sorting of staged import batches by date,
particularly when the dateformat system preference is set to anything
other than YYYY-MM-DD.
Adds title-string sorting type to enable this.
To test:
[1] Ensure that there are at least three staged
bib import batches, with upload timestamps such that
date sorting errors would be apparent.
[2] Set the dateformat system preference to either DD/MM/YYYY
or MM/DD/YYYY.
[3] Create a new basket in acquisitions, then chose to add
a new order line from a staged record batch.
[4] In the list of batches, click on the 'staged' column
heading to sort by date.
[5] Observe that dates are sorted in alphanumeric order, not date
order.
[6] Apply the patch and refresh. This time, dates should sort
correctly.
Signed-off-by: Fridolyn SOMERS <fridolyn.somers@biblibre.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 097a92b3188d62e9797d18313715c35d9dc186b4) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Mark Tompsett [Wed, 13 Nov 2013 20:55:24 +0000 (15:55 -0500)]
Bug 11242: fix opac-MARCdetail.pl display and warnings
This patch improves the public catalog MARC view display
of records that contain subfields that are not defined in
the framework used by the bib record.
To test:
(RM note: it may be easier to find or create a MARC record that
contains a subfield not present in the default framework, then
load it, rather than fiddle with the MARC frameworks in your
test database.)
BACK UP YOUR DATABASE!
1) Search for an item in OPAC
2) Open OPAC detail
3) Click 'MARC View' link
4) Look for something with multiple lines (e.g. 260 or 942)
5) In another tab, Go to staff client and log in
6) Go to the staff client URL similar to:
/cgi-bin/koha/catalogue/detail.pl?biblionumber=##### page
where ##### is the biblionumber.
7) Edit -> record
8) Note the framework used.
9) More -> Administration
10) MARC bibliographic frameworks
11) Click 'MARC structure' for the framework used by the item
shown in OPAC.
12) Find the tag (e.g. 260 or 942) and click 'Subfields'
13) Delete of the matching subfields (e.g. 260$b) shown in the
OPAC tab
14) Clear your opac error log.
15) Refresh OPAC tab. The tag subfields are split.
16) There are opac-MARCdetail.pl warnings.
17) Apply patch
18) Clear your opac error log.
19) Refresh OPAC tab. The tag subfields are no longer split strangely.
20) There are no opac-MARCdetail.pl warnings.
RESTORE YOUR DATABASE.
This also silences a series of warnings triggered by catching
undef hash references.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 38503e18a38116646c9746b13f013b3c11fe55c1) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Srdjan [Fri, 1 Nov 2013 08:05:09 +0000 (21:05 +1300)]
Bug 11183: get rid of some log noise from the OPAC
To test in OPAC:
* With the OPAC System Preference EnableOpacSearchHistory set
to Keep, a simple search triggers the warning patched on
line 626 of opac-search.pl
* Selecting a search result item with no Collection Code
set triggers the warning patched on line 576 of opac-detail.pl
* Have an item with Collection Code. Check that the Collection
Code shows.
* Collection Code is set by editing an item in the staff client
(952$8)
Signed-off-by: Mark Tompsett <mtompset@hotmail.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit ec206d18980b2438cfe3da9e89455eda319dd8d7) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Bug 7484: keep selected values when changing search type on authority search form
1) I'm on the "Search authorities" tab. I select an authority type,
then change the active tab. The type change is lost.
2) I'm on a tab and type a search pattern, then change tab, the string
is lost.
This behaviour is logical, given the fact that we're using tabs, but it
would be more practical to keep the typed informations when the user
changes the search mode.
This patch add a few JQuery code to synchronise inputs between all
tabbed authorities search forms.
Test plan :
- Go to Authorities home page : cgi-bin/koha/authorities/authorities-home.pl
- In toolbar, "Search main heading" is selected
- Change all inputs : authotity type, operator, term, and sort order
- Click on "Search all headings" tab
=> Inputs are the same has previous tab
- Click on "Keyword search" tab
=> Inputs are the same has previous tab
Signed-off-by: Paola Rossi <paola.rossi@cineca.it> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Amended patch: Explicitly declare 2 new variables used.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Works as described, Firebug doesn't show any problems with
the Javascript.
Could be useful for other tabbed searches like the start page
as well.
Fridolyn SOMERS [Thu, 7 Nov 2013 09:22:49 +0000 (10:22 +0100)]
Bug 11214: improve create/edit routing list links in serial collection page
When a subscription has no routing list yet, the page
serials/subscription-detail.pl shows in left menu : "Create routing list".
In serials/serials-collection.pl page, the link in table is always
"Edit routing list", even when there is no routing list.
This patch adds a conditionnal link "Edit routing list"/"Create routing
list" into serials/serials-collection.pl page.
Test plan :
- Create a subscription no. 1 without routing list and a subscription
no. 2 with a routing list
- Go to serials/serials-collection.pl of subscription no. 1
=> You see "Create routing list" link
- Click on link
=> You see "Create routing list for"
- Go to serials/serials-collection.pl of subscription no. 2
=> You see "Edit routing list" link
- Click on link
=> You see "Edit routing list for ..."
Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Functional and automated tests pass. Passes koha-qa.pl.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
With the patch applied the serial collection page shows the
right link depending on the existance of a routing list.
Jonathan Druart [Fri, 22 Nov 2013 09:42:42 +0000 (10:42 +0100)]
Bug 11286: fix bug preventing adding a new subfield to an authority framework
Bug 10602 introduces a bug when adding a new subfield to an authority
framework. A new parameter is added in a sql query but the placeholder
is missing.
Test plan:
- edit an authority framework
- add a new subfield
- save
- boom!
DBD::mysql::st execute failed: called with 16 bind variables when 15 are
needed at
/home/home/src/admin/auth_subfields_structure.pl line 454.
- apply the patch and try again
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Work as described. No koha-qa errors
Tested trying to add subfield to 100, 2 for example.
Without patch silently fails (but error is logged)
With patch subfield creation or elimination is fine
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
One line fix for a bad bug. Confirmed the bug on master and
the fix. Passes all tests and QA script.
Jonathan Druart [Wed, 30 Oct 2013 14:48:10 +0000 (15:48 +0100)]
Bug 11171: Display basket group name on the supplier list page
Test plan:
Search supplier and verify the basket group column is filled.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Works as described.
Fridolyn SOMERS [Wed, 20 Nov 2013 13:34:36 +0000 (14:34 +0100)]
Bug 11275: make deleteditems.materials be of type text
Bug 7278 has made items.materials of type text.
It must be the same in deleteditems column.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Tested:
- definition of materials now matches between items and deleteditems
- database update works correctly
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
The only difference between tables items and deleteditems is
deleteditems.marc
Amended patch: Add a missing SetVersion in updatedb.pl
Bug 11304: fix display of detail page holdings tab in translated Bootstrap theme
Detail page tabs are not displayed properly because JavaScript is broken
in French. This is due to _(' JS string construction used in place of
_(".
This patch fixes:
- opac-detail.tt page
- xt/single_quotes to test bootstrap theme
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Tested by applying the patch, running translate update, then translate
install. Saw no JavaScript error on the French detail page.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Switches from single to double quotes for translatatable strings.
Unit tests for xt/single_quotes passes now.
Kyle M Hall [Fri, 22 Nov 2013 13:54:10 +0000 (08:54 -0500)]
Bug 11283: make restriction type translatable
The new restrictions system has different types:
MANUAL, OVERDUES and SUSPENSION.
Those are shown in the interface and seem to come directly from the
database, so they are not translatable.
As they are hardcoded translations should be possible and be handled in
the template.
Test Plan:
1) Create a patron with one of each type of restriction
2) Apply this patch
3) Note you see the type with only the first letter capitialized,
this indicates you are seeing the translatable string
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script. Strings now appear in
updated po files:
msgid "%s %s Manual %s Overdues %s Suspension %s "
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 3a76f4298c0fb298cca0db31b04c0d8d5c028531) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Chris Cormack [Tue, 26 Nov 2013 17:17:28 +0000 (06:17 +1300)]
Bug 11308: fix RSS page in bootstrap theme
To test:
1/ Do a search in the opac, click on the rss feed icon
2/ Notice the page renders, not like an rss feed should
3/ Apply the patch and refresh
4/ Page should now be (more) valid xml
Signed-off-by: Mark Tompsett <mtompset@hotmail.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Small change, big difference. With the patch the content of
the RSS feed renders like it does for the prog theme.
Test plan:
1. Set the System Preference for CircAutoPrintQuickSlip to "clear the
screen".
Enter a borrower barcode for checkout
Press Enter
The screen should be cleared.
2. Set the System Preference for CircCircAutoPrintQuickSlip to "open a
quick slip window"
Enter a borrower barcode for checkout
Press Enter
A Quick slip is printed.
3. Apply the patch
Update the database using UpdateDatabase.pl
4. Set the System Preference for CircAutoPrintQuickSlip to "clear the
screen".
Enter a borrower barcode for checkout
Press Enter
The screen should be cleared.
5. Set the System Preference for CircCircAutoPrintQuickSlip to "open a
quick slip window"
Enter a borrower barcode for checkout
Press Enter
A Quick slip is printed.
6. Set the System Preference for CircCircAutoPrintQuickSlip to "open a
slip window"
Enter a borrower barcode for checkout
Press Enter
A Slip is printed.
7. Reload the database using sysprefs.sql
Set the System Preference for CircAutoPrintQuickSlip to "clear the
screen".
Enter a borrower barcode for checkout
Press Enter
The screen should be cleared.
8. Set the System Preference for CircCircAutoPrintQuickSlip to "open a
quick slip window"
Enter a borrower barcode for checkout
Press Enter
A Quick slip is printed.
9. Set the System Preference for CircCircAutoPrintQuickSlip to "open a
slip window"
Enter a borrower barcode for checkout
Press Enter
A Slip is printed.
10. Verify that the Checkout Help includes information about printing Slips.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 2131c78618bb8851bc37bc99f20fa1aaa02c3124) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Conflicts:
installer/data/mysql/updatedatabase.pl
Galen Charlton [Sun, 24 Nov 2013 18:20:56 +0000 (18:20 +0000)]
Bug 6435: (follow-up) make -daemon really imply -a and -b
This patch follows up on the previous patch by moving the
check for whether authority and/or biblio indexing have been
specified so that -daemon has a chance to set those modes.
Doug Kingston [Sun, 17 Nov 2013 21:09:02 +0000 (13:09 -0800)]
Bug 6435: (follow-up) rebuild_zebra -daemon option now smarter
Based on feedback, make daemon mode imply -z -a -b and abort
on startup if flags incompatible with an incremental update daemon
are used. Update documentation to match.
Doug Kingston [Mon, 28 Oct 2013 00:18:17 +0000 (17:18 -0700)]
Bug 6435: Add daemon mode to rebuild_zebra.pl
This change adds code to check the zebraqueue table with a cheap SQL query
and a daemon loop that checks for new entries and processes them incrementally
before sleeping for a controllable number of seconds. The default is 5 seconds
which provides a near realtime search index update. This is desirable particularly
for libraries that are doing active catalogue updating. The query is adjusted
based on whether -a, -b, or -a -b are specified.
Help text updated. Tested against a live 3.12 system.
Note that this fix will benefit from the fix to lack of locking (bug 11078)
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 1b0992e8d5a2bc8f0f74623daa9a7eac4786644a) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Sophie Meynieux [Wed, 23 Oct 2013 16:00:29 +0000 (18:00 +0200)]
Bug 11125: Correct display for patron messaging preferences on OPAC
To test :
1) Remove 'sms' from message_transport_types table
2) Go on OPAC "My messaging" tab => table columns are out of alignment with table heading
3) Apply patch => table is correctly displaid
Signed-off-by: Koha team AMU <koha.aixmarseille@gmail.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 7021d36d0e58fe2acd0ae4ee7c9e658df2cc74be) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Zeno Tajoli [Fri, 8 Nov 2013 17:10:08 +0000 (17:10 +0000)]
Bug 11222: fix crash that can occur in search for items to add to label batch
This patch fixes a regression on label-item-search.pl introduced by
the patch for bug 9239 where searching for items to add to a label
batch fails with an error if QueryParser is not enabled and you use
the "Added on or before date" search option.
Test plan:
0) Set "UseQueryParser" to "do not try"
1) Start with an installation with bibliografic data and items
information.
2) Check that in items there are values inside Accession Date
Without the patch:
a) Go in Home› Tools› Labels and click on 'New batch'
b) Click on 'Add Item(s)'
c) Try to select items with option "Added on or before date"
d) You will receive an error
With the patch:
Try steps a),b), and c)
Now you don't receive an error and you can select items
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Added a description of the problem and copied the test plan from the bug
report, with the addition of the information that QueryParser must be
off to confirm and test.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 69c42067ced1da3821e8a893c76c2f1f1195f946) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Fridolyn SOMERS [Mon, 28 Oct 2013 12:46:06 +0000 (13:46 +0100)]
Bug 11146: Show a go back link on no permission page
When a user does not have permissions for a page or module, the
authentication page is displayed with message
"Error: You do not have permission to access this page.".
Most librarians uses the "previous page" button of their browser to
come back on the page they were before trying to get to the
non-permitted page.
This patch adds a button to help coming back to previous page.
It also changes the "Click to log out" link as a button.
Test plan :
- Define a user with staff permissions but no permission on tools module
- Login with this user
=> You get to intranet home page
- Edit URL to go to tools module : cgi-bin/koha/tools/tools-home.pl
=> You get a page with a red error message and 2 buttons "Previous page"
and "Log out"
- Click on "Previous page"
=> Go get to intranet home page
- Edit URL to go to tools module : cgi-bin/koha/tools/tools-home.pl
- Click on "Log out" button
=> You are logged-out and get to authentication page : cgi-bin/koha/mainpage.pl?logout.x=1
Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Works as intended.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit d1bec841428de08402628e21b75f7fc6c6e0c361) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Jonathan Druart [Thu, 28 Mar 2013 10:40:52 +0000 (11:40 +0100)]
Bug 11238: contruct links to the appropriate manual version dynamically
This patch uses the version number of the Koha database to
dynamically generate links from help to the appropriate version
of the manual.
Test plan (for 3.15 branch):
- Open a help page
- Verify the manual link is correct (point to 3.14 manual)
- change the version in mysql:
update systempreferences set value="3.1600000" where variable="version";
- Verify the manual link now points to the future 3.16 manual.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Work as described. No koha-qa errors
Tested on top of Bug 10671
On master (BD version 3.13.xxx) help links point to 3.12 manual
Changing version to 3.14/15 points to 3.14 manual
Changing version to 3.16 points to the future :)
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
(cherry picked from commit 572c586793548988279ce908e951146d356f0322) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Bug 9209 removes the only occurrence to Koha::Calendar::_mock_init
The routine can be removed.
Test plan:
prove t/Calendar.t
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
I left that routine because I planned to do a follow-up for that so the
Calendar patch series was pushed soon. Nice catch Jonathan, works as expected.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Passes koha-qa.pl, t and xt
Colin Campbell [Fri, 4 Oct 2013 10:01:27 +0000 (11:01 +0100)]
Bug 10996: Allow numeric subfields to be stripped on export
Regex assumed all numeric characters were part of the tag number
This is obviously false as $9 would be a likely candidate
to be removed on export.
The code can be any printing ascii character other than space
according to LoC's website.
Also changed regexp to no longer allow a zero length tag number
which is nonsensical.
The old regex would accept shorter than 3 digit tags but these were
not stripped so I've removed that option, considering it a bug
not a feature
NB assumption that the code makes that a tag is always numeric is
incorrect but works in practice. Handling non-numeric tags is
a 'To be done'
Made code dependent on the regex succeeding. Picking up results
from a previous regex on failure can lead to weird hard to
identify bugs
In the course of testing Paola Rossi <paola.rossi@cineca.it>
spotted that the delete operation was flawed, only removing
the first occurence of the specified tag/tag subfield. Reworked
the delete loop to operate on all occurences
Fridolyn SOMERS [Wed, 13 Nov 2013 15:29:40 +0000 (16:29 +0100)]
Bug 11245: fix typo in modborrowers.tt javascript string
In modborrowers.tt, Bug 8986 made the javascript strings translatable:
_("This attribute will be only applied to the patron\'s category")
In this case, the backslash is useless.
Test plan :
- Create a borrower attribute with a "Category" defined
- Go to Tools / Batch patrons modification
- Enter a cardnumber and submit
- Next to "Attribute", select the borrower attribute you created
=> You see a grey text at the right : This attribute will be only
applied to the patron's category "XXX"
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 2a4fa0a80307bf61a82a180220504c633000db7f) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Fridolyn SOMERS [Fri, 30 Aug 2013 13:19:25 +0000 (15:19 +0200)]
Bug 10809: use branches template plugin in serials search
In serials-search.pl, branch name was computed using branch code and
then passed to template.
This patch uses the new template plugin now for this:
Koha::Template::Plugin::Branches.
Test plan :
- Go to serials search
- Perform a search that returns at least an open an a closed subscription having a branch defined
=> The branch name is displayed in "Library" column
Signed-off-by: Pierre Angot <tredok.pierre@gmail.com> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 7ca790997ed6adebb7edafc04b6f1aa136ce7cc2) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Jonathan Druart [Wed, 6 Nov 2013 11:33:59 +0000 (12:33 +0100)]
Bug 11207: fix issue where SMS number couldn't be cleared when editing patron
Test plan:
1/ edit a patron
2/ set a sms alert number
3/ save
4/ edit the patron
5/ set the sms alert number to a blank value
6/ save
7/ the sms number is now an empty string
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Test plan used:
- Activate the SMS functionality by giving a 'fake'
SMSSendDriver of TEST
- Activate EnhancedMessagingPreferences
- Create a new patron, set Other phone to 'test'
- Notice that Other phone was copied to sms number
- Edit messaging preference section using the edit link
below on the details tab and delete SMS number
- Verify it's not possible to unset the SMS number
- Apply patch
- Repeat deleting - this time it works
Chris Cormack [Tue, 26 Nov 2013 16:37:07 +0000 (05:37 +1300)]
Bug 11307: Fix potential XSS attack in public catalog RSS feed
To test:
1/ Craft a url like
/cgi-bin/koha/opac-search.pl?q=a&count=50"'<h1>test</h1>&sort_by=acqdate_dsc&format=rss2
2/ look at the source, notice
<opensearch:itemsPerPage>50"'<h1>test</h1></opensearch:itemsPerPage>
3/ apply the patch, and reload url
4/ source now contains
<opensearch:itemsPerPage>50"'<h1>test</h1></opensearch:itemsPerPage>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 11269: fix incorrect use of MARC::Field->subfield()
MARC::Record 2.0.6+ enables the warnings pragma, and as a
consequence, started logging cases where a routine in
C4::Search was calling MARC::Field->subfield() with an undef
subfield label. This patch removes the log noise.
To test:
- Run prove -v t/db_dependent/Search.t
- There will be warnings about
"Use of uninitialized value $code_wanted in string" in MARC::Field.
- Apply the patch.
- Those warnings are gone.
Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Tests now pass
Galen Charlton [Tue, 29 Jan 2013 17:42:12 +0000 (09:42 -0800)]
bug 8854: fix some invoice search filters
Fix the supplier, shipment date, and library filters
on the invoice search. An invoice's library is
(in parallel with order search) defined as the library
of the staff member that approved the basket. Before this
patch, the code was referring to an aqorders.branchcode
column that doesn't exist.
This patch also improves the author, title, ISBN/EAN/ISSN,
publisher, and publication year filters to no longer require
exact matches; substring matches now suffice.
Finally, this patch considers biblio.copyrightdate in addition
to biblioitems.publicationyear for publication date searches, as
the MARC21 frameworks use the former column but not the latter.
This patch also fixes the current test cases for invoices
so that they pass and adds regression tests.
Test plan:
[1] Create two invoices for different vendors.
[2] Do an invoice search and filter on shipment
date. Verify that the expected invoice(s)
are returned.
[3] Do an invoice search and filter on branch
(of the staff member that approved the basket).
Verify that the expected invoice(s) are returned.
[4] Do an invoice search and filter on supplier.
Verify that the expected invoice(s) are returned.
[5] Do invoice searches on author, title, ISBN/EAN/ISSN,
publisher, and publication year and verify that the
results are as expected.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com>
Patch passes all tests, test plan and QA script.
(Adding from Katrin notes early) I agree with
Possible improvements:
- Document the behaviour of the library search as there are
lots of branches all over acquisitions with different meaning.
- Add the shipment date to the results list table
- Change label ISBN/EAN/ISSN to not include EAN for MARC21
installations
Jonathan Druart [Tue, 12 Nov 2013 14:07:54 +0000 (15:07 +0100)]
Bug 11221: ensure that SQLHelper uses NULL rather than 0000-00-00 as default date value
The default values for date fields is undef, so if a date field contains
an empty string, we should insert NULL in the DB, not 0000-00-00.
The format_date_in_iso routine should be only called if a date is
defined, is not equal to an empty string and does not match the iso
regex.
This patch fixes a bug where editing or creating a patron record
without setting the birth date results in 0000-00-00 rather than null
being set as the dateofbirth value.
Partial test plan:
1. Create a new patron. Leave dateofbirth empty.
2. Save the record.
3. Open the record for editing.
4. Save the record without making changes.
5. Koha gives no error.
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Now when no date is given NULL is saved to the database.
Tested:
- Adding a patron without date of birth
- Editing the patron, entering a date of birth
- Editing the patron, deleting date of birth
All worked as expected.
Bug 11163: display correct itemtype usage count when deleting an itemtype
Wrong usage of UNION instead of UNION ALL prevented the count to match
the expected value.
Steps to reproduce:
- Create an itemtype.
- Create some biblios setting the created itemtype at biblio level.
- Create some items setting the created itemtype on them.
- Try to delete the itemtype in Home > Administration > Item types, the
count is 1 and doesn't match the expected result.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Nicole C. Engard [Thu, 24 Oct 2013 03:32:48 +0000 (23:32 -0400)]
Bug 10671: Update Circ Help Files
This patch updates the existing help files and
adds the missing offline circ help file.
To test:
* Visit all circ pages and check the manual links
* Visit the new offline circulation page and confirm text
and link are there (link will work after 10/25)
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10670: ensure koha-start-zebra sets problem permissions for logs
If koha-common is started when Zebra log files are owned by root
it will fail to start without any useful message (since Zebra can't
write errors in log files because it lacks permissions to do so).
This patch creates empty log files and ensure they have correct
permissions.
I can't pin-point why log files gets owned root, but I suspect it
has something to do with Zebra crashing and logrotate, but this is
just theory. We have seen this behaviour since koha 3.1 every
few months, and every time it happends we have root owned logs and
crashed Zebra so this patch will at least help sites which have
some kind of automatic koha-common start if it's not running.
Signed-off-by: Robin Sheat <robin@catalyst.net.nz> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Chris Cormack [Tue, 12 Nov 2013 22:05:32 +0000 (11:05 +1300)]
Bug 11240: ensure that date of restriction is saved when using patron edit screen
To test:
1/ Edit a patron
2/ Add a restriction with a date (in any format other than iso)
3/ Note the date is not saved
4/ Apply patch
5/ Add restriction again, note it is saved
The problem is output_pref was being called with the wrong parameters
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Note: The issue in on the memberentry form only (not the restriction
form on the check out page).
Jonathan Druart [Mon, 26 Aug 2013 15:37:14 +0000 (17:37 +0200)]
Bug 10684: (follow-up) adjust how undecodable records are logged
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Thu, 14 Nov 2013 16:50:37 +0000 (16:50 +0000)]
Bug 10684: add regression test
This patch adds a regression test for Koha's ability
to gracefully handle records that Zebra will index but
which MARC::Record won't parse. In particular, MARC::File::USMARC
croaks on records that contain non-alphanumeric characters in the
tag name.
To test:
[1] After applying this test, run prove -v t/db_dependent/Search.t
The test script will die when it gets to the regression test.
[2] After applying the main patches that fix the bug, the test
script should pass.
Galen Charlton [Thu, 24 Oct 2013 20:42:38 +0000 (20:42 +0000)]
Bug 11137: fix certain types of searches run using QueryParser
QueryParser was loading redundant search aliases, which in turn resulted
in certain queries involving two or more clauses joined by a Boolean
operator getting parsed in correctly.
To test:
[1] Enable QueryParser.
[2] Arrange your database so that some some bib records contain
the keyword 'history' while a smaller subset contain
both 'history' and 'earth'. (The exact words used don't
matter.)
[3] Run the following search from the OPAC global search bar:
kw:history && kw:earth
[4] Observe that the records that are returned include *all* bibs
in the database with the keyword 'history'. In other words, the
restriction that the records must also contain 'earth' is not
observed.
[5] Apply the patch and rerun the search.
[6] This time, the results that are returned should include only those
that contain both 'history' and 'earth'.
[7] Verify that prove -v t/QueryParser.t passes.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes test plans, all tests and QA script.
Also checked the db_dependent/Search.t tests.
Tried some other searches, all seems to be working correctly.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
I reproduce the bug and I confirm this patch fixes it.
Without the patch, kw:history && kw:earth, I got:
Search biblios OK 4 1 1+0 RPN @attrset Bib-1 @attr 4=6 @attr 1=1016 history
With the path, I get:
Search biblios OK 2 1 1+0 RPN @attrset Bib-1 @and @attr 4=6 @attr 1=1016 history @attr 4=6 @attr 1=1016 earth
Galen Charlton [Thu, 24 Oct 2013 20:25:55 +0000 (20:25 +0000)]
Bug 11137: regression tests for QP search field alias bug
This patch adds regression tests to verify that
Boolean searches using QueryParser function correctly.
This patch also ensures that QP is correctly initalized
when Search.t is run.
To test:
[1] Apply this patch and the following patch.
[2] Verify that prove -v t/QueryParser.t works
[3] Verify that prove -v t/db_dependent/Search.t works
[4] (optional) instead of applying both patches at the same
time, apply only the regression test patch and run the
tests listed in steps 2 and 3. The following tests
should fail:
Editing partron data results in unintended adding of indefinite manual
restriction to it. Reason for it is hidden field add_debarment which
is wrongly initialized to 1 instead of 0. Also JavaScript code seems
to want to toggle checkbox, and since this field is hidden correct
approach would be to change its value to 1.
Test scenario:
1. edit patron data
2. verify that debarrment is wrongly added
3. remove debarrment
3. apply this patch
4. edit patron again
5. verify that debarrment wasn't added
6. intentionally add debarrment and verify that it's saved
7. add debarment, enter something in comment but press cancel
and verify that debarment isn't added
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
This fixes this blocker, however, with or without the patch, the date
is not saved correctly. I will file a new bug for that
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jonathan Druart [Tue, 5 Nov 2013 17:07:56 +0000 (18:07 +0100)]
Bug 11205: fix DataTables filter issue when more than one table is on a page
This patch fixes a bug where if there are more than one table on the
same page that uses the DataTables column filter, applying a filter on
one table applied it to both.
Test plan:
1/ Go on serials/serials-search.pl?searched=1
2/ Filter on a column (e.g., title) on the open subscriptions
table.
3/ Switch to the closed subscriptions table. Observe that
that the table is *also* filtered by the criteria
set for the open subscriptions table.
4/ Apply the patch and reload the page.
5/ This time, applying a filter on one time should not affect
the other table.
Fridolyn SOMERS [Tue, 29 Oct 2013 13:17:45 +0000 (14:17 +0100)]
Bug 11159: fix small typo in catalogue/results.tt
In catalogue/results.tt, there is a small HTML error line 377 :
[% ELSE %]<option value"au,phr">Author</option>[% END %]
The = is missing
Test plan :
- In intranet, test go to advanced search
- Click on [More options]
- Enter a term, check "Scan indexes" and click on "Search"
- Look at HTML code of select "Indexed in"
=> option "Author" is correct : <option value="au,phr">Author</option>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Katrin Fischer [Thu, 7 Nov 2013 23:31:09 +0000 (00:31 +0100)]
Bug 11218: fix Item Due notices not being generated
To test:
- Check out at least 3 items, due dates should be today, sometime in
the past and one day after tomorrow.
- Edit the message options - activate DUE and PREDUE notices with
days in advance = 2
- Run the advance_notices.pl script with -v -c
Result: Only a PREDUE notice is generated
- Run the advance_notices.pl script with -v -c -m 2
Result: Only the PREDUE message is generated correctly.
- Run t/db_dependent/Circulation.t
- without first patch: all tests pass.
- with first patch: some tests will fail.
- Apply patch.
- Rerun script, now PREDUE and DUE notices should be
generated.
- Run t/db_dependent/Circulation.t again, all tests should pass.
Add more items with different due dates, rerun and check results.
Run t/Circulation.t to confirm all tests pass.
- Apply the patch
Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Passes functional tests and automated tests.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Katrin Fischer [Thu, 7 Nov 2013 23:26:45 +0000 (00:26 +0100)]
Bug 11218: regression tests for Due notice generation
Changes tests for GetUpcomingDueIssues:
days_in_advance should be inclusive:
2 should find items due in 2 days from now.
1 should find items due tomorrow.
0 should only find items due today.
Adds new tests for Bug 11218:
As the advance_notices.pl, the only script using GetUpcomingDueIssues
is not only used for PREDUE notices, but also for
DUE notices, we need to also select items due today.
Signed-off-by: Liz Rea <liz@catalyst.net.nz> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jonathan Druart [Thu, 24 Oct 2013 15:06:08 +0000 (17:06 +0200)]
Bug 11132: don't clear the results list upon adding a biblio to a list
A "busc" param is cleared if the template name is not opac-.*detail.tt.
So if a user adds a biblio to a list, he cannot continue to browse
results.
Test plan:
- launch a search at the OPAC (opac-search.pl).
- click on a result and browse results (using previous/next links).
- a title attract your attention and you add it to a list
("Save to yours lists" link on the right).
- save the list.
- browse again results.
Signed-off-by: Joy Nelson <joy@bywatersolutions.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested according to test plan, also checked some other pages and actions
accessible from the detail page.
Passes all tests and QA script.
Mathieu Saby [Thu, 10 Oct 2013 11:34:37 +0000 (13:34 +0200)]
Bug 11033: Make Save button and Cancel link always visible on basketgroup page
This patch suppresses the first CSS declaration in basketgroup.tt. It was
unneeded, and was the cause of the Save button and Cancel link not
being visible if the bar for changing language was activated.
To test :
1. activate the "language" syspref, with at least 2 languages
2. open a basketgroup : the 'Save' button and 'Cancel' link are now visible
at the bottom of basketgroup page
3. Check you can use the basketgroup as before : put a basket in it, cancel, save etc.
Signed-off-by: Koha Team Amu <koha.aixmarseille@gmail.com> Signed-off-by: Paul Poulain <paul.poulain@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Sophie Meynieux [Tue, 13 Aug 2013 16:14:21 +0000 (18:14 +0200)]
Bug 10720: fix issue that prevented use of HTML tags in overdue notices
Substitution term in overdue notices shouldn't be removed if they don't match.
It prevents use of HTML in notices to use with CSS.
Test plan :
- define an overdue notice containing some valid substitution terms + some valid html tags (<strong> or <div class="my class" to use with a css
- find a borrower with overdues that trigger this notice
- run overdue_notices.pl -html <directory>
Without patch, your html tags are missing in your html file
With the patch, they are present and can be used with a css to generate a formatted pdf file.
If you add some invalid substitution term, with the patch, they are still in the final letter, but the warn in the log helps you to correct your notice template.
Signed-off-by: Srdjan <srdjan@catalyst.net.nz> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>