Commit graph

16561 commits

Author SHA1 Message Date
Jared Camins-Esakov
d944df2272 Bug 8268 follow-up: rewrite config correctly
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Problem fixed.
2012-08-28 18:02:42 +02:00
66d3dcbbef 8268 Followup for creating var spool subdir.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
This fixes breaking install on missing subdir.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-23 10:40:43 +02:00
Jared Camins-Esakov
8affddc52d Bug 8268 follow-up: incorporate QA comments
Fixes the following things:
1. Sanitizes log output to prevent an attacker from using a specially
   crafted POST to add extra lines to the log
2. Simplify a regular expression since "..file" cannot be used to
   escape the current directory
3. Makes sure directories are consistent
4. Correct logic issues in misc/cronjobs/backup.sh

Thanks to Frere Sebastien Marie for catching these issues.

Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-12 17:40:22 +02:00
Jared Camins-Esakov
bbcb1d784b Bug 8268: Add database dump to export tool
This patch builds on work by Lars Wirzenius for the Koha packages.

To date, the only way for a Koha librarian to obtain a complete backup
of their system has been to log into the system via SSH (or FTP) to
download the mysqldump file. This patch makes it possible for
superlibrarians in properly configured systems to download night backups
via the staff client's Export tool.

Recognizing that this is functionality with potentially very grave
security implications, system administrators must manually enable these
features in the koha-conf.xml configuration file.

The following configuration settings have been added to the koha-conf.xml
file:
* backupdir => directory where backups should be stored.
* backup_db_via_tools => whether to allow superlibrarians to download
  database backups via the Export tool. The default is disabled, and
  there is no way -- by design -- to enable this option without manually
  editing koha-conf.xml.
* backup_conf_via_tools => whether to allow superlibrarians to download
  configuration backups via the Export tool (this may be applicable to
  packages only). The default is disabled, and there is no way -- by
  design -- to enable this option without manually editing koha-conf.xml.

This commit modifies the following scripts to make use of the new
backupdir configuration option:
* koha-dump and koha-run-backups in the Debian packages
* The sample backup script misc/cronjobs/backup.sh

Note that for security reasons, superlibrarians will not be allowed
to download files that are not owned by the web server's effective user.
This imposes a de facto dependency on ITK (for Apache) or running the
web server as the Koha user (as is done with Plack).

To test:
1. Apply patch.
2. Go to export page as a superlibrarian. Notice that no additional
   export options appear because they have not been enabled.
3. Add <backupdir>$KOHADEV/var/spool</backup> to the <config> section
   of your koha-conf.xml (note that you will need to adjust that so that
   it is pointing at a logical directory).
4. Create the aforementioned directory.
5. Go to export page as a superlibrarian. Notice that no additional
   export options appear because they have not been enabled.
6. Add <backup_db_via_tools>1</backup_db_via_tools> to the <config>
   section of your koha-conf.xml
7. Go to the export page as a superlibrarian. Notice the new tab.
8. Go to the export page as a non-superlibrarian. Notice there is no
   new tab.
9. Run: mysqldump -u koha -p koha | gzip > $BACKUPDIR/backup.sql.gz
   (substituting appropriate user, password, and database name)
10. Go to the export page as a superlibrarian, and look at the "Export
    database" tab. If you are running the web server as your Koha user,
    and ran the above command as your Koha user, you should now see the
    file listed as an option for download.
11. If you *did* see the file listed, change the ownership to something
    else: sudo chown root:root $BACKUPDIR/backup.sql.gz
11a. Confirm that you no longer see the file listed when you look at the
     "Export database" tab.
12. Change the ownership on the file to your web server (or Koha) user:
    sudo chown www-data:www-data backup.sql.gz
13. Go to the export page as a superlibrarian, and look at the "Export
    database" tab. You should now see backup.sql.gz listed.
14. Choose to download backup.sql.gz
15. Confirm that the downloaded file is what you were expecting.

If you are interested, you can repeat the above steps but replace
<backup_db_via_tools> with <backup_conf_via_tools>, and instead of
creating an sql file, create a tar file.

To test packaging: run koha-dump, confirm that it still creates a
usable backup.

------

This signoff contains two changes:

10-1. If no backup/conf files were present, then the message telling you
so doesn't appear and the download button does. Made them behave
correctly.
10-2. The test for a file existing required it to be owned by the
webserver UID. This change makes it so it only has to be readable.

Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
2012-07-12 17:40:21 +02:00
Chris Cormack
3f12a40af6 Bug 5327 : Follow up for TTParser test 2012-07-12 16:06:21 +02:00
Duncan Tyler
8c687edb66 Added coverage to unit test for TTParser
http://bugs.koha-community.org/show_bug.cgi?id=5327
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test passes.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-07-12 16:06:20 +02:00
Jared Camins-Esakov
29f88aced8 Bug 8203 follow-up: fix MARCXML export for UNIMARC
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-12 16:03:22 +02:00
Jared Camins-Esakov
68f7ab0a94 Bug 8203 follow-up: QA fixes
Fixes the Save button functionality when YUI is set to be pulled
from Yahoo!'s servers, and adds a copyright statement to the
MARC21slim2MADS.xsl file.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Works now for both yuipaths.
2012-07-12 16:02:09 +02:00
Jared Camins-Esakov
13cbbb79dd Bug 8203: Add ability to save individual authorities
Adds the ability to save individual authority records in MADS, MARCXML, or
binary MARC format to the staff client.

To test:
1. Apply patch
2. View authority record in staff client
3. Try saving record as MADS, MARCXML, and MARC, and confirm that the
   resulting files are what you expect

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works nicely, tested different export options on different records.
2012-07-12 16:02:07 +02:00
Paul Poulain
ba7ac6d3ec Revert "Bug 4460 - Amazon's AssociateID tag not used in links so referred revenue lost"
This reverts commit 68ba16afe8.
2012-07-11 12:33:36 +02:00
Paul Poulain
d08dbb4582 Revert "Bug 4460 - Amazon's AssociateID tag not used in links so referred revenue lost - Followup"
This reverts commit 8e05a85935.
2012-07-11 12:33:16 +02:00
Robin Sheat
42915154d4 Bug 8235 - allow a whitelist of modules that aren't in Debian
This allows modules that aren't in the main debian repos to be handled
by the list-deps script when building a control file.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-07-10 14:17:02 +02:00
f380a6c804 Bug 7848 - Issues data missing from circulation notices
For the CHECKIN and CHECKOUT notices, any data that is issue specific
does not show. For example, date due.

For CHECKOUT, this is caused not passing in the issues table as part
of the 'table' hash used by C4::Letters::GetPreparedLetter.

For CHECKIN notices, we need the old_issues table instead, as the item
has already been returned.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
passes tests, correct information shows in notices.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 13:50:10 +02:00
Paul Poulain
89b164670a Bug 7065 follow-up DBRev number 2012-07-10 12:09:20 +02:00
2662e4c069 Bug 7065 - reserves table needs a primary key
Adds the primary key reserve_id to reserves and old_reserves.

Thanks to gmcharlt and jcamins for contributions.

Signed-off-by: MJ Ray <mjr@phonecoop.coop>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>

Updated DBrev to start with 3.09... instead of 3.08...
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 12:09:01 +02:00
Jared Camins-Esakov
19264af3f4 Bug 8256: Teach webservice to select reports by name
Adds the ability to pass a hash to C4::Reports::Guided::get_saved_report
which specifies a name or id to select the report.

Test plan:
1. Create a report (or choose an existing one), and mark it public
2. Run the report using the web service: [IntranetBaseURL]/cgi-bin/koha/svc/report?id=whatever
3. Confirm you get the expected results
4. Run the report by name using the web service: [IntranetBaseURL]/cgi-bin/koha/svc/report?name=[Report name] (keep spaces in the name)
5. Confirm you get the same results
6. Run the report using the public web service: [OPACBaseURL]/cgi-bin/koha/svc/report?id=whatever
7. Confirm you get the same results
8. Run the report by name using the public web service: [OPACBaseURL]/cgi-bin/koha/svc/report?name=[Report name] (keep spaces in the name)
9. Confirm you get the same results
10. Sign off

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
- Adding, editing and deleting reports works
- id parameter works
- new name parameter works
- public and non-public works

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 11:59:44 +02:00
Marc Veron
9f231c4dd9 Bug 8301 - Display additional system information (preferences) on About page to minimize support cases
To minimize support questions regarding common mistakes, the About
page should have an additional tab that displays warnings if depractated
and/or mutual excluding system preferences are used.

To test patch use values as displayed on screenshot attached.

New: Shows error message in Tab Server Information if Zebra server is not started
(...and changes added...)

Suggestions for other values to add are welcome.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 11:19:02 +02:00
Jared Camins-Esakov
7ddf7cbb03 Bug 8383: Add test to check that Perl scripts compile
This patch adds t/db_dependent/00-strict.pl which tests that all Perl
scripts compile. I chose to use Test::Strict so that in the future we
can also have the test check that "use strict" and "use warnings" are
enabled.

To test:
1. Run t/db_dependent/00-strict.pl.
2. Run around waving your arms in the air that we have a couple of
   scripts that don't compile.
3. Actually, that's about it. You could test my patch for bug 8384 next.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Moved test to t/db_dependent

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 11:13:40 +02:00
Mirko Tietgen
ee9e5ba6b5 Bug 7143 – Bug for tracking changes to the about page
This patch updates the German translators. To be applied after attachment 10681.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-07-10 11:08:25 +02:00
Chris Cormack
7243d9c50d Bug 7143 : Adding Stacey Walker to the history
Signed-off-by: wajasu <matted-34813@mypacks.net>
2012-07-10 11:08:23 +02:00
8e05a85935 Bug 4460 - Amazon's AssociateID tag not used in links so referred revenue lost - Followup
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 10:59:03 +02:00
68ba16afe8 Bug 4460 - Amazon's AssociateID tag not used in links so referred revenue lost
Rewrite of patch authored by Reed Wade <reed@catalyst.net.nz>

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-07-10 10:59:01 +02:00
Mark Tompsett
292cd5b9d2 Bug 8356 - moveitem.tt and linkitem.tt have cataloging typo Changed urls from cataloging to cataloguing
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
correct typo

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 10:56:26 +02:00
Jared Camins-Esakov
3616eee996 Bug 8384: Some Perl scripts do not compile
Fix syntax errors preventing the scripts misc/translator/text-extract2.pl
and misc/cronjobs/thirdparty/TalkingTech_itiva_inbound.pl from compiling.

Remove misc/migration_tools/build6xx.pl entirely since it refers to
columns that no longer exist in the Koha database, and has seemingly
had broken encoding since Koha switched from CVS to git (or before!).

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-10 10:50:58 +02:00
Alex Arnaud
93adbdd16e Bug 7299 pass itemnumber in ILSDI holditem service
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 18:34:36 +02:00
Marc Veron
6c8182531b Bug 8335 - Missing Icon PR.png or typo in MARC21slim2OPACDetail.xsl
Add PR.png (renamed file music.png from http://famfamfam.com/lab/icons/ )

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 18:30:05 +02:00
Colin Campbell
8e485c6112 Bug 8271 teach SIPServer.pm to set its own lib path
SIPServer.pm requires that C4/SIP is added to its lib
path This has been done by passing this directory
to it via -I. By using FindBin it can set the path
for itself correctly. This will also work if the C4/SIP
directory tree is moved to a non-standard location
Removed the now redundant -I. from sip_run.sh

Added a variable to sip_run.sh for the koha tree to
highlight a problem with the script if you have multiple
directories in the PERL5LIB environment variable

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 18:28:11 +02:00
Paul Poulain
b85d5d3440 Bug 7563 follow-up DBRev 2012-07-06 18:26:39 +02:00
Paul Poulain
2ab0b48b78 Merge remote-tracking branch 'origin/new/bug_7563' into new/bug_7563 2012-07-06 18:24:34 +02:00
Marc Veron
45f6b755fa Bug 7563 - Silent print slips using Firefox PlugIn jsPrintSetup and new staff client preference
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 18:23:39 +02:00
Marc Veron
86299b5386 Bug 7563 - Silent print slips using Firefox PlugIn jsPrintSetup and new staff client preference
...to version 3.09.00.021

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 18:20:20 +02:00
Christophe Croullebois
665136f8a0 Bug 6566 Checking if DB's records are properly indexed
Small script that checks if each bibliorecord in the DB is properly indexed
use -h to learn more
(MT #6389)

Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 17:11:39 +02:00
Chris Hall
d74c31d169 bug 8323 fixing year sorting of a list
Signed-off-by: Marc Veron <veron@veron.ch>

Works as expected.

Caveat: If you edit the list in Opac, change the sort and then klick 'Save',
the List always is displayed in title order. This is du to the fact that
save calls opac-shelves.pl?viewshelf=4 without the sort parameter (defaults
to 'title').
If you go back to lists, choose the list from List name, the param is
correct and the list displays in expected order.

It took quite a time to track  that down, I first thought that opac-shelves.pl
was broken.

However, current bug 8323 is not affected, signing off.

Marc

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 17:10:02 +02:00
Paul Poulain
4fcaa4d31e Revert "Added coverage to unit test for TTParser"
This reverts commit 628788ad8a.
2012-07-06 17:00:48 +02:00
Paul Poulain
3a4c547aaa Bug 8233 follow-up fixin DBRev
porting 2nd patch of the bug, that does not apply anymore, to fix DB version
2012-07-06 16:54:44 +02:00
Jonathan Druart
b82d386ecd Bug 8233: Followup: Search engine layer: Add dependencies. 2012-07-06 16:53:54 +02:00
Jonathan Druart
9f1dab122a Bug 8233: Hide the search engine configuration link for Zebra
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-07-06 16:53:53 +02:00
Jonathan Druart
3746ce17ba Bug 8233: Replace the given statement with for
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-07-06 16:53:47 +02:00
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
Marc Balmer
078ce11e11 Bug 7787: Make the SIP server much more robust.
Be liberal in what we accept, but strict in what we send:
Never exit the server process, but send a SC_RESEND message (96)
to the client if we received anything we don't understand.
 This is consistent with SIP server implementations of other ILSs.

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 15:37:37 +02:00
Julian Maurice
57424a9fdc Bug 7286: rebuild_zebra_sliced for biblios and authorities
Complete rewrite of rebuild_zebra_sliced.zsh (renamed to .sh). Main
improvements are:
  - both biblio and authority records are handled
  - records are exported only once

It also add an option --skip-index to rebuild_zebra.pl that permit to
use rebuild_zebra.pl as an 'export only' script.

Description:
Index Koha records by chunks. It is useful when some record causes
errors and stop the indexation process. With this script, if indexation
of one chunk fails, chunk is splitted in 2 (or 3) chunks, and
indexation continue on these chunks.
rebuild_zebra.pl is called only once to export records.
Splitting and indexing is handled by this script (using yaz-marcdump and
zebraidx).

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 15:06:40 +02:00
87eae41e50 Bug 8314 Add MARCISBNs parameter to opac-detail.pl to show multiple isbns in OPAC
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 11:57:43 +02:00
5bad52eef2 added date and ISBN tests to Koha.t
modified:   Koha.t

$ prove  -v ./Koha.t

1..5
ok 1 - use C4::Koha;
ok 2 - use C4::Members;
    1..6
    ok 1 - Insert data in database
    ok 2 - GetAuthorisedValueByCode
    ok 3 - GetKohaImageurlFromAuthorisedValues
    ok 4 - lost and paid works
    ok 5 - Child area works
    ok 6 - Withdrawn works
ok 3 - Authorized Values Tests
    1..4
    ok 1 - C4::Koha->can('GetDailyQuote')
    ok 2 - Got a quote based on id.
    ok 3 - Got a random quote.
    ok 4 - Got a quote based on today's date.
ok 4 - Daily Quotes Test
    1..7
    ok 1 - slashifyDate
    ok 2 - xml_escape() returns empty string on undef input
    ok 3 - xml_escape() works as expected
    ok 4 - ... and does not change input in place
    ok 5 - _isbn_cleanup removes hyphens
    ok 6 - _isbn_cleanup removes parenthetical
    ok 7 - _isbn_cleanup converts ISBN-13 to ISBN-10
ok 5 - Date and ISBN tests
ok
All tests successful.
Files=1, Tests=5,  1 wallclock secs ( 0.02 usr  0.01 sys +  0.48 cusr  0.06 csys =  0.57 CPU)
Result: PASS

http://bugs.koha-community.org/show_bug.cgi?id=5327
2012-07-06 11:35:40 +02:00
Duncan Tyler
628788ad8a Added coverage to unit test for TTParser
http://bugs.koha-community.org/show_bug.cgi?id=5327
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test passes.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 11:35:20 +02:00
Stacey Walker
3fffe40cd1 bug 5327: added some tests for C4/Items.pm
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-07-06 11:33:42 +02:00
Paul Poulain
3ce542ce26 Merge remote-tracking branch 'origin/new/bug_7818' 2012-07-06 11:30:39 +02:00
0072ae6cc8 Bug 7818 : Following, fixing so the packages build Still need to update koha-create to make use of the new file
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 11:17:19 +02:00
Colin Campbell
da49eeb8f9 Bug 7619 Use CRLF as default terminator
Most units require or tolerate CRLF as the terminator
Using only \r causes many including 3M units to signal errors
due to delay this resets CRLF to be default but adds a single
constant variable and explanation so that if you have a
"strictly conforming" unit (the 'Baby' is the only I have encountered
you know where to make the change

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 11:15:05 +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
Paul Poulain
459efb364a Bug 5981 follow-up DBrev number 2012-07-04 16:27:44 +02:00