Commit graph

4424 commits

Author SHA1 Message Date
Jonathan Druart
623f3a2c84 Bug 8233 : SearchEngine: Add a Koha::SearchEngine module
First draft introducing solr into Koha :-)

List of files :
  $ tree t/searchengine/
  t/searchengine
  |-- 000_conn
  |   `-- conn.t
  |-- 001_search
  |   `-- search_base.t
  |-- 002_index
  |   `-- index_base.t
  |-- 003_query
  |   `-- buildquery.t
  |-- 004_config
  |   `-- load_config.t
  `-- indexes.yaml
  just do `prove -r t/searchengine/**/*.t`

  t/lib
  |-- Mocks
  |   `-- Context.pm
  `-- Mocks.pm
  provide a mock to SearchEngine syspref (set_zebra and set_solr).

  $ tree Koha/SearchEngine
  Koha/SearchEngine
  |-- Config.pm
  |-- ConfigRole.pm
  |-- FacetsBuilder.pm
  |-- FacetsBuilderRole.pm
  |-- Index.pm
  |-- IndexRole.pm
  |-- QueryBuilder.pm
  |-- QueryBuilderRole.pm
  |-- Search.pm
  |-- SearchRole.pm
  |-- Solr
  |   |-- Config.pm
  |   |-- FacetsBuilder.pm
  |   |-- Index.pm
  |   |-- QueryBuilder.pm
  |   `-- Search.pm
  |-- Solr.pm
  |-- Zebra
  |   |-- QueryBuilder.pm
  |   `-- Search.pm
  `-- Zebra.pm

How to install and configure Solr ?
  See the wiki page: http://wiki.koha-community.org/wiki/SearchEngine_Layer_RFC

http://bugs.koha-community.org/show_bug.cgi?id=8233
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-07-06 16:51:58 +02:00
Lyon3 Team
ce138ac96f Permission for change password button in members toolbar should be borrowers instead of staffaccess
http://bugs.koha-community.org/show_bug.cgi?id=8242
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-04 16:32:18 +02:00
Jared Camins-Esakov
986b887159 Bug 8202: Add authority export to tools/export.pl
Adds a separate tab on tools/export.pl for exporting authority records.

To test:
1. Try exporting authority records from the "Export data" tool

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tried different exports and everything worked nicely:
- removing fields from export (example: 942)
- limiting to one authority type
- changing the given file name
- exporting as MARC or XML
2012-07-04 16:21:06 +02:00
Paul Poulain
3764884eae Merge remote-tracking branch 'origin/new/bug_8130' 2012-07-02 14:53:42 +02:00
Paul Poulain
0294f5e167 Bug 8130 follow-up, removing duplicate tab
In bug 7955, http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7955#c21, Nicole spotted that the "notices" tab appear twice.

This patch removes the duplicated tab that has been introduced by this feature, probably a rebase mistake
2012-07-02 14:53:25 +02:00
Paul Poulain
0923e96cb4 Revert "Bug 7444: Update circ/circulation.pl to use KohaDates TT Plugin"
This reverts commit 186cfa5cb0.
2012-06-29 17:17:47 +02:00
Jonathan Druart
a4d2a99860 Bug 8217: Followup: move code to the document.ready function
Signed-off-by: Mirko Tietgen <5p4m@gmx.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-29 16:49:32 +02:00
Paul Poulain
a629cb2b6f Bug 8318: Update StatisticsFields preference language
Patch rewritten  from the original one from nengard, that I couldn't apply for an unknown reason

This patch changes around the wording of the StatisticsFields
preference to make it clearer where these values will show.

Signed-off-by: Marc Veron <veron@veron.ch>
2012-06-29 16:47:16 +02:00
Jared Camins-Esakov
c0714a99f2 Bug 6557: Record bib popularity in totalissues
Because updating the total issues count associated with a bibliographic
record on issue could cause a significant load on the server, this
commit adds the syspref UpdateTotalIssuesOnCirc (which defaults to OFF
to match existing behavior). The syspref has the following description:

  Do/Do not update a bibliographic record's total issues count whenever
  an item is issued (WARNING! This increases server load significantly;
  if performance is a concern, use the update_totalissues.pl cron job
  to update the total issues count).

Bug 6557: automatically increment totalissues

Adds the ability to automatically increment biblioitems.totalissues
whenever an item is issued.

To test:
1) Choose a record with at least one item that can circulate
2) Check the value of 942$0 (you may need to look at the plain MARC view
   on the OPAC). Most likely there won't be any 942$0 at all
3) Enable UpdateTotalIssuesOnCirc
4) Check out the item you selected
5) Check the value of 942$0 (you may need to look at the plain MARC view
   on the OPAC). That value should now be one greater than before
6) Discharge the item
7) Disable UpdateTotalIssuesOnCirc
8) Check out the item you selected again
9) Check the value of 942$0 (you may need to look at the plain MARC view
   on the OPAC). That value should not have changed

Bug 6557: add script to update totalissues from stats

NAME
       update_totalissues.pl

SYNOPSIS
         update_totalissues.pl --use-stats
         update_totalissues.pl --use-items
         update_totalissues.pl --commit=1000
         update_totalissues.pl --since='2012-01-01'
         update_totalissues.pl --interval=30d

DESCRIPTION
       This batch job populates bibliographic records' total issues count
       based on historical issue statistics.

       --help  Prints this help

       -v|--verbose
               Provide verbose log information (list every bib modified).

       --use-stats
               Use the data in the statistics table for populating total
               issues.

       --use-items
               Use items.issues data for populating total issues. Note that
               issues data from the items table does not respect the --since
               or --interval options, by definition. Also note that if both
               --use-stats and --use-items are specified, the count of biblios
               processed will be misleading.

       -s|--since=DATE
               Only process issues recorded in the statistics table since
               DATE.

       -i|--interval=S
               Only process issues recorded in the statistics table in the
               last N units of time. The interval should consist of a number
               with a one-letter unit suffix. The valid suffixes are h
               (hours), d (days), w (weeks), m (months), and y (years). The
               default unit is days.

       --incremental
               Add the number of issues found in the statistics table to the
               existing total issues count. Intended so that this script can
               be used as a cron job to update popularity information during
               low-usage periods. If neither --since or --interval are
               specified, incremental mode will default to processing the
               last twenty-four hours.

       --commit=N
               Commit the results to the database after every N records are
               processed.

       --test  Only test the popularity population script.

WARNING

If the time on your database server does not match the time on your Koha
server you will need to take that into account, and probably use the
--since argument instead of the --interval argument for incremental
updating.

=== TESTING PLAN ===

NOTE: in order to test this script, you will need to have some sort of
circulation data already existing in your Koha installation.

1) Disable UpdateTotalIssuesOnCirc
2) Run: misc/cronjobs/update_totalissues.pl --use-items -t -v
3) If you have total checkout data in your item records (i.e. anything
   in 952$l), you should see messages like "Processing bib 43 (1 issues)"
4) Choose one of the lines that shows more than 0 issues, and view the
   record with that biblionumber in the staff client, choosing the "Items"
   tab (moredetail.pl). Add up the "Total checkouts" listed for each item,
   and confirm it matches what the script reported
5) Run: misc/cronjobs/update_totalissues.pl --use-stats -t -v
6) If you have any circulation statistics in your database (i.e. any
   'issue' entries in your statistics table), you should see messages
   like "Processing bib 43 (1 issues)";
7) Choose one of the lines and view the record with that biblionumber in
   the staff client, choosing the "Items" tab (moredetail.pl). If you
   count the number of checkouts listed in each item's checkout history,
   the total should match what the script reported.
8) Check out an item
9) Run: misc/cronjobs/update_totalissues.pl --use-stats
   --incremental --interval=1h -t -v
10) You should see one line reporting a single circ for the bib record
    associated with the item you just checked out (there may be more if
    you checked out any books in the hour prior to running these tests
11) If the results in steps 4, 7, and 10 match the predictions, the
    script worked

This patch to Koha was sponsored by the Arcadia Public Library and the
Arcadia Public Library Foundation in honor of Jackie Faust-Moreno, late
director of the Arcadia Public Library.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Tested this with my test data - numbers are correct and updated appropriately.

More importantly - if I do a popularity search, the most popular items *come up first*. Amazing.
2012-06-29 14:29:22 +02:00
Nicole C. Engard
7a09237f05 Bug 8321: Fix OPACShowBarcode description
This preference had a few grammar errors and repeated the
word 'show.' This patch resolves those issues.

Signed-off-by: Marc Veron <veron@veron.ch>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-29 11:24:16 +02:00
4c13b69192 Bug 8313 - add ASHS to 'Koha team' page, for sponsorship of the 'star-ratings' feature
Signed-off-by: Marc Veron <veron@veron.ch>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-28 14:10:12 +02:00
Nicole C. Engard
706f072e36 Bug 8319: Update headings on Patron Statistics tab
The patron statistics tab had had headings that were too
hard to understand for the average library user. This patch
changes the language to something less technical.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-28 14:09:10 +02:00
76b80ac33c Bug 8130 - attach PDF files to a patron record
Adds the ability to attach unlimited arbitrary files to
a borrower record.

Test Plan:
1) Enable system preference EnableBorrowerFiles
2) Look up borrower record, click 'Files' tab on left
3) Upload a file, download the file, delete the file.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
rebased for current master.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
rebased again; some indentation issues in include menus.
2012-06-28 10:55:51 +02:00
Jared Camins-Esakov
44cd5e058b Bug 8205: Add OPACShowUnusedAuthorities syspref
Rather than list authorities that are not actually used by a library,
this commit introduces a new syspref: OPACShowUnusedAuthorities to
enable libraries to hide unused authorities in the OPAC authority browser.

To test:
1) Do a search in the OPAC authority browser that brings up multiple
   results, including some that are used in the bibliographic database
   and some that are not.
2) Observe that the results include both used and unused authorities.
3) Set OPACShowUnusedAuthorities to "Do not."
4) Repeat the same search as in step 1.
5) Observe that the results no longer include unused authorities.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Preference is implemented cleanly and works like advertised.
As a note: The unused authority records will be hidden from display,
but the result list paging does not adjust for the hidden records.
So the result pages will show more or less records total, depending
on how many records are hidden.
2012-06-28 08:59:46 +02:00
a21d8e5da4 Bug 8288 - showmarc.tt should not include full doc-head-close.inc
showmarc.tt and opac-showmarc.tt are used to load a plain view
of a MARC record and thus do not need the full set of page assets
loaded with other pages (CSS and JavaScript). Removing the
standard doc-head-close include will reduce the load time of
these pages.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-27 18:03:42 +02:00
Julian Maurice
203757e353 Bug 7304: More permissions for budgets
- Possibility to add users to a budget
- Restrictions changed to:
  - None
  - Owner
  - Owner and users
  - Owner, users and library
- Restricted users cannot spent on these budgets (they cannot modify them
  either)

Modified pages:
 - admin/aqbudgets.pl
 - admin/aqplan.pl
 - suggestion/suggestion.pl
 - acqui/acqui-home.pl
 - acqui/addorderiso2709.pl
 - acqui/basket.pl
 - acqui/neworderempty.pl

Unit tests in t/Budgets/CanUserUseBudget.t and t/Budgets/CanUserModifyBudget.t

Bug 7304 tmp

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-27 16:25:44 +02:00
Katrin Fischer
51cdcd91f7 Bug 7905: Follow up - Multi-line subscription notes
This patch adds the TT filter to other places where we are displaying the
subscription notes:

- OPAC detail page, subscription tab
- OPAC subscription brief history page
- Staff detail page, subscription tab

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-27 15:29:56 +02:00
Adrien Saurat
8b3a2d9dd0 Bug 7905: display serial notes on several lines
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Patch works and makes use of TT filters!

I agree the display could be improved to work a bit nicer
for long lines or multi-line comments, but this is still a nice
improvement.
2012-06-27 15:29:33 +02:00
Jonathan Druart
b3cec7bec3 Bug 5345: DataTables integration in acquisition module [5]
basketgroup.tt

http://bugs.koha-community.org/show_bug.cgi?id=8105
Signed-off-by: Marijana Glavica <mglavica@ffzg.hr>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-26 18:00:06 +02:00
2b74492d7d Bug 8181 [REVISED] Replace DynArch calendar widget with jQueryUI version
All instances of the old DynArch calendar have been replaced with
jQueryUI versions and the old library files have been removed.

calendar.inc has been modified to include jQueryUI localization
strings and global configuration options. Just add a "datepicker"
class to an input field to trigger a datepicker prompt.

If you would like two fields in one from to limit each other (one
is date from, one is date to), add these classes to each:
"datepickerfrom" and "datepickerto." This will prevent an invalid
entry, e.g. a date in the latter which falls before the former.

jQueryUI is now upgraded to the latest verision, 1.8.21.

Edit: Now with proper translatability, date formatting, first day
of the week handling, and RTL support.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
QA Comment:  rebased on current master; minor merge conflicts with other patches pushed

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 18:26:26 +02:00
Sophie Meynieux
45a0e7a9db Bug 8191 : Adding a new value to 8 position of coded data field 100
From july 2012, unimarc norm evolves and the value k "monograph with both publication date and print date" must be added for this position.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Checked the new value shows up and is correctly copied into the field.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 18:23:24 +02:00
Marc Veron
c8080f9196 Bug 7368 - General staff client typo omnibus
Corrects 2 typos, see comment #9

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 17:59:29 +02:00
a78298d2f0 Bug 8194 - Layout problem on subscription add when showing manual history
Markup errors were causing display problems when the "manual history"
section is shown.

To test, apply the patch, load the subscription add page, and check
the "manual history" checkbox. The "Serials planning" section
should appear directly below the "manual history" section.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works nicely.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 17:54:38 +02:00
Adrien Saurat
b9f6122ec6 Bug 7379: display of copy number description (AV)
The biblio/items detail pages (staff and OPAC) display
the copynumber description if an authorized value
is configured accordingly.

Signed-off-by: Gaetan Boisson <gaetan.boisson@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 16:34:44 +02:00
Alex Arnaud
0023e2a1ce Bug 8224 - Make authorized values appear in planning list
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
I can confirm the bugs on current master and this patch fixes both problems.

- Pull down list for "Planning" on the budget page was not showing
  categories of authorized values
- Planning page showed the categories, but budget_period_id was
  missing from the URL

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 16:24:13 +02:00
Katrin Fischer
30dc74b7fb Bug 8241: Remove text fragment from Z39.50-Server search
Removes an accidently added "curr" from below the search options
for administration > Z39.50 client targets.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 16:22:48 +02:00
6cc03670e4 Bug 8241 - Remove stray references to YUI autocomplete
- Removing unused references to YUI assets in authorities/auth_finder.tt
- Removing unneeded call to autocomplete JS in help-top.inc and
  adding new jQuery dependencies.
- Minor HTML markup corrections to auth-finder-search.inc discovered
  in debugging the patch.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested:
- help files on various pages
- auth finder plugin in cataloguing
- authority search in authorities module
2012-06-25 16:22:46 +02:00
Matthias Meusburger
23033cd937 Bug 8282: Bug in modules list in about.pl
Last modules were not displayed if the number of modules did not match the number of rows of the table (when $number_of_modules % 4 != 0)

Signed-off-by: Marc Veron <veron@veron.ch>

Added some code to about.tt to have empty the last remaining cells, not sure if an other signoff is needed.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 16:20:32 +02:00
Paul Poulain
a163be4113 Bug 3708 - Add another customizable region to the OPAC: right sidebar nav
This patch creates a new system preference, OpacNavRight, in
which the librarian can add HTML which will appear on the OPAC
main page under the login form. If the user is logged in the content
will appear in place of the login form.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 23:11:06 +02:00
Meenakshi.R
8bd8aba577 Bug 4255 - Add item type to facet list
This is for MARC 21 only.

Made following changed:

- In getFacets in C4/Koha.pm added item type facet for 952y and 942c
- In getRecords in C4:Search.pm added code to get description of itemtype codes
- facets.inc in both staff and opac to show item types related label in the facets block

To test:

Add records such that a certain itype (say BK) is present in both 942c and 952y in two DIFFERENT records.

Run a search where both test records are present. Test to see if itype types are presented in the facets block (both OPAC and staff).

Click on the itype (say BK), both the test records should appear in the refined results. This shows that the feature works for both 942c and 952y.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>

QA Comment: fixed capitalization in template includes according to HTML4 coding
guideline ("Item types" instead of "ItemTypes")

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 22:27:21 +02:00
Jared Camins-Esakov
7bc4a6025b Bug 5910: [SIGNED-OFF] only add "All authority types" for UNIMARC
UNIMARC is the only marcflavour that does not already have an option
for searching all authority types, so check that the marcflavour is
UNIMARC before displaying the additional "All authority types" option.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 22:22:25 +02:00
Paul Poulain
434b4559eb Bug 5910: allow users to search on all auth types
Add search on "all authorities types" option in the authorities type select

rewritten for T::T

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-06-20 22:22:22 +02:00
Amit Gupta
5836738957 Bug 6774 Display barcode on OPAC detail page(Correcting Typo).
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Rebased to current master, works in my tests, but needs another set of eyes.
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2012-06-20 22:04:32 +02:00
Paul Poulain
2102895ab5 Adding Claire Hernandez as contributor + adding missing contributors in about.tt 2012-06-20 21:49:40 +02:00
Paul Poulain
8c309c1a67 Bug 7955 follow-up spelling fixes
* removing useless upper cases
* s/precedent/previous/ and s/Actual/Current/ to be consistent with other Koha pages
2012-06-20 21:31:43 +02:00
Jonathan Druart
5e2001a6f8 Bug 7955: Statistics tab for Patron checkouts
This patch adds a new 'statistics' tab in the Patron module.
For a borrower, this tab contains a table with:
- number of checkout for today
- number of checkin for today
- "precedent state", the number of checkouts the patron had yesterday on
  its library card
- "actual state", the number of checkouts on the borrower card at the current date

A new syspref (StatisticsFields) contains a list of fields (separated by
pipe (|) on which the table results is based. The default value is
location|itype|ccode

Signed-off-by: Mathilde Formery <mathilde.formery@ville-nimes.fr>
2012-06-20 21:16:50 +02:00
Claire Hernandez
1a2e242704 Bug 7994: Fix pref yaml errors
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 21:09:29 +02:00
Jonathan Druart
c3f16aa97d Bug : DataTables integration in acquisition module [1]
parcel.tt

http://bugs.koha-community.org/show_bug.cgi?id=8098
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Fixed bug number.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 19:32:06 +02:00
Jonathan Druart
364b9a2da9 Bug 8099: DataTables integration in acquisition module [2]
acqui-home.tt

http://bugs.koha-community.org/show_bug.cgi?id=8099
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 19:30:39 +02:00
Jonathan Druart
8a2139e495 Bug 8100: DataTables integration in acquisition module [8]
neworderbiblio.tt

http://bugs.koha-community.org/show_bug.cgi?id=8100

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Fixed bug number.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 19:26:52 +02:00
Jonathan Druart
e31768aab1 Bug 8102: DataTables integration in acquisition module [14]
supplier.tt

http://bugs.koha-community.org/show_bug.cgi?id=8102
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Corrected bug number.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 19:06:02 +02:00
Jonathan Druart
e76afafb94 Bug 5345: DataTables integration in acquisition module [12]
parcels.tt

http://bugs.koha-community.org/show_bug.cgi?id=8103
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 18:57:35 +02:00
Jonathan Druart
029d956242 Bug 5345: DataTables integration in acquisition module [7]
lateorders.tt

http://bugs.koha-community.org/show_bug.cgi?id=8104
Signed-off-by: Marijana Glavica <mglavica@ffzg.hr>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 18:55:46 +02:00
Jonathan Druart
0fbfb44737 Bug 8152: Clicking cancel link on edit suggestion redirect to the suggestions list
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 18:44:48 +02:00
Matthias Meusburger
cc02d468c3 Bug 8229: Tabs in marc subfield structure is not shown correctly
- Fixed URLs in marc_subfields_structure.tt

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 11:10:13 +02:00
Jared Camins-Esakov
3aaaf2f2e4 Bug 7943: Authority search results are untranslatable
The HTML for authority search results was previously generated in
C4::AuthoritiesMarc::BuildSummary, which meant that it couldn't be
translated. This patch moves the HTML generation into the templates
by introducing a new authorities-search-results.inc include file for
both the OPAC and the Intranet which contains a Template::Toolkit BLOCK
for rendering the authority results. Fixes the authority autocomplete
by removing the untranslatable strings, and returning only data from
the database.

To test:
1. Apply patch.
2. Test authority searching in the authority module in the staff client
3. Test authority searching in the authority control plugin in the
   cataloguing module (and the plugin for UNIMARC field 210$c, if you
   can figure out how)
4. Test authority searching in the OPAC

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested with MARC21 data.

1) Applies cleanly on current HEAD.

2) Authority search in staff

Patch works wonderfully, only some small notes found while testing that have
not been changed by this patch:

ENH note: Search terms show up nowhere. So if I want to change the sorting, I have to
repeat typing in my search term. Even if the form does not keep the term, it
should be visible somewhere on the screen what I searched for.

ENH note: The pagination on top and at the bottom of the result list are formatted
differently. Maybe some missing CSS?

ENH note: Also the authority type is not shown at all in the result list.

3) Cataloguing and authority plugins

The autocomplete function works nicely.

ENH note: There is only one small enhancement
I could imagine. If I start my search from 100 it will limit the search to
'persons' but the autocomplete will also suggest other authorities. It would
be a bit cleaner, if the autocomplete could limit by the appropriate authority
type too. Very nice feature.

Plugins overall work nicely. Created links include the authority numbers and work
correctly.

4) Authority search in OPAC

Works nicely. Display is consistent, but translatability greatly improved.

ENH note: In staff we use 'Details' in OPAC we use 'View full heading' - I wonder
if maybe 'details' would be better understandable for users?

Note: Code reveals a system preference 'AuthDisplayHierarchy' that is
not available in the system preference editor. I talked to Jared and he
will work on this feature later on. For now it's no regression, as the
preference has never been visible.
2012-06-20 10:07:30 +02:00
Ian Walls
186cfa5cb0 Bug 7444: Update circ/circulation.pl to use KohaDates TT Plugin
Removes all date formatting done in circ/circulation, and sets any/all date
outputs to iso format.  The formatting of dates is now handled in the template
using the KohaDates plugin.

This allows use to remove a dependency on C4/Dates.pm from the script.

This patch also removes the usage of C4/Overdues/CheckBorrowerDebarred.  Since
borrowers.debarred is returned by GetMemberDetails, it doesn't make sense to
include another module to run another MySQL query just to fetch the date again.

To Test:

1. View the checkout page for a patron with materials checked out today and in days past, as
well as items on reserve.
2. View a patron who is nearing their expiry date
3. Renew a patron
4. Renew a material from the checkout page using the renewal date selector
5. Attempt to checkout a book to a patron that is on hold for someone else
6. Attempt to checkout a book that is currently checked out
7. View a debarred patron

In all cases, any dates displayed should be in syspref format

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 18:02:26 +02:00
9357d02794 Bug 8171 - Improper escaping of quotes during z39.50 queries leads to broken html
Implementing fix as suggested by Chris Cormack:

http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=8171#c4

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 17:15:40 +02:00
81edc91f37 Bug 8004 - Items on Hold Lose Transfer After Being Scanned Twice
When a hold is placed on an item where the pickup location is
different than the holding library, Koha initiates a branch
transfer for that item to fill that hold when items is run through
the returns system.

If the item is then run through returns a second time, the system is
supposed to close that transfer as a 'wrongtransfer', and open a new
transfer with the same from and to branches as the original.

The problem is that the original transfer is closed, but the new
transfer is not created. This is because at some point, someone
replaced the template variable WrongTransfer, which had previously
contained the branchcode for the library to transfer to, with the
full name of the library instead ( I assume to make a look nicer ).

Solved by removing the line that was changing the variable contents
from the branchcode to the branch name, and adding a new TT filter,
KohaBranchName that functions in the same way as KohaDates, except
it takes a branchcode and returns the branch name for the given
branchcode.

The consequence of this, is the the name of the library is passed to updateWrongTransfer instead of the branchcode, causing the failure.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 15:53:57 +02:00
Ian Walls
d29efac4f3 Talking Tech Support - Phase I
Implements support for Talking Tech I-tiva phone notification for OVERDUE, PREDUE and HOLD notifications.
Overdues respect triggers as configured for the patron's branch.
Predue and Holds notifications respect patron's messaging preference choices.
A new column for phone notification is added if the TalkingTechItivaPhoneNotification system preference is turned on

Record of phone messages being sent to patrons is added to the patron's Notices
tab; notice of success or failure can be retrieved from I-tiva.

See the TalkingTech.README for installation and set-up instructions.

Aside from the control system preference, and the necessary changes to Messaging Preferences
forms to make use of phone notifications, the bulk of the code resides in external
cronjobs.

TalkingTech_itiva_outbound.pl generates the Spec C file to send to I-tiva.  Actual transmission
of the file must be handled by the system administrator.

TalkingTech_itiva_inbound.pl processes the received Results file from I-tiva.  Getting the
file from I-tiva to Koha is the job of the system administrator, as well.

Both scripts have a --help option with full documentation.

The only necessary change to core Koha behavior is in C4::Letters::EnqueueLetter.  The return
value was changed from 0 or 1 (successful addition of letter to message_queue or not), to the actual
insert ID of the letter.  This was required by the outbound script to present a unique Transaction ID
for the notice added to the patron's record (so a 'sent' or 'failed' status could be updated).  Since
the dbh and sth are not shared, and the last_insert_id() command is table-specific, this should be thread-safe.
No changes are necessary to any parts of Koha, as all usage of EnqueueLetter currently ignores the return value.

To Test:

1. Turn on TalkingTechItivaPhoneNotification system preference
2. Verify that 'phone' is now a valid notification option for patrons on both staff and OPAC side
3. Attempt to set a 'phone' preference for PREDUE or HOLD messaging; attempt should succeed
4. Set up the patron for notices to triggers:
   a. include checked out items due in a range of days, including the value set up in their messaging preferences.
   b. place several holds, some in position, others waiting for pickup, others in transit.
   c. set the patron up to have overdues, overdue by a range of days that includes the delay values for
the patrons branch and categorycode
5. Run TalkingTech_itiva_outbound.pl --type=RESERVE --type=PREOVERDUE --type=OVERDUE --outfile=/tmp/talkingtechtest.csv

The resulting talkingtechtest.csv file should include all the items due on X days (where X is the patrons' preference),
and none of the ones due in other increments.  Similarly, overdues messages should be added for each item due by a delay
value as configured; overdues of other numbers of days should be ignore.  Holds that are waiting pick up or in transit should
have messages, those still pending should not.

Messages should be added to the patron's notices tab for each issue sent.  Verify these messages exist, and all Notices
tokens are replaced with appropriate information.

Repeat, this time with 4c making use of the default branch overdue triggers, instead of branch-specific triggers.

To test the inbound script, create a CSV with rows in the format "<<Message_id>>","<<SUCCESS or FAIL>>"
Message ID should correspond to the final column of the talkingtechtest.csv file (the transaction id) for the message.

Primary Authorship: Ian Walls
Additional modifications: Kyle M Hall

http://bugs.koha-community.org/show_bug.cgi?id=4246
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Tested and in use in production by two public libraries : Middletown
and Washoe. Both have given their sign off, but don't have git to
actually sign off.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 17:46:52 +02:00