Commit Graph

15731 Commits

Author SHA1 Message Date
Marcel de Rooy d6f8fde92c 7310a: Improving list permissions: Changing Koha SQL structure
Modifying Koha structure for improving list permissions.
Adds new table virtualshelfshares for maintaining shared private lists.
Adds three columns to virtualshelves for permissions per list.
Adds column borrowernumber to virtualshelfcontents.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Feb 28, 2012: Added three FK constraints for QA (for owner/borrowernumber in virtualshelves, shelfcontents and shelfshares). Resolved syntax error with a comment. Tested the install.
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
2012-03-21 16:46:29 +01:00
Marcel de Rooy 8cff38fb24 Bug 7310: Improving lists permissions -- New prefs
Adds two new preferences to OPAC/Policy tab.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
2012-03-21 16:46:27 +01:00
Marcel de Rooy 8b6622761f Bug 7310: DB revision for Improving list permissions
DB revision for improving list permissions.
Adds new table virtualshelfshares for maintaining shared private lists.
Adds three columns to virtualshelves for permissions per list.
Adds column borrowernumber to virtualshelfcontents.

Feb 16, 2012: Rebased.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Feb 28, 2012: Added three FK constraints for QA (for owner/borrowernumber in virtualshelves, shelfcontents and shelfshares). Tested update again.
Also removed the note about public lists, made obsolete by earlier adjustments for comments from Owen.
Feb 29, 2012: Rebased. Added an update statement to replace invalid borrowernumbers with null in virtualshelves before adding constraint and added a delete statement for private lists without owner now (as a result of the first step). Tested it again.
March 5, 2012: Rebased.
March 19: Rebased.
March 21: Rebased.
2012-03-21 16:46:05 +01:00
Paul Poulain 2225bbc62c bug 7092 follow-up: DBRev number 2012-03-21 14:53:37 +01:00
Magnus Enger 20fd03724a Bug 7092 - Complete-subfield searches TraceCompleteSubfields syspref not working correctly
This patch adds a syspref UseICU for toggling between using "" and {} for
quoting in subject tracings. With normal Zebra indexing, "" must be used. With
ICU Zebra indexing, {} must be used.

This syspref interacts with TraceCompleteSubfields and TraceSubjectSubdivisions.

To test:

- marcflavour = MARC21
- make sure you have a record with a "complex subject", like
  "Internet -- Law and legislation"

Toggle UseICU, TraceCompleteSubfields, and TraceSubjectSubdivisions and check
that you get the expected results for the clickable links in the OPAC detail
view:

TraceCompleteSubfields   = Don't force
TraceSubjectSubdivisions = Don't include
UseICU                   = Not using
  opac-search.pl?q=su:"Internet"
UseICU                   = Using
  opac-search.pl?q=su:{Internet}

TraceCompleteSubfields   = Force
TraceSubjectSubdivisions = Don't include
UseICU                   = Not using
  opac-search.pl?q=su,complete-subfield:"Internet"
UseICU                   = Using
  opac-search.pl?q=su,complete-subfield:{Internet}

TraceCompleteSubfields   = Don't force
TraceSubjectSubdivisions = Include
UsingICU                 = Not using
  opac-search.pl?q=(su:"Internet") and (su:"Law and legislation.")
UsingICU                 = Using
  opac-search.pl?q=(su:{Internet}) and (su:{Law and legislation.})

TraceCompleteSubfields   = Force
TraceSubjectSubdivisions = Include
UseICU                   = Not using
  opac-search.pl?q=(su,complete-subfield:"Internet") and (su,complete-subfield:"Law and legislation.")
UseICU                   = Using
  opac-search.pl?q=(su,complete-subfield:{Internet}) and (su,complete-subfield:{Law and legislation.})

Check that clicking on the generated links gives the expected search results,
but with normal and ICU indexing. (I have actually not tested this with ICU, so
doing that before signing off is crucial.)

UPDATE 2012-03-16:

Changed the name of the syspref from TracingQuotes to UseICU after a suggestion
from Paul P., to make it more generally useful.

I have used "Using/Not using" instead of "Use/Don't use" in the description of
the syspref, to reflect the fact that this syspref will not change how Zebra
does its indexing - it's just a way of telling Koha how the indexing is
actually done.

I have also set UseICU = 1 in updatedatabase.pl, since that will preserve the
current behaviour of Koha, but UseICU = 0 in sysprefs.sql, since most new
installations will not have ICU activated.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-03-21 14:53:14 +01:00
Katrin Fischer 87e5e45649 Bug 7734: NO_LIBRARY_SET should be translatable
To test:
- Make sure you are logged into Koha as 'root' user - not superlibrarian
- Before the patch the label will show 'NO_LIBRARY_SET', after applying
  the patch it will be 'NO LIBRARY SET' without underscores.
- Verify correct description is shown after selecting a library.

Signed-off-by: mveron <veron@veron.ch>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 14:40:59 +01:00
Adrien Saurat 813648526d Bug 7744: use of TT date filters on basket pages
TT date filters added on basket.pl and neworderempty.pl

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 14:38:23 +01:00
Katrin Fischer 4392f44f59 Bug 7749: Not all OKs on the start page are translatable
I don't really understand, why the " OK " would not get picked up by
the translation script, but removing the spaces made it work.

To test:
Verify that all OK buttons on the start page are translatable. The one
resisting translation was "Search catalog:"

Signed-off-by: mveron <veron@veron.ch>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 14:36:53 +01:00
Kyle M Hall 4d26038dd2 Bug 6027 - Delete biblios if deleting all their items in batch deletion
Optionally delete bibliographic record when batch deleting items, if no items remain on the record.

Adds deleting of reserves to DelBiblio. Since subscriptions are deleted automatically,
it made sense for deletion of reserves to maintain the same behavior.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
I like the way this works, and it does. Passes tests.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 14:31:38 +01:00
Katrin Fischer 0a9ba9d9df Bug 6831 follow-up: add support for UNIMARC and NORMARC
1) Removes unused subroutine get_host_control_num
2) Fixes small mistake, correct subfield for ISBN 020 is z
3) Checks system preference for correct marcflavour instead of
   assuming MARC21
4) Fixes MARC21 to not use author(), because it would also add
   fields like $w and $0 to 773$a
5) Fixes MARC21 to not use title(), but 245$a, because it would
   also add too many subfields.
6) Adds definitions for UNIMARC and includes NORMARC

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Works properly with all supported MARC flavours.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 11:30:37 +01:00
Colin Campbell adb3777e2e Bug 6831: Add ability to enter adding child record from parent
Simplifies the adding of analytical records and ensures that
the data populating the 773 tag is correct. From the host record
add child record is selected and create bib is entered to generate
a new record with host item tag populated from the parent

Caveat: currently prepare_host_field only returns a field for
MARC21. Values for UNIMARC and NORMARC can easily be added but
should be done by someone familar with those formats
and conventions

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
To test:
- create a new record
--> if you enter a value in 001 anaytics will use that in $w for linking later
--> if you set 000/LDR 19 - Multipart resource record level to 'a' there will
be a link from the parent record to the child record later
- save your record and go to the staff detail page
- in toolbar select 'New' > 'New child record'
- check field 773, 245 and 001 from the parent record should have been copied there
- check links between child and parent in staff

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Fixed conflicts in all 3 files.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Works properly for MARC21, and follow-up adds support for NORMARC and UNIMARC.
2012-03-21 11:30:35 +01:00
Janusz Kaczmarek fe37dd8167 Bug 5657: Changes made to sub merge to eliminate errors occuring when updating bibio records in batch (after updating multiple authority records)
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 11:13:17 +01:00
Paul Poulain f80c926013 Bug 7144 string follow-up: reordering text
the table below show checkout/hold/return, so the description should be in the same order for a better consistency

Plus the term "return" is used elsewhere in the page, so s/checkin/return/
2012-03-21 11:02:01 +01:00
Paul Poulain 00bd409a9a Bug 7144 followup DBrev number 2012-03-21 10:40:16 +01:00
Paul Poulain 9390382a46 Bug 7144 follow-up cleaning for HTML4 coding guideline
http://wiki.koha-community.org/wiki/Coding_Guidelines#Upper_and_Lower_cases_in_strings
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 10:28:32 +01:00
Ian Walls d92c595dc4 Enhancement 7144: Floating Collections (per branch/itemtype)
Adds support for Floating Collections (i.e. items that don't automatically return
home when checked in at another branch) on a per branchcode/itemtype basis.

This patch adds a new column (returnbranch) to the default_circ_rules, default_branch_item_rules,
default_branch_circ_rules and branch_item_rules tables, after the 'holdsallowed' column.  While
this is coded as a varchar(15), the only currently supported values are 'homebranch', 'holdingbranch',
'noreturn' and NULL.

On upgrade, the value of HomeOrHoldingBranchReturn is used to populate the global default (which is
stored in default_circ_rules.returnbranch).

To access this value, use C4::Circulation::GetBranchItemRule.  This subroutine is altered to supply
an additional key, "returnbranch", containing this value (or 'homebranch' as a default).  No existing
usage of GetBranchItemRule should need to be modified.

The use of HomeOrHoldingBranchReturn is removed in AddReturn to instead use this subroutine.  This will
determine, on a more granular level, where the item should be transferred, after all is said and done.  If
'noreturn' is specified, then the material will remain at the branch doing the checking in.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Passes prove t xt t/db_dependent

I was able to make this feature work as advertised.
As noted above, if you want a floating rule applied across all branches, adding a single default rule won't suffice, you'll need to add the rule to all branches. That issue is not related to the functioning of *this* patch however.
2012-03-21 10:28:26 +01:00
Adrien Saurat d266ccb81f Bug 7735: removal of C4::Dates when unused
Removes use of C4::Dates in acqui/ordered.pl and acqui/spent.pl

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 18:11:04 +01:00
Matthias Meusburger d91bb113f0 Bug 6025: Adds a script that re-create missing statistics from issues and old_issues tables
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 17:02:33 +01:00
Jared Camins-Esakov d7fe2f24db Bug 7600: Return a single-pixel GIF when no local cover image exists
Signed-off-by: Kristina D.C. Hoeppner <kristina@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 16:54:31 +01:00
Ian Walls f7a7b34bdf Bug 7697: Remove unused textmessaging parameter from OPAC main/user
Removes the textmessaging parameter from opac/opac-main.pl and
opac/opac-user.pl, since it's not utilized anywhere in the templates, and is
sourced from a field that no longer exists in the borrower
table (textmessaging).

This also removes a dependency on C4/Members.pm from opac-main.pl

To Test:  Login to the OPAC, and view both opac-user.pl and opac-main.pl. Both
pages should still render properly.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 16:49:36 +01:00
Jonathan Druart 692ee0e9da Bug 7166: Adds edit order notes when the basket is closed
When you are on parcel.pl or basket.pl you can now add or edit a note
 for each order.

 To test:
 Create orders with and without note.
 Edit/Add the note on basket.pl page

 Close the basket.
 Check you can add/edit the order note on parcel.pl page

+ From Owen:
Correcting markup issues with modordernotes.pl:

- Adding "rows" and "cols" attributes to <textarea> (required)
- Converting cancel button to link to stay consistent with
  other pages
- Changing page layout to fixed & centered (not sidebar needed)
- Expanding information in breadcrumbs to match information
  on basket.pl

Changing markup around note add and edit links: Moving output
of order note to the end of the table cell, putting it in its
own paragraph, and adding a "Note:" label

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 16:45:37 +01:00
Paul Poulain 8086b52ce5 Bug 7235 follow-up: removing some upper cases
(see coding guidelines : Add Item => Add item)
2012-03-20 16:43:01 +01:00
Katrin Fischer f371b749af Bug 7235: Add order date and checks for permissions
- Adds order date above vendor
- Reordered fields to reflect history of the item
- Order information (order date, vendor) is only shown, when an order exists
- Accession date is only linked, when item was received in acquisition
- Links to basket and invoice are only shown when user has the correct permission
  - order date: manage_order
  - accession date: receive_shipment for invoice
- Changes all dates to use the KohaDates TT plugin
- Corrects display of rental price, removing additional zeros

To test:
1) Create a record with
- 1 item created in cataloguing
- 1 item ordered
- 1 item ordered and received
- 1 item checked out
2) Verify the correct information is shown for each
3) Verify links on the dates work correctly
4) Toggle permissions for the user

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Followed the test plan and all tests pass.

Signed-off-by: Marijana Glavica <mglavica@ffzg.hr>

changed supplierid to booksellerid

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 16:11:44 +01:00
Srdjan Jankovic dcca450944 Bug 7235: Adding invoice number and vendor name to the moredetail page
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-03-20 16:11:41 +01:00
Paul Poulain a8aa3b05e3 welcome gaetan, you're 179th ! 2012-03-20 15:58:50 +01:00
Gaetan Boisson d500929cfd Bug 7731 - Library should be used instead of branch and site
standardized the use of the term "library" instead of "Branch" accross the interface and opac

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 15:17:08 +01:00
Paul Poulain c9d0c16867 Merge remote-tracking branch 'origin/new/bug_7408'
Conflicts:
	installer/data/mysql/sysprefs.sql
2012-03-20 15:03:15 +01:00
Chris Cormack 932296415b Bug 7408 : Fixing a typo that was breaking the installer
Signed-off-by: Kristina D.C. Hoeppner <kristina@catalyst.net.nz>
2012-03-20 14:59:05 +01:00
Paul Poulain c6746ff4a3 Merge remote-tracking branch 'origin/new/bug_8250' 2012-03-20 14:54:10 +01:00
Paul Poulain 1d1786f60c bug 7086 follow-up: removed warn
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 14:53:03 +01:00
Paul Poulain 90ba8e846a bug 7086 follow-up: removed warn 2012-03-20 13:48:33 +01:00
Adrien Saurat dc18719e3a Bug 7086 : "suggested by" fixed for staff members
Now:
- suggested by is stored when a staff member makes a suggestion
- managed by is only updated when a suggestion is edited (not when
it is created)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 13:46:41 +01:00
Adrien Saurat b38aec8aae Bug 7434: Display of issue number for serials in overdues
items.enumchron is now displayed when not null

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 13:42:55 +01:00
Owen Leonard 74753b4b69 Bug 7719 - Change state of controls based on whether boxes are checked
Some OPAC interface controls cannot function unless a checkbox is
checked. Examples:

- Placing a hold on multiple items in the cart window or on a list view page
- Adding tags to multiple items in the cart window or on a list view page
- Removing one or more items from the cart window
- Removing one or more items from a list on the list view page
- Adding one or more items to a list from the cart window

This patch moves these controls into a separate div in which links
are enabled or disabled based on whether checkboxes are checked. It
does so on two pages: The lists view page (when viewing the contents
of a list) and in the cart window.

Links which are in their disabled state should not perform any action.
After checking one or more checkboxes the links should become active
and behave normally.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Works in chrome and firefox (latest). Passes tests.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 11:56:32 +01:00
Julian Maurice 3b0d4e04e0 Bug 6440: Implement OAI-PMH Sets
New sql tables:
  - oai_sets: contains the list of sets, described by a spec and a name
  - oai_sets_descriptions: contains a list of descriptions for each set
  - oai_sets_mappings: conditions on marc fields to match for biblio to be
    in a set
  - oai_sets_biblios: list of biblionumbers for each set

New admin page: allow to configure sets:
  - Creation, deletion, modification of spec, name and descriptions
  - Define mappings which will be used for building oai sets

Implements OAI Sets in opac/oai.pl:
  - ListSets, ListIdentifiers, ListRecords, GetRecord

New script misc/migration_tools/build_oai_sets.pl:
  - Retrieve marcxml from all biblios and test if they belong to defined
    sets. The oai_sets_biblios table is then updated accordingly

New system preference OAI-PMH:AutoUpdateSets. If on, update sets
automatically when a biblio is created or updated.

Use OPACBaseURL in oai_dc xslt
2012-03-20 11:38:26 +01:00
Magnus Enger aac5379b22 Bug 7696 - NORMARC lacks staff results XSLT
This patch adds NORMARCslim2intranetResults.xsl, to enable XSLT display
of intreanet search results when marcflavour = NORMARC. Most of the
logic is copied verbatim from NORMARCslim2OPACResults.xsl.

To test:

Make sure you have these system preferences set:
marcflavour = NORMARC
XSLTResultsDisplay  = using XSLT stylesheet

NORMARC and MARC21 is similar enough that testing on MARC21 records should
be OK. (I don't expect anyone to do detailed testing of a lot of the different
positions in leader, 007, 008 etc...)

Before the patch: viewing results in the staff client should give an error
message about a missing XSLT file.

After the patch: Record details should be displayed in the search results,
similar to how it is done for MARC21.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 11:24:45 +01:00
Kyle M Hall 24dc37a490 Bug 7526 - longoverdue.pl leaves items marked as lost as still checked out to patron
When the longoverdu.pl script is run, and it marks an item as lost ( using
LostItem() ), if fails to remove the item from the borrower record. So, the
item is marked as lost, but is also still listed as checked out to the
borrower.

This commit adds the command line parameter --mark-returned. If used,
longoverdue.pl will remove lost items from the borrowers record.
Functionality will remain the same if it is not used.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

http://bugs.koha-community.org/show_bug.cgi?id=7426
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 11:22:52 +01:00
Jared Camins-Esakov 9f7e340f82 Bug 7724: Skip Linker test if Zebra isn't set up
One of the tests in t/db_dependent/Linker_FirstMatch.t ony works if Zebra is
running and authorities have been indexed. This was causing Jenkins agitas.
The test should be skipped if Zebra isn't running or authorities have not been
indexed at the time the test is run.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 11:21:10 +01:00
Owen Leonard b3cae76694 Bug 5596 [REVISED 2] add author to holds to pull report
Adding output of author.

Signed-off-by: Kristina D.C. Hoeppner <kristina@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-19 18:30:11 +01:00
Jonathan Druart f3ba35c0a0 Bug 7301: 'From' field is 1 year ago by default
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-19 18:28:17 +01:00
Matthias Meusburger 1e7437bbae Bug 7400: Add auto-completion on auth_finder
While typing an authority, will automatically propose authorities (similar to
autocompletion for patron search if activated)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Tested searching for authorities with and without autocomplete. Note that
this is most useful when used in the "Main entry" box instead of the
"Main entry ($a only)" box.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Corrected tabs to spaces in auth-finder-search.inc while resolving merge
conflict.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-19 18:20:30 +01:00
Jonathan Druart c548761bc1 Bug 7477: Followup: Fix perlcritic issues
Signed-off-by: Srdjan Jankovic <srdjan@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
An existing holiday in a branch is not deleted when the branch is overwritten:
* branch B, set today as closed
* switch to branch A, where today is not closed
* copy holidays to branch B
* today is still closed for branch B

That's important to notice for the documentation
2012-03-19 18:16:40 +01:00
Srdjan Jankovic c5b878697e Bug 7477: Copy holidays from one branch to another
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
2012-03-19 18:10:44 +01:00
Owen Leonard 20b68731e3 Bug 7668 - Improve navigation and toolbar options in guided reports
Creating new include, reports-toolbar.inc for presenting "action"
options to the user, in contrast with "view" options in the left-
hand navigation menu.

In the toolbar: New (guided report, SQL report), Edit, Run.

The presence of the toolbar allows the user to access functions
more flexibly: Getting directly to 'edit' or 'run' from the 'view'
page for instance.

Modifications to guided_reports.pl pass report id and name to
the template for clarity and for the purpose of enabling the
edit/run buttons.

To test: Apply the patch and go through the process of creating
a new saved SQL report. Note that the toolbar is present and
the buttons are functional at appropriate times.

New and Edit options should only be displayed if the user has
permission to create reports. Test with a user who does not
have create permission to confirm.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-19 18:00:15 +01:00
Srdjan Jankovic 973f84513f bug_7140: Added item description to complement icon to search result and biblio detail pages
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This seems like a very big improvement, especially for people using screen
readers. I agree that the change to C4::Search is required.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-19 17:52:45 +01:00
Paul Poulain 2eb590c269 C4::Members follow-up
Overdues already loaded, must set full sub patch

http://bugs.koha-community.org/show_bug.cgi?id=6875
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Fixes issue with circ/branchoverdues.pl
Passes tests.
2012-03-19 17:49:40 +01:00
Paul Poulain d69ebc0568 Bug 6296 follow-up: DBrev 2012-03-19 17:37:31 +01:00
Robin Sheat 4cbeeedbe8 Bug 6296: allow users to be authenticated by SSL client certs
This adds a new syspref: AllowPKIAuth. It can have one of three states:
* None
* Common Name
* emailAddress

If a) this is set to something that's not "None", and b) the webserver
is passing SSL client cert details on to Koha, then the relevant field
in the user's certificate will be matched up against the field in the
database and they will be automatically logged in. This is used as a
secure form of single sign-on in some organisations.

The "Common Name" field is matched up against the userid, while
"emailAddress" is matched against the primary email.

This is an example of what might go in the Apache configuration for the
virtual host:

    #SSLVerifyClient require # only allow PKI authentication
    SSLVerifyClient optional
    SSLVerifyDepth 2
    SSLCACertificateFile /etc/apache2/ssl/test/ca.crt
    SSLOptions +StdEnvVars

The last line ensures that the required details are
passed to Koha.

To test the PKI authentication, use the following curl command:
    curl -k --cert client.crt --key client.key  https://URL/
(look through the output to find the "Welcome," line to indicate that a user
has been authenticated or the "Log in to Your Account" to indicate that a
user has not been authenticated)

To create the certificates needed for the above command, the following series
of commands will work:
    # Create the CA Key and Certificate for signing Client Certs
    openssl genrsa -des3 -out ca.key 4096
    openssl req -new -x509 -days 365 -key ca.key -out ca.crt
    # This is the ca.crt file that the Apache config needs to know about,
    # so put the file at /etc/apache2/ssl/test/ca.crt

    # Create the Server Key, CSR, and Certificate
    openssl genrsa -des3 -out server.key 1024
    openssl req -new -key server.key -out server.csr

    # We're self signing our own server cert here.  This is a no-no in
    # production.
    openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key \
        -set_serial 01 -out server.crt

    # Create the Client Key and CSR
    openssl genrsa -des3 -out client.key 1024
    openssl req -new -key client.key -out client.csr

    # Sign the client certificate with our CA cert. Unlike signing our own
    # server cert, this is what we want to do.
    openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key \
        -set_serial 02 -out client.crt
    openssl pkcs12 -export -in client.crt -inkey client.key -out client.p12
    # In theory we can install this client.p12 file in Firefox or Chrome, but
    # the exact steps for doing so are unclear, and outside the scope of this
    # patch

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Tested with Common Name and E-mail authentication, as well as with PKI
authentication disabled. Regular logins continue to work in all cases when
SSL authentication is set to optional on the server.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
QA comment: synchronized updatedatabase.pl version of syspref with sysprefs.sql
version, to avoid divergent databases between new and upgrading users.
2012-03-19 17:02:44 +01:00
Paul Poulain 235a9dfb7d Merge remote-tracking branch 'origin/new/bug_7408' 2012-03-19 16:55:25 +01:00
Frédéric Demians 8db5a6dadb Bug 7408 Fix ExpireReservesMaxPickUpDelayCharge syspref definition
Allow preferences translation

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
This patch fixes another sysprefs problem -
Syck parser (line 300, column -1): syntax error at /usr/lib/perl5/YAML/Syck.pm line 76, <$fh> line 1.
when clicking local use. I could not verify that it fixed translations, but fixing the local use prefs is important too, so I'm signing off.
2012-03-19 16:55:10 +01:00