Mark Tompsett [Thu, 15 May 2014 03:38:12 +0000 (23:38 -0400)]
Bug 7841: add unit tests to detect no functional changes to getTranslatedLanguages()
When called with undef, floody messages appear in the error
logs. Less floody messages appear when using 'en' as the
language. This patch adds tests to verify that the behavior of
getTranslatedLanguages() doesn't change when a subsequent
patch updates it to not generate the warnings.
TEST PLAN
---------
1) apply the patch
2) prove -v t/db_dependent/Languages.t
-- All the tests should pass, including the last two which
a) check that when undef is used no language is marked
as current.
b) check that when 'en' is used there is a language marked
as current.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Test pass, no koha-qa errors
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Mon, 19 May 2014 16:14:28 +0000 (16:14 +0000)]
Bug 12271: (follow-up) teach valid-templates.t how to include specified templates
Two of the template includes in the Bootstrap theme cannot be tested
all by themselves because they require that the template that includes
them define BLOCKs. This patch ensures that they are excluded
from individual testing; they will get exercised sufficiently by being
including by all of the other Bootstrap templates.
Fridolin Somers [Fri, 16 May 2014 09:25:19 +0000 (11:25 +0200)]
Bug 12271: add Bootstrap templates to valid-templates.t tests
valid-templates.t actually tests the templates and includes of only
the "prog" theme at opac and intranet. It does not test the opac
templates and includes of bootstrap theme, nor ccsr. This is critical
since this test is used for patch integrations in release maintenance.
This patch adds the test of bootstrap opac theme.
I did not manage to add the ccsr theme since it is not a real theme,
meaning it has no templates and not all includes.
Test by runnning perl xt/author/valid-templates.t and looking at the
logs.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Now there are 902 lines, bootstrap tested (1 error detected!)
No koha-qa errors
Kyle M Hall [Tue, 13 May 2014 11:20:39 +0000 (07:20 -0400)]
Bug 12243: ensure that records with invalid ISBNs do not cause searches to fail
Some types of invalid ISBNs, when run through C4::Koha::NormalizeISBN
can produce ISBN objects that contain invalid ISBNs. This can be
reproduced with an ISBN that has an invalid prefix, group code or
publisher code. An example ISBN would be "0788893777 (2 DVD 45th ed)".
When attempting to look up a record with such an ISBN, you will get an
error along the lines of: Can't call method "as_string" on an undefined
value
Instead of checking for the BAD_ISBN state, we should be checking for
the GOOD_ISBN state via the method is_valid.
Test Plan:
1) Edit a record, add the following ISBN to your record: 0788893777 (2 DVD 45th ed)
2) When Koha redirects to the record, you should see the error message
described
3) Apply this patch
4) Reload the page, you should now see your record
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Mon, 19 May 2014 15:37:34 +0000 (15:37 +0000)]
Bug 12243: add regression test
This patch adds a regression test for C4::Koha::NormalizeISBN
throwing an exception when trying to parse an invalid ISBN.
To test:
[1] Run prove -v t/Koha.t. The last test should fail.
[2] Apply the main patch for this bug.
[3] Run prove -v t/Koha.t again. This time, the test
should pass.
Koha SAB CINECA [Wed, 14 May 2014 10:39:42 +0000 (12:39 +0200)]
Bug 12240 - update of Italian SQL files (non-MARC setup)
To test:
- Apply this patch.
- Reset your DB (DROP DATABASE, CREATE DATABASE -- whatever method you
prefer)
- Install it-IT templates on command line
- Run the webinstaller using it-IT
- Follow the steps and choose all under 'necessari'
=> SUCCESS: no errors
=> Extra: see the italian installation and control the translation
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Tested doing it-IT install, all files selected, all load ok.
No koha-qa errors
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Ran the Italian web installer, no errors.
Checked some of the changed data, like the translated notices,
in the interface. No problems found.
Koha SAB CINECA [Wed, 14 May 2014 15:57:50 +0000 (17:57 +0200)]
Bug 11241: update the Italian MARC21 setup for 3.16
To test:
- Apply this patch.
- Reset your DB (DROP DATABASE, CREATE DATABASE -- whatever method you
prefer)
- Install it-IT templates on command line
- Run the webinstaller using it-IT
- Follow the steps and choose all under 'opzionali'
=> SUCCESS: no errors
=> Sign this
=> Extra: see the cataloguing frameworks and check if you like the
translation
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
All files load ok, no errors.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Web installer loads all files without errors.
Verified 3 bibliographic frameworks and 5 authority types
appear to be translated correctly.
Bug 12251: fix error in sample_notices.sql (es-ES)
On bug 10845 some lines from sample_notices.sql were ommited when
adding the trailing parameter. This produces some errors when
installing using 'es-ES' sample data; and, in some conditions I
couldn't reproduce right now, occasional C4/NewsChannel.pm errors
due to mandatory message transport data incompletely loaded.
To reproduce:
- Make sure your setup has the es-ES translations installed and
up-to-date (translation should raise lots of warnings)
- With a cleaned (DROP DATABASE ... ; CREATE DATABASE ...;) run the
webinstaller
- Choose es-ES for the webinstaller.
- Follow the steps and choose all the sample data.
=> Errors related to sample_notices.sql and
sample_notices_message_transports.sql show.
To fix:
- Apply this patch.
- Reset your DB (DROP DATABASE, CREATE DATABASE -- whatever method you prefer)
- Run the webinstaller using es-ES
- Follow the steps and choose all sample data.
Sponsored-by: Universidad Nacional de Cordoba Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Magnus Enger [Thu, 15 May 2014 06:38:47 +0000 (08:38 +0200)]
Bug 12209 - Fix currency symbol for NOK
Dunno why, but the currency symbol for NOK was given as "$", when
it should be "kr".
To test:
- Empty the "currency" table in the DB:
DELETE FROM currency;
- Load in the file changed by this patch:
sudo koha-mysql <instance> < installer/data/mysql/nb-NO/2-Valgfritt/parameters.sql
(if you are testing on a (gitified) package install)
- Check that "kr" is displayed on /cgi-bin/koha/admin/currency.pl
- Add a budget and a fund, and check that "kr" is displayed in the list
of funds (currency symbols seem to be missing from the list of budgets)
Robin Sheat [Mon, 12 May 2014 23:12:53 +0000 (11:12 +1200)]
Bug 12234 - dependency changes to allow master to build
A run of update-control, adding bash-completion as a build-time
dependency, allowing update-control to ignore anything that doesn't
have a package but isn't marked as "required" by Koha, added
dependencies that we don't use but is needed by something we do use.
All fairly mundane.
Galen Charlton [Wed, 7 May 2014 17:43:25 +0000 (17:43 +0000)]
Bug 12206: fix HTML in other holdings list in staff search results page
To test:
[1] View, in the staff interface, a record with alternate holdings
(as controlled by the AlternateHoldingsField system preference).
[2] Verify that the HTML list is closed correctly.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> 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>
Owen Leonard [Thu, 24 Apr 2014 19:21:59 +0000 (15:21 -0400)]
Bug 9724: ensure hourly loans show time due in SCO
Due dates in the self checkout module don't display the time items are
due, and thus items which are on hourly loans don't display an accurate
due date and time. This patch corrects this by adding the "as_due_date
=> 1" parameter added by Bug 9723.
To test, apply the patch for Bug 9723 if necessary. Enable an hourly
loan period for an itemtype in your collection. Log into the
self-checkout system and check out an item which circulates by the hour.
The due date and time should be displayed correctly.
Check out an item which does not circulate hourly. The due date should
be displayed as a date only.
Test in both prog and Bootstrap themes.
Followed test plan. Works as expected. Signed-off-by: Marc Véron <veron@veron.ch> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 12065: use encode_qp consistently when sending basket/shelf
QP-encode both mail header and mail body when sending baskets or
shelves. There is no need to Encode qp-encoded strings.
Note that this does not solve all possible encoding problems in the mail
sent. This is related to decoding CGI parameters and use of TT. That
problem is addressed in bug 11944.
Test plan:
Verify if sending a basket from opac and staff still works.
Check if sending a shelf (list) from opac and staff still functions as
expected.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Cart/List sent form opac/staff works
No koha-qa errors
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Pasi Kallinen [Thu, 8 May 2014 07:11:29 +0000 (10:11 +0300)]
Bug 12214: display SQL errors in reports to users
When a user runs a report containing an SQL error, no
error is shown to the user. This patch fixes this.
To test:
1) Run a report with known good SQL.
2) No error is shown.
3) Run a report with bad SQL (eg. a typo in field name)
4) No error is shown.
5) Apply patch
6) Repeat 1-4. For the bad SQL report, the database error
should be shown.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Thu, 8 May 2014 16:09:07 +0000 (16:09 +0000)]
Bug 12214: add regression test for reporting error when running report with SQL error
To test:
[1] Run prove -v t/db_dependent/Reports_Guided.t. Last test should
fail.
[2] Apply the main patch.
[3] Run step 1 again. This time, all tests should pass.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Thu, 8 May 2014 15:13:15 +0000 (15:13 +0000)]
Bug 11975: (follow-up) simplify construction of params for GetBorrowersToExpunge()
This patch consolidates the code for constructing the parameters for
GetBorrowersToExpunge() into a subroutine. As a side-effect, this
fixes a regression introduced by the main patch where no patrons would
be deleted when filtering by expiration date.
To test:
[1] Follow the test plan in the main patch.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jonathan Druart [Thu, 20 Mar 2014 15:41:29 +0000 (16:41 +0100)]
Bug 11975: improve the batch patron deletion code
This patch tries to improve the code for the cleanborrowers.pl tool.
- use KohaDates plugin and Koha::DateUtils for date management,
removing a dependency on C4::Dates
- replace variables step1, step2 and step3 with step
- add a JavaScript check if no action if checked
Test plan:
- Backup your DB
- Play with the Patron deletion/anonymisation tool and try to find
something inconsistent.
If you don't find something different, it works!
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Julian Maurice [Mon, 28 Apr 2014 09:50:04 +0000 (11:50 +0200)]
Bug 11843: prevent manual history from being overwritten if subscription switched to automatic history
Test plan:
1/ Create a new subscription, with manual history enabled
2/ Edit history by clicking on "Edit history" under Planning tab (add
some text)
3/ Receive some serials, see that received and missing issues are not
updated in Summary tab
4/ Edit subscription and disable manual history
5/ Receive some serials, see that received and missing issues are
updated, but your notes have been kept.
6/ Edit serials and change status from/to missing or not available.
Check that missing issues are updated correctly.
7/ Edit serials and change status from/to arrived. Check that received
issues are updated correctly.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Owen Leonard [Thu, 24 Apr 2014 16:41:29 +0000 (12:41 -0400)]
Bug 9723: display time due for hourly loans in the public catalog
Due dates in the OPAC don't display the time items are due, and thus
items which are on hourly loans don't display an accurate due date and
time. This patch corrects this by adding (and using) a new "as_due_date"
option to the KohaDates plugin made possible by Bug 11148.
Thanks to Galen for providing the changes to KohaDates.pm.
To test, enable an hourly loan period for an itemtype in your
collection. View the display of date due on the following pages:
- Patron details (opac-user.pl) - Log into the OPAC as a user who has
something checked out which circulates by the hour.
- Bibliographic details (opac-detail.pl) - View the details for an item
which is circulates by the hour and is checked out.
- Course reserves details (opac-course-details.pl) - View the contents
of a course reserve, one of which should be an item which circulates
by the hour and is checked out.
Due dates for hourly items should show both date and time and be
formatted correctly. Due dates for non-hourly loans should show only the
date. Test in both prog and Bootstrap themes.
Kyle M Hall [Tue, 6 May 2014 12:49:15 +0000 (08:49 -0400)]
Bug 4068: ensure accepting a suggestion does not hide the 'pending' tab
Prior to this patch:
1) Moving a suggestion from status 'pending' to 'accepted
- After saving only tab 'accepted' is shown.
2) Moving a suggestion back from 'accepted' to 'pending'
- After saving only tab 'pending' is shown.
Test Plan:
1) Verify the bug by taking the actions listed above
2) Apply this patch
3) Verify the bug no longer exists
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
It is not very elegant but I have nothing else to suggest.
All templates in the staff client now load the DataTables jquery plugin
through a single include file, datatables.inc, which points to a copy of
the plugin in intranet-tmpl/lib/jquery/plugins. This patch removes the
unused copy of the plugin found in intranet-tmpl/prog/en/lib/jquery/plugins.
To test, search the Koha source for references to
jquery.dataTables.min.js. There should be no files which point to the
redundant file.
Robin Sheat [Wed, 30 Apr 2014 03:33:44 +0000 (15:33 +1200)]
Bug 9048 - fix quote editor under Plack
The ajax responder for the quote editor was using the wrong error codes.
These have been fixed. Also, a small fixup to get rid of some annoying
warnings.
To test:
* Under plack,
* Add/edit/delete a quote.
* Make sure that things don't crash.
Kyle M Hall [Wed, 7 May 2014 16:04:48 +0000 (12:04 -0400)]
Bug 12212: fix error that prevented sysprefs.sql from loading
The line for inserting AggressiveMatchOnISBN didn't have the right
number of columns.
Test Plan:
1) Attempt to run the web installer OR try to import the sysprefs.sql
into your db
2) Apply this patch
3) Try again, no errors should be reported this time
Mathieu Saby [Fri, 20 Dec 2013 22:21:32 +0000 (23:21 +0100)]
Bug 11433: (code cleanup) remove unused 'attachbasket' op value in basket.pl
This patch cleans code in basket.pl
In basket.pl, some code is supposed to be executed if
$op eq 'attachbasket'. But it is never the case
(grep attachbasket * -r), so this condition can be removed.
No functional change expected.
Regression test only :
* Make a complete acquisition process, from the creation of a basket
to the closure of a basketgroup, and check everything is OK
* On a basket page, try to change the basketgroup it belongs to, and
check everything is OK
* On a basketgroup page, try to edit the content of a basketgroup (put
a new basket in it, change the deliverybranch...), and check everything
is OK
* On a basketgroup page, try to reopen a closed basketgroup, and close an
open basketgroup, and check everything is OK
Galen Charlton [Wed, 7 May 2014 01:00:34 +0000 (01:00 +0000)]
Bug 8375: (follow-up) final adjustment to t/Creators.t
This patch adjusts the test so that it can pass successfully
without a valid context (in which case C4::Creators::PDF defaults
to the built-in fonts) or with one (in which case it uses the
TrueType fonts).
Galen Charlton [Tue, 6 May 2014 18:52:12 +0000 (18:52 +0000)]
Bug 8375: (follow-up) adjust StrWidth to account for TTF fonts
This patch fixes an issue caught by the test case where StrWidth()
based its calculations on the internal Adobe font rather than a
TrueType font in use.
Robin Sheat [Wed, 30 Apr 2014 04:28:21 +0000 (16:28 +1200)]
Bug 12163 - fix adding new quotes
Something changed somewhere (maybe a new jQuery or datatables version)
and the javascript that redrew the table row after a new quote was saved
stopped working. This fixes the call to the datatables function so that
it matches the API.
Note that although the new quote didn't appear to be added, reloading
the page shows that it had been.
To test:
* Go and add a quote.
* Note that when you press enter after finishing the quote, the line
stops being an editor, and becomes just a display, like it should.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Serial receiving was broken when "create an item record when receiving
this serial" is used for the subscription. This bug was introduced by
the patch for bug 12138.
Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Kyle M Hall [Fri, 22 Nov 2013 14:15:31 +0000 (09:15 -0500)]
Bug 11287: make patron import tool take new restrictions system into account
The import patrons tool will add restrictions in the previous style (
directly to the borrowers table ). This will actually work, but
will result in the restriction being un-removable, and will be
overwritten by any new restrictions.
Test Plan:
1) Apply this patch
2) Import new patrons with debarrments, note the debarment is created
correctly
3) Import existing patrons with overwrite enabled, note that any new
debarrment is added, and any existing debarrment is ignored
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>
Martin Renvoize [Wed, 28 Aug 2013 15:00:37 +0000 (16:00 +0100)]
Bug 10798: make OPAC_SEARCH_LIMIT behaves better with search groups
Since the addition of search groups to Koha, the branch limiting
parameter in multiple PAC by URL support should also support
limiting by these search groups. This patch adds this ability.
This patch fixes two problems:
a) Bad PDF when using Helvetica font.
Current label code assigns 'italic' or 'oblique' variants
to title. Helvetica-Oblique was not defined, but is present
b) Bad alignment using center/right justification
Problem was bad font parameter passed to StrWidth
routine
To test:
1. Try making a batch using Helvetica, downloaded PDF do not open.
2. Try a batch of mixed scripts with layout alignment center or
right, only latin scripts align almost correctly.
3. Apply the patch and update your koha-conf.xml to add Oblique variant
4. Try again 1, now PDF opens
5. Try 2, now alignment is correct
New problem (for another bug): DejaVuSans has a good
support for arabic, but not Oblique variant. As selection
of italic/oblique is hardcoded, now Arabic titles are
not displayed. I'll try to add a checkbox to select
or not this feature.
Added a FIXME for the hardcoded forced oblique -chris_n
Signed-off-by: Chris Nighswonger <cnighswonger@foundations.edu> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Since built-in PDF fonts suport just Latin-1 encoding, we have
to switch to TrueType fonts to correctly encode all UTF-8 characters
(which we should be getting from database anyway).
This approach also nicely sidesteps our encoding cludges, but
requires paths to TrueType fonts which are included in koha-conf.xml
under new <ttf> section. Without this directive in kona-conf.xml
code will still use Latin-1 built-in pdf fonts.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Chris Nighswonger <cnighswonger@foundations.edu> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Marcel de Rooy [Wed, 26 Mar 2014 14:25:43 +0000 (15:25 +0100)]
Bug 9612: Zconn parameters and elementSetName in _new_Zconn
This patch makes a few adjustments in C4::Context::Zconn.
It does no longer pass the (ignored) auth, syntax parameters to _new_Zconn.
Note that auth was not completely ignored in theory, but we never pass
auth=1 [while not having user/password in koha-conf].
Furthermore, it removes the elementSetName for dom indexing. Using marcxml
here does not make a difference. It only adds a constraint on what is in
the dom-config files. (It could probably be removed there now..)
Two cosmetic code changes:
Removes unused label retry.
And moved 'servername' into the database name option.
Test plan:
When using Zebra with dom indexing, do a biblio and authority search.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Marcel de Rooy [Thu, 20 Mar 2014 12:24:11 +0000 (13:24 +0100)]
Bug 9612: fix SRU response for DOM indexing
This patch makes changes to koha-conf.xml by removing the fallback section
from biblioserver and authserver. The information is in a include file on
the same server (no need to fall back) and moreover, some information
is not up-to-date and should be moved elsewhere.
The patch also simplifies the DOM retrieval-info files for auth and bib.
And eliminates superfluous F and usmarc from the dom-config files. (I felt
the urge to remove marcxml too, but left it for now; see also the second
patch.) For reference, look at the marcxml example files of Zebra.
NOTE: This patch does not deal with the Debian package installs. In the
same way koha-conf-site.xml.in, and *-retrieval-info-* could be adjusted.
Test plan:
[1] Run at least a dev install in order to copy the new files to your
Zebra folders. Choose for DOM indexing.
Enable the SRU server on port 9998 (small edit in koha-conf.xml).
[2] Restart Zebra and reindex -a -b -x.
[3] Verify if a search from Koha still functions as expected.
Check the SRU output on port 9998. NOTE: If you do not pass recordSchema,
you should get back a marc response now (instead of index schema).
Bonus: Add your server as a Z3950 target to another Koha install. And
perform a Z3950 search from the other server to your new install.
Bonus: Check response from the auth and biblio socket via yaz-client.
[4] Reindex again with -a -b but without -x.
[5] Repeat Koha search, SRU response (Z3950, yaz-client).
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Mon, 5 May 2014 19:31:00 +0000 (19:31 +0000)]
Bug 10500: (follow-up) disable AggressiveMatchOnISBN if UseQueryParser is on
The original patch did not correctly construction ISBN phrase
searches when QP is on. Unfortunately, when attempting to fix that,
I discovered that there's a deep bug in QP that makes it generate
incorrect search queries when combining more than two atoms
in with the || operator. Consequently, until that can be fixed,
this patch ensures that if UseQueryParser is on, AggressiveMatchOnISBN
has no effect.
To state it anther way, AggressiveMatchOnISBN works only when QP
is not in use.
Kyle M Hall [Thu, 20 Jun 2013 14:45:44 +0000 (10:45 -0400)]
Bug 10500: Improve ISBN matching when importing records
Test Plan:
1) Catalog a record with the ISBN "0394502884 (Random House)"
2) Export the record, edit it so the ISBN is now
"0394502884 (UnRandomHouse)"
3) Using the record import tool, import this record with matching
on ISBN.
4) You should not find a match
5) Apply this patch
6) Run updatedatabase.pl
7) Enable the new system preference AggressiveMatchOnISBN
8) Repeat step 3
9) The tool should now find a match
Signed-off-by: Tom McMurdo <thomas.mcmurdo@state.vp.us> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Kyle M Hall [Wed, 19 Feb 2014 21:39:17 +0000 (16:39 -0500)]
Bug 5377: widen columns to better accommodate multiple ISBN and ISSN
Test Plan:
1) Apply this patch
2) Create a record with 5 ISBNs and 5 ISSNs
3) Create a new report from the following SQL, or execute it from the
mysql console:
SELECT isbn, issn FROM biblioitems ORDER BY biblionumber DESC LIMIT 1
4) Note that all your ISBNs and ISSNs are listed, separated by the pipe
character ( | )
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
This might be slow to run on big databases, because of the 2 index
rebuilds, however it changes no functionality just increases the field
size which is safe enough (we store multiple now already)
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Katrin Fischer [Tue, 11 Feb 2014 15:29:13 +0000 (16:29 +0100)]
Bug 11741: Correct display of < > in XSLT result lists
< and > are incorrectly transformed into HTML entities on the
XSLT result list when using the GRS-1 indexing mode.
Example:
Record: <TEST>
Result list: <TEST>
HTML source: &lt;TEST&gt
To test:
- catalog a record that contains > and <
- Reindex, without using the -x option
- Confirm the display is correct
- Reindex again, using the -x option
- Confirm the display is now broken
- Apply patch
- Reindex again with and without -x
- Verify that now the display is always correct
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
Note: the problem is only visible in GRS-1 setup. It works as expected.
No behaviour change in DOM.
I believe we shouldn't be (de)escaping data ad-hoc, but it seems that GRS-1
needs it because it doesn't handle HTML entities properly. This fix is OK for
GRS-1, unneeded for DOM and probably any other modern search engine.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Fridolyn SOMERS [Fri, 1 Feb 2013 16:52:11 +0000 (17:52 +0100)]
Bug 9532: fix reservability check when bib-level item types are in use
When itemtype is defined on biblio (item-level_itypes syspref), the
method C4::Reserves::CanItemBeReserved uses item->{itemtype}. But
ithe item comes from C4::Items::GetItem and it does not have an
'itemtype' key; in this method the item type value is always in
'itype' key.
This patch corrects it.
Test plan:
You should have itemtype on biblio and 'item-level_itypes' syspref
set to biblio.
This test plan is with ReservesControlBranch on ItemHomeLibrary.
- Choose a branch, a borrower category and an item type, for example
'NYC', 'CHILD' and 'DVD'
- Set an issuing rule for 'NYC', CHILD' and 'DVD' with 'Holds allowed'
set to 10
- Set an issuing rule for 'NYC', CHILD' and all item types with
'Holds allowed' set to 0
- Choose an item of a biblio with itemtype 'DVD', that can be reserved,
with 'NYC' as homebranch
- Choose a borrower with category 'CHILD'
- Try to request the item for the borrower
=> without the patch, you can
=> with the patch, you can't
You may check reserve is allowed with 'Holds allowed' > 0 on issuing
rule for 'DVD'.
Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Great test plan - thanks!
Confirmed the bug, and the fix. Looks good to me.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Mon, 5 May 2014 17:16:37 +0000 (17:16 +0000)]
Bug 9532: add regression test
To test:
[1] Run prove -v t/db_dependent/Holds.t. The last test
should fail.
[2] Apply the main patch.
[3] Run step 1 again. This time the tests should all pass.
It is implemented in a way that it removes already used or mutually
exclusive parameters (instance names, option switches).
I already have written completion for other (more complex) commands,
but I belive a simpler patch is better to start with.
IMPORTANT: this patch relies on having the koha-list command available
in the path.
To test:
- Make sure you have bash-completion installed and enabled (IRC might
help us if you encounter problems).
- Apply the patch.
Option 1:
- Pick the debian/koha-common.bash-completion file and do
$ cp debian/koha-common.bash-completion /etc/bash_completion.d/koha-common
- Open a new bash shell (I do it opening a new terminal on my Ubuntu box).
- Type one of the listed commands...
And repeatedly press <TAB>.
- Enjoy, and signoff if you belive it is usable. Otherwise report back.
Option 2:
- run:
$ . debian/koha-common.bash-completion
- Type one of the listed commands...
And repeatedly press <TAB>.
- Enjoy, and signoff if you belive it is usable. Otherwise report back.
Tests:
- Some koha-list option switches are mutually exclusive, -h should be
available in any context
- koha-enable should only autocomplete disabled instances
- koha-disable should only autocomplete enabled instances
- koha-email-enable should only autocomplete email-disabled instances
- koha-email-disable should only autocomplete email-enabled instances
- koha-*-zebra scripts should only autocomplete enabled instances.
- koha-*-sip scripts should only autocomplete sip-enabled instances.
Regards
To+
Note: writing bash-completion routines is a bit hacky, I tried to make
it the simplest way I could. Your comments are welcome.
Sponsored-by: Universidad Nacional de Cordoba Signed-off-by: Dobrica Pavlinusic <dpavlin@rot13.org> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10195: hide bib details page for OPAC-suppressed bibs
Records hidden with OpacSuppression are filtered from the search
results, but the opac-detail page is still visible if you know the
biblio number. This patch hides the detail page for suppressed biblios
by redirecting (controlled by the syspref OpacSuppressionRedirect)
either to opac-blocked (default), explaining that the record is blocked
(including optional explanatory text from the syspref
OpacSuppressionMessage) or to Koha's 404 page, giving no hint that a
biblio with that number exists in the system.
Test plan:
Make sure you have at least one record with 942$n == 1.
Set OpacSuppression to "Don't hide".
Do an OPAC search that should bring up your hidden record and other
records.
Observe that your record is found.
Open the detail page for the record.
Observe that it is accessible. Copy the URL for later(!).
Set OpacSuppression to "Hide".
Leave OpacSuppressionByIPRange blank.
Set OpacSuppressionRedirect to "an explanatory page ('This record is
blocked')."
Leave OpacSuppressionMessage blank for now.
Disable queryparser(!) (because of bug 10542).
Do a full zebra reindex.
Do an OPAC search that should bring up your hidden record and other
records.
Observe that your record is not found.
Open the opac-detail URL of the record (the one you copied before).
Observe that you are redirected to opac-blocked and it displays a
short standard message.
Edit OpacSuppressionMessage and input some text.
Open the opac-detail URL of the record again (the one you copied
before).
Observe that the text you entered in OpacSuppressionMessage is
displayed under the standard text you have seen before.
Set OpacSuppressionRedirect to "the 404 error page ('Not found')."
Open the opac-detail URL of the record again (the one you copied before).
Observe that you are redirected to Koha's 404 error page.
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>
Jonathan Druart [Fri, 2 May 2014 14:54:51 +0000 (16:54 +0200)]
Bug 11209: (follow-up) message content must also match for new message to be considered a duplicate
If the template contains dynamic parts, the message won't be
considerated as duplicated.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Duplicate messages will be queued, but when sending the queued messages
duplicates are found and are marked as failed.
Jonathan Druart [Tue, 3 Dec 2013 11:17:50 +0000 (12:17 +0100)]
Bug 11209: (follow-up) check if a notice has been already sent today
The previous patch checks if a notice has already been sent when the
current notices has been sent in queue. Which is wrong!
We have to check if a similar notice has been sent today.
This patch has been created after an observation on a production server:
If a user place on holds several items, he will receive 1 SMS per hold.
Here we only want 1 SMS for all holds.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jonathan Druart [Wed, 6 Nov 2013 13:56:35 +0000 (14:56 +0100)]
Bug 11209: Don't sent the same SMS message for the same user the same day
For PREDUE messages, one message is sent to the message_queue table for
each items in advance, meaning that the patron could receive duplicate
notices.
The SMS part for DUE and PREDUE often do not contain dynamic parts, only
a standard message.
Note that this patch *only* affects the SMS transport.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Kyle M Hall [Fri, 4 Oct 2013 13:53:11 +0000 (09:53 -0400)]
Bug 8769: Allow SIP2 return backdating
Currently Koha's SIP server ignores the return date part of an 09 ( aka
CHECKIN ) message. Koha should backdate a return, and remove
fines accordingly.
Signed-off-by: Benjamin Rokseth <benjamin.rokseth@kul.oslo.kommune.no>
Works as notified, second date field in SIP checkin (return date) is
used as return date. Return shows up in history with correct date.
Comments:
- patron is fined if return date is before issue date, but that
is largely irrelevant anyway.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 4397: fix scan index search results for non-latin characters
The Zoom specification defines that a ScanSet should provide a way
to retrieve terms suitable for displaying and another one for using
on further searches [1].
The Net::Z3950::ZOOM implementation actually provides both [2] but we
were using the wrong one.
Using $scanset->display_term(...) instead of $scanset->term(...) fixes
the problem.
To test:
- Do a index scan search (advanced search > more options > check
'index scan')
- Notice non-latin characters are replaced by one or more '@' symbols.
- Apply the patch
- Re-do the search, everything shows as it should.
- Try to follow any of the terms (clicking on them) and notice that
it actually gives you relevant results (i.e. is not searching for
@!!!!).
Sponsored-by: Universidad Nacional de Cordoba
Followed test plan. Patch behaves as expected. Signed-off-by: Marc Véron <veron@veron.ch> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
I reproduced the issue and I confirm this patch fixes it.
I put "Fuß" in a title, reindex the record. Launch a search on Title
checking the "scan index" checkbox. And the non-latin characters are
well displayed.
Bug 11048: Fix logout redirection for CAS authentication
The logout redirection function after a CAS authentication was misused.
This patch fixes it, and allows the CAS server to redirect the user back
to the opac after logout.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
From the Authen::Cas::Client documentation
logout_url [%args]
"logout_url()" returns the CAS server's logout URL which can
be used to redirect users to end
authenticated sessions. %args may contain the following
optional parameter:
* url => $url
If present, the CAS server will present the user
with a link to the given URL once the user has logged out.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Change only affects CAS authentication and is correct
according to the module documentation.
This followup corrects the fact that when using $query->url(), both
GET and POST params are get.
Using $query->url_param() will only get params directly in URL.
Test plan :
- Enable CAS
- Go to login page : cgi-bin/koha/opac-user.pl
- Try to connect with local login using random login and password
(they will be transmitted by POST)
- You stay to login page
- Look at CAS login URL
=> Without this patch it will contain the random login and password
as parameters of opac-user.pl
=> With this patch it does not contain any parameter
Signed-off-by: Matthias Meusburger <matthias.meusburger@biblibre.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Fridolyn SOMERS [Fri, 8 Nov 2013 10:12:57 +0000 (11:12 +0100)]
Bug 11219: make CAS authentication work with URL parameters
Bug 10029 tries to fix the use of URL parameters in CAS authentication.
But is does not work.
The full URL must be used in all methods of C4::Auth_with_cas.
Also, in checkpw_cas(), the 'ticket' parameter must be removed to find
the original URL.
This patch removes the 'ticket' parameter from query before calling
checkpw_cas() since the ticket is passed as method arguemnt.
In C4::Auth_with_cas, many methods use the same code to get the CAS
handler and the service URI. This patch adds a private method
_get_cas_and_service() to do the job.
Test plan:
- Enable CAS
- Go to opac without been logged-in
- Try to place hold on a record
=> You get to /cgi-bin/koha/opac-reserve.pl?biblionumber=XXX showing
authentication page
=> Check that CAS link contains query param "biblionumber"
- Click on CAS link and log in
=> Check you return well logged-in to reserve page with biblionumber
param
- Check CAS loggout
- Check Proxy CAS auth
Signed-off-by: Koha team AMU <koha.aixmarseille@gmail.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests in t, xt, and t/db_dependent/Auth.t.
Also passes QA script.
As I have no working CAS server, I focused on regression testing:
Activated Persona and casAuthentication.
- Verified normal login against database still works.
- Verified Persona login works.
Note: With Persona you are always forwarded to the patron
account - so you have to search for the record again before
you can place a hold.
- Verified that the CAS URL contains the biblionumber when
logging in while placing a hold.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Retested 2014-04-12
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
At the OPAC, if the bootstrap theme is used, the modal
dialog does not allow to use the CAS authentication.
This patch proposes, in case CAS is enabled, to
redirect to the opac-user.pl page (like prog theme).
This is because the popup content should stay small
(thinking about mobile surf), and that CAS url is
actually only computed in opac-user (see C4/Auth.pm)
and it would not be performant to compute it in all
pages.
Test plan:
- set syspref opacthemes to bootstrap
- enable the casAuthentication syspref
- fill the casServerUrl syspref with something like:
https://localhost:8443/cas
- go on the opac home page
- click on "Log in to your account" link (top right)
=> You go to cgi-bin/koha/opac-user.pl page where you
see the cas link
- disable the casAuthentication syspref
- go on the opac home page
- click on "Log in to your account" link (top right)
=> You see a popup for login and password
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Normal login still works with/without CAS.
Passes all tests and QA script.
Jonathan Druart [Tue, 19 Nov 2013 13:30:21 +0000 (14:30 +0100)]
Bug 11262: Don't require hardcoded translations for seasonal numbering pattern to work
This patch removes the use of POSIX::strftime which is based on the
locales of the system.
The DateTime module translates month and day name with success, without
any locale installed.
For the saesons, I use the way used in Koha: write the word in
templates. On this way the translate script will match them and allow
translators to translate them.
This patch adds a regression: the season names are not translated
following the locale selected.
This could be done when bug 8044 will be pushed.
Test plan:
0/ Update your po files and translate the season name.
1/ Create a numbering pattern using season.
example:
Name: Seasonal
Numbering formula: {X}
X: Season, Add=1, Every=1, Set back to 0 when more than 3, formatting
"name of season"
And test the prediction pattern with:
frequency: 1/3 month
First issue : 2013-09-21
length: 12 months
X begins with 2 (21th Septembre is Fall)
2/ Click on the test pattern button, you should get:
Fall 21/09/2013
Winter 21/12/2013
Spring 21/03/2014
Summer 21/06/2014
Change the locale and verify the season names are *not* translated.
Change the Koha language and verify the season names are translated.
3/ Create a numbering pattern using day or month name.
example:
Name: day
Numbering formula: {X}
X: day, Add=1, Every=1, Set back to 0 when more than 6, formatting "name
of day"
Frequency: 1/day
First issue: 2013-11-18
length: 1 month
X begins with 0
You should get:
Monday 18/11/2013
Tuesday 19/11/2013
Wednesday 20/11/2013
[...]
Sunday 15/12/2013
Monday 16/12/2013
Tuesday 17/12/2013
change the locale and verify the day names are translated.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Work as described. No koha-qa errors
Tested on top of Bug 11265 and Bug 11263,
and solved merge conflict
Updating PO file gives seasons to translate.
Tested using seasons, day and month
Only note is different behavior
1) To use seasons you need to use staff in desired language
2) To use day and month only need to select locale
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
No regressions found. Passes koha-qa.pl, t and xt
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested this again on top of 11263 and it works as described.
Jonathan Druart [Thu, 12 Dec 2013 10:27:26 +0000 (11:27 +0100)]
Bug 11263: Use all languages instead of just the translated ones
This patch produces the same dropdown list as the one in the adv search.
With this way, it won't be necessary to install additional templates to
fill the locale list.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jonathan Druart [Tue, 19 Nov 2013 13:21:38 +0000 (14:21 +0100)]
Bug 11263: do not use system locales settings for subscriptions
The locales list for subscriptions should not be retrieved from the
locales of the system.
This patch retrieves the locales list from the Koha DB (in the same way
as pref language and opaclanguages).
Test plan:
Edit a subscription (or a numbering pattern) and verify the list of
languages is the same as languages available in Koha.
Note: with this patch we loose the saeson translation, it is
normal. See report linked.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Work as described. No koha-qa errors.
New locale is retrieved from installed languages.
I wonder if that list can be restricted to
'enabled' ones (parsing syspref language value).
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes QA script and all tests.
Works according to description.
Julian Maurice [Mon, 17 Mar 2014 22:25:37 +0000 (23:25 +0100)]
Bug 11848: Fix C4::Context::interface, add POD and UT
1/ Edit a Perl script, for example mainpage.pl
2/ add "use Koha::I18N;" to the top of file
3/ add a translatable message somewhere in the script (this have
to be after the call to get_template_and_user). For example:
warn gettext("This is a translated warning");
4/ Create or update the PO files with
misc/translator/translate create LANGCODE
or
misc/translator/translate update LANGCODE
(LANGCODE should be enable in syspref 'languages')
5/ In misc/translator/po/LANGCODE-messages.po you should have
your string, translate it (using a text editor or a PO file
editor, make sure you don't have the "fuzzy" flag for this
string).
6/ Go to mainpage.pl with active language being English with your
browser and check your logs. You should see your string "This
is a translated warning".
7/ Now change language to LANGCODE. Check your logs, you should
have the string translated.
Note: I chose to name the sub 'gettext' because it's the default
keyword for xgettext for Perl. We can change it to whatever we want.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Follow test plan, work as described.
No koha-qa errors.
Tests pass
Fixed small merge conflict on t/Context.t
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Copied test plan from bug.
Julian Maurice [Wed, 26 Feb 2014 15:45:59 +0000 (16:45 +0100)]
Bug 11848: Make Koha::I18N easier to use
Instead of writing
use CGI;
use Koha::I18N;
my $cgi = new CGI;
my $lh = Koha::I18N->get_handle_from_context($cgi, 'intranet');
print $lh->maketext('my translatable text');
you can now write
use Koha::I18N;
print gettext('my translatable text');