This commit addresses all Hackfest QA related feedback:
1) Update of all strings that required update, including UI messages and
sys pref description
2) Moved the history check information from staffnotes to its own
pipe-separated illrequestattribute 'historycheck_requests'
3) Fix display of ILL request information on the history check screen
(Staff), including proper label naming (e.g. branchcode -> library),
show status description instead of code, uppercase labels.
4) Updated OPAC display to match Staff UI's display of matching history
requests
5) Removed ISSN criteria for matching requests check
6) Update tests accordingly
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
It appears the atomic update had wrong permissions:
prove xt/find-misplaced-executables.t
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Lisette Scheer <lisette@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
connexion is a product, added to ignore file
tablee -> tables
a few other small corrections
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
We need to adjust kohastructure.sql, sysprefs.sql and the DB itself.
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
To test:
1. Apply patch
2. reset_all (or start your testing environment in the first place)
3. Set system preferences finesMode to Calculate and charge
4. Edit default circulation rule so that fines will be calculated:
Unit - Days
Fine amount - 0.50
Fine charging interval - 1
When to charge - Start of interval
5. Check 2 items out to a patron with a custom due date of a few days in
the past
6. On the patron's account page, click Print > Print overdues
--> Look at the print preview of the slip, and confirm that the item
information is displayed and formatted correctly
7. In another tab, edit the 2 items to add a call number (if they don't
already have one)
8. Print overdues again
--> Confirm the slip still looks good
9. Run the fines cronjob to generate some overdue fines
ktd --shell
misc/cronjobs/fines.pl -v -c
10. Print overdues again
--> Confirm the fines are included and slip still looks good
11. Check in one of the overdue items
12. Print overdues again
--> Confirm slip now says "item is" instead of "items are"
Signed-off-by: Emmanuel Bétemps <e.betemps@gmail.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This bug will rename the UseEmailReceipts to AutomaticEmailReceipts, to
make it clearer the purpose of this syspref. This is because the receipts
dropdown is no longer conditional, and will always show, even if
AutomaticEmailReceipts is switched off.
To test (steps a-e before applying patch):
a) search sysprefs for 'EmailReceipts'
1) note the name is currently 'UseEmailReceipts'
2) enable this syspref
b) go to members/maninvoice.pl?borrowernumber=51
1) enter an amount (e.g. 100)
2) save & pay, confirm
c) go to members/boraccount.pl?borrowernumber=51
1) note that the receipt dropdown is visible
d) go to members/notices.pl?borrowernumber=51
1) note that a receipt was automatically sent
e) apply the patch, upgrade the db schema
f) search sysprefs for 'EmailReceipts'
1) note the name is now 'AutomaticEmailReceipts'
g) go to members/maninvoice.pl?borrowernumber=51
1) enter an amount (e.g. 100)
2) save & pay, confirm
h) go to members/boraccount.pl?borrowernumber=51
1) note that the receipt dropdown is no longer visible
i) go to members/notices.pl?borrowernumber=51
1) note that a receipt was automatically sent again
j) disable the 'AutomaticEmailReceipts' syspref
k) go to members/memberentry.pl?op=edit_form&destination=circ&borrowernumber=19
1) add a valid email address
k) go to members/maninvoice.pl?borrowernumber=51
1) enter an amount (e.g. 100)
2) save & pay, confirm
l) go to members/boraccount.pl?borrowernumber=51
1) note that the receipt dropdown is now visible
m) go to members/notices.pl?borrowernumber=51
1) note that a receipt was NOT automatically sent
n) go to members/boraccount.pl?borrowernumber=51
1) on any account line where a payment is made, click receipts > email
o) go to members/notices.pl?borrowernumber=51
1) confirm a manual notice has been generated
p) make coffee & have a mini disco
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
to keep the syspref names consistent with the existings values. Also "ES" is not as self-documenting as "Elasticsearch".
No code change, so the test plan stays the same.
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
What this patch does is:
1 - Wraps the existing search code in a a "bool" compound query as a "must". This should not affect
relevancy or results of the existing searches.
2 - Before we clean/truncate terms, loop through the passed in search terms and indexes to build a
new 'should' query, using the 'match' on the specified index/field that is added to the 'bool' query from above.
This means that if a result from the original query is also returned here, that item will be boosted in the result.
For searches on 'keyword' or 'title', or if no index is set, we use 'title-cover' as the most narrow form of title
This query isn't going to help when users enter CCL (i.e. ti:To die for) and it won't boost titles from 505, series, etc
when doing a general search. Nor will it have a detrimental effect, it will only boost field matches
To test:
1 - Add a record with
245 $a novel
2 - Add a record with
245 $a A novel : $b about things / $c by me
3 - Search for: novel
- Above records are returned lower in the list (results #6 and #14 for me)
4 - Search for: a novel
- Above records are returned lower in the list (results #6 and #14 for me)
5 - Apply patch, restart all, enable ESBoostFieldMatch option
6 - Repeat searches, note exact titles are boosted
- For 'novel' record from #1 is #1 result and other is second
- For 'a novel' record form #2 is #1 result and other is third
7 - Disable the new pref and repeat steps 3 and 4 and get results as before patch
8 - Experiment with other searches, turning pref on and off to verify relevant titles are boosted when enabled
9 - Search results when disabled should return as before the patch
Signed-off-by: Matthias Meusburger <matthias.meusburger@biblibre.com>
Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Currently, when reporting authority field to the bibliographic records,
the merge function uses the first matching authority field.
However, authorities can provide multiple versions of the same field, with
different languages, identified by a code in the $7 field.
French reference for languages codes for example, but any code system could be
used:
https://documentation.abes.fr/sudoc/formats/unmb/DonneesCodees/CodesZone104.htm#$d
This patch introduces the LanguageToReportOnMerge system preference, which
allows to specify a language code.
When set, if there is an authority field with the given language code, it will
be used to report to the bibliographic record.
If the system preference is not set, or there is no matching field, the default
behavior will apply: the first field will be used.
The $7 in the authority field can be in a short or long form:
- the short form is 2 characters long. Example: ba
- the long form is 8 characters long, with the short form in position 5 and 6
(starting from 1). Example: ba0yba0y
Test plan:
----------
1) Edit the 'Personal Name' authority type framework to make the 100 field
repeatable
2) Add an authority with several languages, like this (the order is important):
100 _7ba0yda0y
_a伊東豊雄
100 _7ba0yba0y
_aItō
3) Add a bibliographic record linked to that authority.
(Click on the "tag editor" icon next to the 100$a field in the bibliographic record to
search for the authority, then Search main heading ($a only): contains Itō)
Note that you can choose which version you want when searching for the
authority, under the "Get it!" column
For this example, choose the latin version: Itō
You should now have this in your bibliographic record:
100 _aItō
_92646
4) Edit the authority, you don't have to change anything, just edit and save.
Note that your bibliographic record now looks like this:
100 _7ba0yda0y
_a伊東豊雄
_92646
The first 100 field of the authority has been reported back to the bibliographic
record, regardless of what you chose when selecting the authority.
5) Apply the patch, set the LanguageToReportOnMerge system preference to: 'ba'
6) Edit the authority again, and check that your bibliographic record now looks
like this, according to the system preference:
100 _7ba0yba0y
_aItō
_92646
7) Edit the authority again, but set the $7 of the latin field to its short
form:
100 _7ba0yda0y
_a伊東豊雄
100 _7ba
_aItō
8) Check that the bibliographic record still has the latin field reported:
100 _7ba
_aItō
_92646
9) prove koha/t/db_dependent/Authority/Merge.t
10) Sign-off :)
Sponsored-by: ENSA
Works smoothly, both with UNIMARC/MARC21
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
When languages come into facets in ES, Koha should know the names
for the codes used records. Otherwise the three-letters language
code is being displayed in the facet instead of name. Koha now
(as for February 2025) knows about 180 languages, many are still
missing. On the official MARC 21 language codes list
(https://loc.gov/marc/languages/language_code.html) there are
485 languages. We are going to add now next 230 most popular
ones (= existing in our real catalogue), i.e.:
abk, ach, ada, ady, afa, ain, aka, ale, alg, alt, anp, apa, arg, arn,
art, arw, asm, ath, aus, ava, awa, aym, bad, bak, bal, bam, bas,
bat, ber, bho, bin, bre, bua, bug, cai, car, cau, ceb, cha, chb,
chg, chk, chm, chn, chr, chv, chy, cmc, cnr, cos, cpe, cpf, cpp,
crh, crp, cus, dak, dar, day, del, din, div, dra, dsb, dua, dyu,
dzo, efi, elx, ewe, ewo, fan, fat, fij, fil, fiu, fon, fry, ful,
gaa, gil, glv, grb, grn, gsw, guj, hat, haw, him, hmn, hmo, ibo,
ido, ijo, ile, ina, ine, inh, iro, jav, jpr, kaa, kab, kam, kar,
kau, kaw, kbd, khi, kik, kir, kok, kom, kon, krc, kum, lah, lam,
lim, lol, ltz, lua, lug, lui, lun, luo, lus, mad, mai, man, map,
mas, mdf, mdr, men, mkh, mnc, mos, mun, mus, mwl, myv, nai, nap,
nau, nav, nde, new, nia, nic, niu, nog, non, nso, nub, nyn, oci,
oji, ori, orm, oss, oto, paa, pap, phi, phn, pon, raj, rap, roh,
run, rup, sag, sah, sai, sal, sas, sat, scn, sco, sel, sga, sgn,
shn, sin, sio, sit, smo, sna, snk, sog, son, srd, ssa, sun, tah,
tai, tel, tgk, tig, tiv, tkl, tli, tmh, ton, tpi, tsi, tsn, tso,
tum, tup, twi, tyv, udm, uig, umb, vai, ven, vol, wak, was, wln,
wol, xal, xho, yap, ypk, zap, znd, zul
and additionally ca. 15 Polish translations to existing languages.
Subtags and names for language_subtag_registry are taken from
https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry,
English names for language_descriptions.description - from
https://www.loc.gov/marc/languages/language_code.html, and Polish names -
from https://przepisy.bn.org.pl/aneksy#25-kody-jezykow---marc-21.
Test plan:
==========
1. Hava a ES installation with reasonable number of records,
with a variety of languages in 008/35-37 not present in
Koha (you can modify your record with codes from the list above).
Set FacetMaxCount to a high number (like 500 or so,
dependiing on the size of your data set).
2. Do a search, like '*'.
3. Controll the content of the Language faset -- you should
see some bare codes instead of language names.
4. Apply the patch -- update the database.
5. Perform the same search.
6. You should see the names in place of the codes.
7. Optionally, you can activate the Polish translation and
you should be able to see Polish names for the added languages.
Sponsored-by: Ignatianum University in Cracow
Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
To test:
1) Apply patch
2) Make sure tests in t/db_dependent/Koha/SearchEngine/Elasticsearch.t
pass
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Thomas Klausner <domm@plix.at>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
To test:
1: try to save a value in the 952$i that is more than 32 characters
2: It does not work.
3: apply patch
4: try to save a value in the 952$i that is more than 32 characters
5: it does work!
6: delete your item and use a report to confirm the full string is in deleteditems.stocknumber
7: Maybe use DESCRIBE from mysql commandline to see the length and confirm it's changed?
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Baptiste Wojtkowski <baptiste.wojtkowski@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Multiple fixes:
- File permmissions
- Capitalization
- Translatability
- Use of console.log
- Atomic update description typo fix
- Remove occurrences of 'auto' and 'automatic':
User testing reported that making a UI distinction between 'regular' and 'automatic' ILL requests is redundant.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Sponsored-by: NHS England
Sponsored-by: PTFS Europe Ltd
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>