Commit graph

225 commits

Author SHA1 Message Date
Paul Poulain
fc63a2479f Bug 5354 follow-up : dealing with a wrong regexp
I could not reproduce the working behaviour when I found that the tiny follow-up introduced a bug
| being a reserved char in regexp, split '|' is not splitting on '|' ! we must write '\|' !
2012-03-28 16:17:45 +02:00
Jonathan Druart
a52d3fbf9d Bug 5354: Followup. Change separator 2012-03-28 15:56:45 +02:00
Jonathan Druart
5167e8034d Bug 5354: Partial duplication of a subscription
A new syspref (SubscriptionDuplicateDroppedInput) contains the list of fields to
duplicate when duplicating a subscription. The library will be able to
define that, for example, the internal note should not be duplicated

Test plan:
On the detail subscription page, click Edit > Edit as New (Duplicate):
All the information must be copied from the original subscription.

Fill the syspref SubscriptionDuplicateDroppedInput with a list of fields
you don't want to be duplicated (e.g. location;notes;branchcode).

Repeat the duplicate action. Normally, information for these fields are
not copied.

Signed-off-by: Kristina D.C. Hoeppner <kristina@catalyst.net.nz>
2012-03-28 15:51:23 +02:00
Dobrica Pavlinusic
71d104d20b Bug 7773 - serials/subscription-add.pl scope for plack
This fixes scope of $query and $nextexpected

Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-26 18:14:11 +02:00
Adrien Saurat
ae9ab2c90b Bug 7753: serials-home displays library name instead of code
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-22 06:14:07 +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
Katrin Fischer
b9abfee3ab Bug 7557: Change hardcoded routing list note into a system preference
Adds a new system preference RoutingListNote under the Serials tab.

The note will display above the note from the subscription and replace
the current hardcoded note:

"Notes: Please return this item promptly as others are waiting for it."

The patch adds unique ids to all notes and the note in general, so it
can be styled using CSS.

Also corrects the routing slip template to follow the HTML4 rule.

Update 2012-03-12: Fixed problem in updatedatebase.
2012-03-14 16:27:07 +01:00
Katrin Fischer
88a2079a48 Bug 7523: Improve checks for routing permissions
- system preference RoutingSerials and user permission routing
  should be taken into account
- print routing list should be independent from routing permission

To test, compare to master and check:

1) If system preference RoutingSerials is OFF, routing list functionality is
not visible in the templates.

2) If system preference RoutingSerials is ON, but user doesn't have routing
permission, routing list functionality is not visible in templates,
with exception of 'print list' on the serial collection page.

3) If system preference RoutingSerials is ON and user has routing permissions,
all routing links are visible (serial collection, serials navigation,
result list of serial search)

Additional changes:
Changed labels on templates to match HTML4 rule from coding guidelines.
http://wiki.koha-community.org/wiki/Coding_Guidelines#Upper_and_Lower_cases_in_strings

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:22:01 +01:00
Matthias Meusburger
91d0475a9b Bug 7312: Adds ISSN to serials/subscription-bib-search.pl results
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-17 11:16:38 +01:00
Katrin Fischer
d9d364516b Bug 7521: Templates should use receive_serials permission
Corrects templates to use permission receive_serials.

Before patch:
1) Serial receive page (/cgi-bin/koha/serials/serials-edit.pl...)
can only be accessed with full serials permissions.
When one permission is missing, page can not be accessed.

2) Serial collection/Issue History page (/cgi-bin/koha/serials/serials-collection.pl...)
can only be accessed with full serials permissions.

After applying patch:
1) Serial receive page can only be accessed when user has receive_serials
permission.

2) Edit and serial receive links are hidden, when user doesn't have
serials_receive permission. Page is accessible with at least 1 serials
permission.

I will send a another patch to correct behaviour for the routing permission.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-17 09:51:49 +01:00
Liz Rea
1ddc9322df Bug 7546 - cannot view subscription detail
This patch adds a C4::Search to subscription-detail.pl to compensate for a removed
one from auth.pm during the denesting effort.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

Bug 7546 Do not call routine as bareword

Fixes compilation errors due to calling routine without parens
Also nothing was gained (and obfuscation added) by forcing
the return into a hash ref have changed variable to hash
tidied up the if else chain

These routines should be refactored out future

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

bug 7546 follow-up, enabled_staff_search_views problem

* enabled_staff_search_views was not exported by C4::Search, should have been
* serials/serials-edit.pl were also missing it

Comments:
* checked with for file in */*.pl; do perl -wc $file; done that no script was still having this problem

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Final sign off for all 3 patches
Note: I had some problems with tests, but it is probably related to my data and not this patch.
2012-02-17 09:05:54 +01:00
Colin Campbell
d2c24f3bbf Bug 6790: Remove unnecessary variable from getroutinglist return
getroutinglist returns a count variable to indicate how many elements
are in the array. This is almost always a serious code smell. (We are
programming in a list manipulating language) The routine was executing
am unnecessary loop just to maintain that var.
Removed the variable from the routine and perldoc
refactored calls of the routine removed the c-style loops for
more idiomatic and maintainable for loops
renamed some opaquely named variables
removed a call to the routine where nothing was done with the data
moved some html out of the calling script and into the template

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-23 17:59:27 +01:00
Katrin Fischer
42265ef217 Bug 7338: Follow up: show link only when there is more than 1 subscription
To be tested together with
http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=6690

1) Create a subscription for a title
- check the link 'Show any subscription...' doesn't show now
- check the serials collection page works correctly and shows all
necessary information

2) Create a second subscription for the same title
- check a new link 'Show any subscription...' shows up now
- use links in the issue table to change between viewing the single subscription
and the overview page
- check it works correctly and all information shows up

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>

It works. With this patch, on Serials Collection page, the link, 'See any
subscription attached to this biblio' appears only when there are more than one
subscription attached to the biblio record.
2012-01-06 15:10:47 +01:00
33587674fa Bug 7338 Links on Serial Collection page
Don't display link to the serial, when the collection page displays just
one subscription. Display it when several subscriptions. Alway display a
link for displaying biblio record other subscriptions.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Patch works nicely, but always shows link to 'any subscriptions'.
I did a follow-up so the link would only show if there was more
than 1 subscription for the record.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-06 15:10:35 +01:00
Frédérick Capovilla
acc684bc01 Bug 6479 Converts all the serialseq variables to UTF-8.
Corrects a problem when an UTF-8 character is used in the serial
numbering formula. The encoding became incorrect when concatenating the
number in the subscriptionhistory table.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
To reproduce:
- Create subscription with numbering pattern N° {X}
- Receive 2 or more issues
- Check subscription summary page and manual history fields on the edit screen

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-03 06:31:03 +12:00
Katrin Fischer
d80659ce35 Bug 6589: Adding supplements broken
To test:
- add a new subscription, choose 'create items on receive'
- receive some issues and create items > should work ok
- create a supplement, alone or at the same time as receiving a normal issue
- check if item was created and attached to the biblio record

Without patch this should give you an error message. Although supplement will be created,
no item will be added to the bibliogrpahic record.

With patch applied there should be no error message and the item should be created
and attached to the proper record.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-07-19 19:22:31 +12:00
Katrin Fischer
3b297b0e44 Bug 6305: Subscriptions can not be edited
This seems to fix the problem with editing existing subscriptions. Please test.

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-07-06 08:32:04 +12:00
Colin Campbell
2ab00242d0 Bug 6050 Make calls to GetItemsInfo consistent
Do not misleadingly document or pass an unused second parameter
makes all calls use the single parameter call as the C4
routines already did

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-06-14 14:12:02 +12:00
Colin Campbell
01ccaf84e5 Bug 6240 : pass a hash to template not a scalar
As subscription info was passed as a scalar hashref
template could not access any of the data contained therein
esp Bib and Vendor ids

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-22 07:42:03 +12:00
Chris Cormack
c3912ebf90 Bug 6202 : Fix for showing subscription details
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-20 16:03:36 +12:00
Colin Campbell
0d082204ea Bug5063: C4::Bookseller Changes
Merge unfao changes to C4::Bookseller
Enable warnings in Bookseller.pm
Some cleanups in Bookseller code
Do not export everything by default
Display vendors more rationally
    Was displaying by id make it name as the searchstring is for all
    embedded substrings
Have removed "if mysql" logic as we want to deal with this by
    abstracting the DB interaction and it makes cleaner code until then

Sponsered by UN FAO, Rome

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-03-12 08:42:26 +13:00
Colin Campbell
d22a4d2038 Bug 5026 Undefined dates formatted poorly in serials-edit
Don't display junk in empty fields
Don't generate errors

Merged some changes to make variable names moremeaningful in loops ( within loops)

Thanks to M De Rooy for spotting a couple of issues in the original patch

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-01-17 21:22:14 +13:00
Nicole Engard
b7fdfc1384 bug 4131 have subscription so edit routing if one exists
Changes the template variable checked in serials-menu.inc for determining where to
show 'Create Routing List' or 'Edit Routing List' to hasRouting.

Also adds the $hasRouting variable to serials/routing.pl and serials/routing-preview.pl,
for completeness.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-01-12 12:13:34 +13:00
Colin Campbell
74e63fe0e6 Bug 4286 Allow receiving if subscription enddate not set
HasSubscriptionExpired is not a boolean return it may also
return that a valid subscription enddate is not set
This should not block receipting of issues

Signed-off-by: Nicole Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-12-19 21:18:15 +13:00
Chris Cormack
2529527597 Bug 5508 : Updating copyright statements 2010-12-16 11:49:36 +13:00
Colin Campbell
5bc49fe9eb Fix supplier loop in serials claims
Wrong parameter was being passed to GetLateOrMissingIssues
causing incorrect display of count
Remove superfluous loop creating array we dont use
No need to sort a sorted array
2010-12-15 16:53:12 +00:00
Henri-Damien LAURENT
9bfcf01abd MT3801: Serials not received issues cannot be claimed
waiting issues which where planned for an old date were not "claimable"
This also fixes a bug from commit

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 16:52:56 +00:00
Paul POULAIN
c401514b95 MT2743 : add filter on subscription branch to subscription claims
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 13:17:13 +00:00
Jean-André Santoni
ff36d256b7 (bug #4363) Fix subscription search error when no results
There was a template param assignment before template is loaded.

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 12:52:09 +00:00
Alex Arnaud
ba8a2c7e8a (MT4068) Display callnumber & location in serials-collection.pl & serials-edit.pl.
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 12:46:48 +00:00
Matthias Meusburger
5fbcf225a4 MT3802: Patron notification is not correctly shown in subscription modification
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 12:45:34 +00:00
Henri-Damien LAURENT
c7effbe209 MT3667 followup MT3811 : unexpected issues not stored
As a consequence of previous MT3667 patch, the subscriptionid list was processed.
And unfortunately, since array order is the only relevant information from HTML processing,
it caused subscriptionid to be null for a double edition.
This patch only uses uniq for serials-collection and when passing information to serials-collection page.

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 12:39:29 +00:00
Henri-Damien LAURENT
fc725ae643 MT3667 : multiple display of same subscription
The same subscription would be displayed multiple times when coming from serials-edit.
This patch fixes that problem

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 12:33:11 +00:00
Henri-Damien LAURENT
36e766aa4a merge problem 2010-12-15 12:19:41 +00:00
Jean-André Santoni
0efaa6a41c Replaced CGI dropdown box call wich is deprecated
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
2010-12-15 12:00:13 +00:00
Chris Cormack
96330a7b07 Bug 5484 - Handling bad borrower categories in serial routing lists more gracefully
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-12-14 12:59:14 +13:00
Colin Campbell
aa6ce934d9 Bug 5022 Supplements were not saved correctly
No subscription id was set
Also entered a default arrived date on the supplement
And removed errors due to bad dates returned from GetSerials

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-12-12 20:13:59 +13:00
e54169ba0f Incremental fix for Bug 3285 - Location on Add Subscription should be pull down
- Adds location dropdown to subscription edit form
- Pulls authorised value for display on subscription detail page
- Adds function for pulling authorised value description based
  on category and value

This patch does NOT implement automatic preselection of the shelving
location form field on the serial add item screen. This must be
worked out in order for the bug to be closed.

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-12-07 09:29:05 +13:00
Colin Campbell
48a10d3183 Bug 5032 Remove duplicate code
Two duplicate calls to GetSerials appear to have been merged in
to no purpose other than to generate warnings

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-10-06 07:56:53 -04:00
Colin Campbell
dfaa0e9d35 Bug 5191 Patron notification was being reset to none
The value of the letter variable was not being correctly passed
to the edit template instead it was reset to none
Also compressed some verbage from letter_loop generation
(if you want a scalar use one)
removed an unused $count variable (?!)
and put a couple of lone )s back on the line they came from

Resend to remove wrong utf-9 header.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-10-06 06:03:08 -04:00
Chris Cormack
b3feb54ee0 Cherry-picked onto master, fixing conflicts: MT 1816: Granular permissions for the serials module
Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>

Conflicts:

	installer/data/mysql/en/mandatory/userpermissions.sql
	installer/data/mysql/fr-FR/1-Obligatoire/userpermissions.sql
	installer/data/mysql/updatedatabase30.pl
	koha-tmpl/intranet-tmpl/prog/en/includes/header.inc
	koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-home.tmpl
	serials/member-search.pl
	serials/serials-edit.pl
	serials/subscription-add.pl
	serials/subscription-bib-search.pl
	serials/subscription-detail.pl
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-06-19 07:23:46 -04:00
Colin Campbell
193b4f2883 Bug 4517 - add authentication to reorder_members.pl
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-24 09:09:15 -04:00
Colin Campbell
aec1a31b23 Bug 2505 enable warnings in serials/reorder_members.pl
The only serials routine without warnings enabled was a
script with the least code to generate them
removed the numerous Module use declarations that were not
required
aligned the parameters for a more aesthetically pleasing effect

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-17 08:48:30 -04:00
Colin Campbell
757e1c91cc Bug 3928: Modified date should follow syspref
Changed arriveddate format to follow syspref
Fixed a whitespace error

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-11 07:34:22 -04:00
J. David Bavousett
f0528664ee Bug 3928: Modification of date for serials.
When a serial status is changed to "Arrived" or "Claimed", the "Expected on"
date is changed to the current date.

A bit of rewriting to get it to apply on master - chris@bigballowax.co.nz

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-11 07:34:17 -04:00
Henri-Damien LAURENT
92b076f0df MT3438 : faulty subscription-add branch selection
branch selection could lead to two branches selected
this patch removes the faulty line

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-01 09:11:49 -04:00
Donovan Jones
d5c8104389 Bug 2505 - Add commented use warnings where missing in the serials/ directory 2010-04-21 20:25:26 +12:00
Colin Campbell
255362e3cf Fix FSF Address in directory serials/
Add License statement to those files lacking it
2010-04-08 20:39:49 +01:00
Colin Campbell
ad3594fded Bug 4380 Use syspref to resolve which bib display is used
Be consistent with elsewhere in cataloguing
When switching there from serials

TODO Duplicates Code Should be in a common routine
2010-04-08 20:09:02 +01:00
Colin Campbell
5226371ea3 Remove bottleneck making claims page unuseable
While the idea of showing the number of late serials against the
vendor name was nice it does not scale and on large sites selecting claims
was just timing out. Improved the speed of the initial query but have removed
the big query for each user just to get a count.
Check for 0000-00-00 dates so that C4::Dates does not log error
Removed a variable that was never set and the bit of template used
if the impossible happened
2010-04-08 18:05:42 +01:00