Fridolyn SOMERS [Tue, 8 Oct 2013 07:34:42 +0000 (09:34 +0200)]
Bug 11009: Do not display circulation history of anonymous patron
When using an anonymous patron to anonymise issues history, this patron
may have a huge number of old issues. In this case, trying to display
the reading history of this patron will perform a huge SQL query.
It is not useful to have the reading history of this anonymous patron.
This patch adds an alert instead of old issues when displaying reading
records of anonymous patron.
Test plan :
- Set syspref AnonymousPatron to 0.
- Select a borrower with old issues. For example 123.
- Look at its reading records page : members/readingrec.pl
=> Old issues are displayed in a datatable
- Set syspref AnonymousPatron with this borrower number. For example 123.
- Look at its reading records page
=> Old issues are not displayed and an alert is displayed
- Using SQL query, remove old issues of this borrower :
DELETE FROM old_issues WHERE borrowernumber=123.
- Look at its reading records page
=> A message is displayed
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
This works as advertised and seems like a reasonable thing to do. I
suspect that someone will object... Perhaps that person will implement a
solution which uses an AJAX DataTable.
Galen Charlton [Tue, 10 Dec 2013 18:21:09 +0000 (18:21 +0000)]
Bug 11112: (follow-up) add FIXME
The caching introduced by the main patch is not ideal
as it won't work correctly if a persistance engine is used.
However, I have good reason to expect that bug 8089 will
be worked on (because I'm going to do it) so that Koha::Cache
can be used for this prior to the release of 3.16.
This patch ensures that the package-level cache is updated
when add_holiday() is used. Note that except for the test
case added by this patch, there doesn't seem to be anything
that actually calls ->add_holiday(); it may be better to remove it.
Jonathan Druart [Wed, 16 Oct 2013 13:36:30 +0000 (15:36 +0200)]
Bug 11112: Koha::Calendar needs some caching
Each time a Koha::Calendar object is created, its constructor retrieves
all holidays from the database and create a DateTime::Set object with
all holidays.
[RM note: I've observed that the time it takes DateTime::Set to be
initialized with a set of dates increases faster than linearly with
the number of dates. I think this, more than just retrieving a bunch
of holidays from the database, is what is most expensive.]
In one of our customer's DB, there are 11085 special_holidays and 598
repeatable_holidays. When a loan is returned, there are 3 calls to
Koha::Calendar->new.
This patch adds caching of the holiday list via package-level variables
as well as lazy fetching of the holidays. (RM note: this means that if
a persistance engine is in use, updates to the holiday list will not
be reflected during checkout. I'm allowing this breakage for now on
the plan that bug 8089 will be fixed soon and we can switch to using
Koha::Cache).
Nytprof benchmarks (on a 3.8.x branch):
In DateTime::Set->from_datetimes:
3 times (5.49ms+4.90s) by Koha::Calendar::_init at line 80 of Koha/Calendar.pm, avg 1.63s/call
on a total of 7.67s (of 10.2s), executing 6353333 statements and 3031273 subroutine calls in 147 source files and 36 string evals.
for the circulation/return.pl page.
Comparing the access_log:
Without the patch:
checkout: time=2759838
checkin: time=1832751
Without the patch and with overdues:
checkout: time=1086727 + time=1144706
checkin: time=3928854 (x2)
With the patch and overdues:
checkout: time=1077839 + time=1060886
checkin: time=2420898
Test plan:
- checkout an item with a return date < today
- checkin the item and verify the suspension period is well calculated
(depending on the holidays).
- prove t/db_dependent/Holidays.t
- t/Calendar.t
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit a98b239dbfbf0d0e9c6f6593c3457c18c79584a9) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Colin Campbell [Thu, 10 Oct 2013 17:06:14 +0000 (18:06 +0100)]
Bug 11032: Check a valid MARC::Record passed to Biblio
Intermittently problems in the calling environment
cause a C4::Biblio routine to be called with an undefined
MARC::Record object. This results in the process
dying and returning to the end user a low level
message such as 'cannot call method x on an undefined
object'.
For exported subroutines taking a MARC::Record object,
check that object is defined otherwise return a logical
return value and log a stack trace to the error log.
A couple of cases were checking but dying, this may have
unwelcome results in a persistent environment so croak has
been downgraded to carp
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Adds lots of checks for $record in various places, should
not affect behaviour.
Passed all tests and QA script, including new unit tests.
Tested adding and saving a new record.
Also tested detail and result pages without XSLT.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 2e0e15485ecae556b77037443af1077291fe3673) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Jonathan Druart [Thu, 14 Nov 2013 10:31:23 +0000 (11:31 +0100)]
Bug 10605: fix encoding issue on basket email (INTRANET)
Same fix for the staff interface.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Both patches tested with English and German, diacritics
now appear correctly if UTF-8 is selected as encoding.
Passes all tests and QA script.
Jonathan Druart [Thu, 14 Nov 2013 11:17:38 +0000 (12:17 +0100)]
Bug 10605: fix encoding issue in basket email (OPAC)
There is an encoding issue on the received mail.
Here, we have to keep the encode_qp in order not to break links (= is a
special char for email https://en.wikipedia.org/wiki/MIME#Encoded-Word).
Fridolyn SOMERS [Fri, 30 Aug 2013 09:41:26 +0000 (11:41 +0200)]
Bug 10808: (follow-up) reformat auth_finder.pl
Perltidy and some format changes.
Most important : call to get_template_and_user must be at begining
of script because it checks authentification.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Testing notes:
- Tested various searches, selections now remain after
submitting the search form.
Regression testing:
- Clearing the authority from the record still works.
- Creating a new authority from the plugin page
still works.
- Autocomplete of entries still works.
Fridolyn SOMERS [Fri, 30 Aug 2013 08:54:00 +0000 (10:54 +0200)]
Bug 10808: make authority search form retain drop-down selections
When cataloging a field defined with a thesaurus, an authority search
popup is displayed with a search from. Once operators, values and sort
selected in this form the search can be performed. The bug is that the
values entered are kept but not the selected operators and sort.
The same bug was existing in authorities module, solved by Bug 8692.
This patch corrects the bug.
Also uses in 'sort by' options the same text as search in authorities
module : Heading A-Z (default), Heading Z-A, None.
Also removes duplicated code in auth_finder.pl :
value_mainstr => $query->param('value_mainstr') || "", ...
Test plan :
- Create a new biblio with a framework containing a field linked to a
thesaurus. For example : 600
- Click on small icon of main entry. For example : 600$a
=> You get a search form with all operators to "contains" and sort by
"Heading A-Z"
- Enter a value in each text box and perform search
=> You get a search form with values in text boxes and all operators
to "contains"
- Select "starts with" in all operator comboboxes and perform search
=> You get a search form with all operators to "starts with"
- Select "is exactly" in all operator comboboxes and perform search
=> You get a search form with all operators to "is exactly"
- Select "Heading Z-A" in sort by and perform search
=> You get a search form with "Heading Z-A" in sort by
- Select "None" in sort by and perform search
=> You get a search form with "None" in sort by
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Comment: With both patches applied no koha-qa errors
Test
1) Original behavior is whatever selection you do before patch,
search form returns to default options
2) After patch, selection remains
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
All tests and QA script pass, further comments on second patch.
Owen Leonard [Thu, 15 Aug 2013 14:06:29 +0000 (10:06 -0400)]
Bug 10661: format mandatory item fields the same on all forms
Mandatory item fields are not indicated the same way in all places. This
patch corrects two places where required fields were shown in bold
rather than using the standard "required" class: When adding an order
from a staged file and when adding an item for a new issue of a serial.
This patch also normalizes the text input size on item entry forms: In
some places it was 50, others 67. I have changed the latter to 50.
Unrelated changes: Added $KohaDates formatting of date and time and
corrected capitalization on a heading on the add order from staged file
page.
It would be nice to be able to use the same method for displaying the
item form as we use on neworderentry.tt -- pulling in the form from a
separate include. However that system is designed for handling multiple
items and would need to be adapted for these cases.
To test, you must have a staged file from which to add an order. Open an
existing basket or create a new one and choose to add an order "From a
staged file." Choose a staged file from which to order. The item entry
form under the "Import all" heading should show required fields in red.
To test in serials: Begin the process for receiving an item from an
existing subscription. On the serials-edit page, find the "Click to add
item" links and click to open the item edit forms. There should be one
under the numbered issue and the supplemental issue forms. In both cases
the item edit screen should show the mandatory item fields in red.
Confirm that the cataloging add item form looks correct and works
correctly.
Revision: Left out the "required" note which should appear after each
required field.
Jonathan Druart [Wed, 13 Nov 2013 10:33:05 +0000 (11:33 +0100)]
Bug 8683: ensure clear button clears all item fields on order form
The clear js function parses input text, but input filled to a plugin
does not contain the type attribute.
Test plan:
- fill the barcode field to the barcode plugin
- go on the new order page
- verify the barcode plugin works as before
- verify the clear link clears the barcode field and all others fields.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as expected, passes all tests and QA script.
Template change only.
Barcode and date acquired are now also cleared with the
'clear' link.
But: it only works when you enter a barcode manually currently,
because the AutoBarcode functionality is broken on master (bug 11273).
If you select an index in the search dropdown and then enter in a QP
query starting with the field, Koha will prepend the index you do not
want to use at the beginning of the search, resulting in a search that
probably does not match what you were hoping for.
To test:
1) Select an index in the search dropdown in the OPAC. Author is fine.
2) Enter a search term using manually entered indexes. For example:
ti:cat in the hat
3) Note that the search fails.
4) Apply patch.
5) Repeat steps 1 and 2.
6) Note that the search succeeds.
7) Sign off.
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 03f342aa67034a56876b9b45545c607b961587b7) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Srdjan [Fri, 23 Aug 2013 07:59:17 +0000 (19:59 +1200)]
bug_10781: Remove C4::ILSDI::Utility
This patch removes C4::ILSDI::Utility on the basis
that one of its routines (BorrowerExists) was not used
and that the other routine can be (and is) moved to
C4/ILSDI/Services.pm.
Test:
This should be a noop. Regression testing required:
/cgi-bin/koha/ilsdi.pl functioanality, in particuler:
GetAvailability - ?service=Describe&verb=GetAvailability
AuthenticatePatron - ?service=Describe&verb=AuthenticatePatron
ILS-DI syspref must be turned on
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 7675ede590936b7f32c665c3d597a9f34122f8ae) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Jonathan Druart [Tue, 12 Nov 2013 14:31:56 +0000 (15:31 +0100)]
Bug 11225: remove \n from some strings to be translated
Some strings in the serials module contain linebreaks \n that cause
problems in translation.
Test plan:
- Update your po file
- Verify that strings in serials/subscription-add.tt and
serials/subscription-numberpatterns.tt are present and don't contain
"\n" character.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Template only change, passes all tests and QA script.
Updated po files now contain only the strings and no line breaks.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
No regressions found. Passes koha-qa.pl and xt.
Galen Charlton [Tue, 3 Dec 2013 17:06:48 +0000 (17:06 +0000)]
Bug 11333: use jQuery validator plugin for CSV profiles forms
This patch adds the use of the jQuery validator plugin for
the two forms (new and edit) on the CSV profiles page. Doing
this standardizes messages that gets displayed on validation
errors.
This patch, in the process, fixes a bug where if a page has
more than one validated form, only the first such form would
get the validator plugin applied to it -- it looks like $.validate()
does not do implicit iteration.
To test:
[1] Apply the patch, then go to Tools | CSV profiles.
[2] Create a new profile, but leave the name and the MARC/SQL
fields blank. When you click the submit button, the form
should not be submitted; instead, text will be displayed
to the right of each input that lacks required input.
[3] As above, but change the profile type and verify that the form
is not submitted unless all of the required fields are filled in.
[4] Edit an existing form, then empty the MARC/SQL field. Try
submitting the form; it should refuse to submit the form
and display text saying that the field is required.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Fixed some tabs, works nicely and as described.
Jonathan Druart [Tue, 19 Nov 2013 10:27:52 +0000 (11:27 +0100)]
Bug 11265: ensure current locale is selected when editing a subscription
Test plan:
0/ you have to have some locales defined, run dpkg-reconfigure locales
to configure locales
1/ edit a subscription (or add a new one) and select a locale
2/ save
3/ edit again and verify the locale value is selected
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Work as described. No koha-qa errors.
Tested creating a suscription, selecting locale (have many) and saving.
When editing suscription:
1) Without patch locale value is not showed on page, empty value
2) With patch correct value is displayed
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script. Template change only.
Works as expected - saved locale is now shown on editing the
subscription and will not be deleted upon saving.
Jonathan Druart [Wed, 23 Oct 2013 10:40:30 +0000 (12:40 +0200)]
Bug 2546: make description of standard fine types translatable
The descriptions for fines are stored in English in the DB
(accountlines.description). So they are not translatable.
This patch removes the descriptions automatically added and generates
the string in the template.
Test plan:
1/ Execute the updatedatabase entry.
2/ Verify in the following pages the description is consistent:
- members/pay.pl?borrowernumber=XXXX
- members/boraccount.pl?borrowernumber=XXXX
- opac-account.pl
3/ Launch the translate script and update the po files in order to
translate the new strings.
4/ Verify the strings are translated in the interface.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Works as advertised. Corrected few typos in the commit message.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 8aa0e6856dbd61bb61b1a2a0c88ec03adf65e3c7) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Owen Leonard [Sun, 20 Oct 2013 15:12:29 +0000 (08:12 -0700)]
Bug 2310: display tooltips explaining why patron menu items are disabled
With some staff client menus options are displayed as disabled when the
logged in user doesn't have permission to perform that function. This
patch adds Bootstrap tooltips to patron menu items with text explaining
why they are disabled.
To test, log in as a user who lacks permission to modify patrons or set
permissions. Open a patron record in circulation or patrons. Hovering
over renew, delete, and set permissions links (in the patron toolbar
"More" menu) should trigger a tooltip with a brief explanation.
Test the "Update child to adult patron" link by viewing an adult patron.
A separate patch will address catalog menu items.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
New tooltip texts are translatable, patch passes all tests
and QA script.
Tested according to test plan in Chromium and Firefox.
Fridolyn SOMERS [Mon, 21 Oct 2013 09:54:16 +0000 (11:54 +0200)]
Bug 11091: revamp search limit options for new subscription bib search form
When creating a new subscription, you can click on "Search for Bilbio"
to search into catalog.
A popup opens with a text field for search terms and a combo-box to
limit search. This combo-box uses the syspref AdvancedSearchTypes to
know what list of values display.
The bug is that the code acts as if AdvancedSearchTypes has always one
value, but since Bug 7031, this syspref can have several values
(item types, collection codes and locations).
This patch removes the use of AdvancedSearchTypes syspref and defines
search form with 2 limits: item types and collection codes (from
authorised values CCODE).
One or both of this information can be on biblio. [RM note: this isn't a
true statement for the default configuration used by MARC21 libraries.]
Searching by location seems to be useless because this information is always
on item. If CCODE authorised value does not exist or is empty, the collection
code filter is not displayed.
Test plan :
- Check CCODE authorised value exists with some values
- Choose a biblio indexed with both itemtype and ccode indexes
- Go to Serials module and click on "New subscription"
- In form, click on "Search for Biblio"
=> The popup "serials/subscription-bib-search.pl" appears with two limits
- Enter a word of biblio title, select its item type and select its collection code
- Click on "Search"
=> You get the biblio
Signed-off-by: David Noe <drnoe@bywatersolutions.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
While I am not sure how useful the collection code is for most libraries, where this
is an item level value, this fixes a broken feature and works as described.
Passes all tests and QA script.
Jonathan Druart [Tue, 22 Oct 2013 12:05:48 +0000 (14:05 +0200)]
Bug 11111: display the basket group name on the parcel page
Test plan:
Go on acqui/parcel.pl?invoiceid=XX page and verify the basket group name
is displayed into the 2nd column of the pending orders and already
received tables.
Signed-off-by: Ed Veal <ed.veal@bywatersolutions.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Changed basketgroup to basket group to match spelling on other
pages.
Works as described, passes tests and QA script.
Srdjan [Fri, 1 Nov 2013 08:42:45 +0000 (21:42 +1300)]
Bug 11077: Correct more warnings in C4/Auth.pm
This gets rid of some more warnings.
It also corrects a noisy ne condition.
$userid = $retuserid if ( $retuserid ne '');
became
$userid = $retuserid if ( $retuserid );
It also integrates Srdjan Jankovic's patch with Petter Goksoyrsen's
patch, while correcting the problems found.
This includes:
my $q_userid = $query->param('userid') // '';
along with:
my $s_userid = '';
and:
my $s_userid = $session->param('id') // '';
Indentation does not reflect actual scoping.
A missing system preference would have triggered a ubiquitous
undef compare check failure message. This makes the flooding
message more useful, so as to help correct it.
The change to accomplish this was:
my $pki_field = C4::Context->preference('AllowPKIAuth');
if (!defined($pki_field)) {
print STDERR "Error: Missing AllowPKIAuth System Preference!\n";
$pki_field = 'None';
}
Signed-off-by: Srdjan <srdjan@catalyst.net.nz> Signed-off-by: Mark Tompsett <mtompset@hotmail.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit a0b00e4c8bd75a0557e487520fff5e2e39e10803) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Bug 11077: remove uninitialized value $pki_field warning
During login at the Staff interface you get warnings in the logs
regarding an uninitialized value for the $pki_field variable.
To test:
- tail -f /path/to/your-intranet-logs
- Point your browser to your staff login page
- Login
- Three warnings are showed
- Apply the patch
- Log out
- Log in
- No new warnings, and you can still log in.
Sponsored-by: Universidad Nacional de Cordoba Signed-off-by: Petter Goksoyr Asen <boutrosboutrosboutros@gmail.com>
Followed test plan; it works as advertised.
Also works when I deleted AllowPKIAuth system pref.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit ce5ab3b31457793815a2f49bc8287fdcbd0dd3c5) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Chris Cormack [Wed, 4 Dec 2013 21:09:20 +0000 (10:09 +1300)]
Bug 11341: fix XSS bug in opac-search.pl (facets)
This patch fixes the prog theme; the bootstrap theme already
does the necessary filtering.
To test
1/ Craft a url like
cgi-bin/koha/opac-search.pl?idx=kw&q=fish&offset=20" onmouseover%3dprompt(994000) bad%3d"
(the search must return enough results to have a show more link in the facets)
2/ Check the source, or mouseover the Show more links in the facets
Notice the code is executable
3/ Apply patch - notice it is no longer executable
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com> Signed-off-by: Brendan Gallagher <brendan@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit d2d365ca830345b9a519158f6d735d2abd125380) Signed-off-by: Fridolin SOMERS <fridolin.somers@biblibre.com>
Some fields are required on editing/adding CSV profiles. This
patch adds HTML5 validation so that required fields must be
filled in before the form is submitted.
Test plan:
- add a new CSV profile (tools/csv-profiles.pl) without any value.
- save => error on empty fields.
- fill the "marc" content, select type="sql", fill the CSV name input.
- save => error on sql content field.
- fill the sql content
- save => the CSV profile is saved.
- retry for the edit form.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Comment: On top of both patches for Bug 10853
Works very well, now we get an alert with empty field
Saves correctly MARC and SQL profiles
Solved minor conflict introduced by tab followup on Bug 10853
Again small tab errors corrected in followup
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as described, looks a bit 'non standard' for Koha,
but improves usability of the form.
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
Frédéric Demians [Tue, 26 Nov 2013 10:26:54 +0000 (11:26 +0100)]
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>