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>
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: 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>
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>
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>
This just fixes some typos in the automicupdate README.
There's nothing to test. Just need to review it.
Signed-off-by: Magnus Enger <magnus@libriotech.no>
Makes sense as far as I can tell.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This changes the datatype of customer ID, requestor ID, and API key
from limited varchar to text to accustom for longer values.
To test:
* Apply the patch
* Run updatedatabase (a sandbox will do this automatically)
* Activate the ERM module in the system preferences (ERMModule)
* Go to E-ressource management > Data providers > New data provider
* Make sure you can enter values longer than 265 in the fields named
above and that they are stored correctly.
Signed-off-by: Jesse Maseto <jesse@bywatersolutions.com>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Add new system preference 'ConsiderHeadingUse' to be able to consider
the intended use of authority records (008/14-16) during cataloging
and linking.
Sponsored-by: Ignatianum University in Cracow
Signed-off-by: Roman Dolny <roman.dolny@jezuici.pl>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
record_if in the additional_field_values is an int(11)
This works for most cases, but in the branches case, the id column is
actually a varchar (branchcode).
This patch updates the column to accomodate for this.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Baptiste Wojtkowski <baptiste.wojtkowski@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>