ISO dates were being compared with DateTime objects, and DateTime::Durations
with integers. This patch reimplements the _FixFineDaysOnReturn subroutine
to use the new hourly loans functionality.
Also moves date formatting of patron debar date out of circ/returns.pl and into
KohaDates on the template
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
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>
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>
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>
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.
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.
Adds a date picker for SQL reports with the 'date' authorised_value. Updates help
documentation for this new feature, as well.
To test:
1. Create a new report with two date parameters, using the syntax:
<<Label for this selection of date|date>>
2. Run the report
3. Select dates
4. The SQL generated should format the dates properly in ISO, and keep track of which
date is which
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Adding "required" style and "Required" note to additem fields,
consistent with the way required fields are displayed
on the add patron form.
This patch also corrects an error in the client-side validation
script which misidentified which fields were required. Leaving
a required field empty should result in an alert and the missing
field being highlighted in yellow.
To test, open the add item form on a record which uses
a framework in which one or more item fields are required.
Required fields should be labeled in red and appended with a
"Required" note.
Submit the form while some required fields are empty. You should
see a javascript alert. The empty mandatory fields should have
a yellow background.
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Works - passes tests.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This is a single line fix. Initializing the msg var to an empty
string solves the problem.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This patch removes invalid markup from the language chooser
in the intranet. It also copies the markup and style of
the staff client include to the OPAC so the two are
more consistent. I hope that will make future changes
and debugging a little easier.
I believe this patch also fixes Bug 7366, "Language chooser
display problems."
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Patch fixes bug 7366, but there is still a difference between staff
and OPAC.
Installed languages: en, en-NZ, de-DE, fr-FR
Activated langauges: en, en-NZ, fr-FR
OPC shows English, staff shows en-NZ as label for the list.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
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.
This follow-up patch corrects some markup errors and removes some
markup which I think is superfluous:
- Using template FILTER command to remove invalid punctuation from
ID attributes (to quiet the HTML validator)
- Removing <fieldset> since options are bordered by the tab box now
- Correcting the conditional which controls the table markup
to prevent extra/missing </tr>
- Adding missing ID attribute in the OPAC template
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Adds the ability to perform advanced searches in both the OPAC and staff client on more than
a single AdvancedSearchType at a time. Support included for Itemtype, Collection Code and Shelving Location.
AdvancedSearchTypes syspref preference is repurposed; no longer a single value, it can now take
multiple item code fields separated by "|". The order of these fields will determine the order
of the tabs in the OPAC and staff client advanced search screens. Values within the search type
are OR'ed together, while each different search type is AND'ed together in the query limits. The
current stored values are supported without any required modification.
Each set of advanced search fields are displayed in tabs in both the OPAC and staff client. The
first value in the AdvancedSearchTypes syspref is the selected tab; if no values are present, "itemtypes"
is used. For non-itemtype values, the value in AdvancedSearchTypes must match the Authorised Value name, and
must be indexed with 'mc-' prefixing that name.
<li> elements in tab are assigned unique IDs, so the text of the tab can be altered to match the
library's needs (using JQuery)
The logic to handle the 5 element row limit has been moved from the Perl to the templates, since Template::Toolkit
has a simple method for extracting the count of an element in a loop and performing 'modulus' on it.
2011-12-21: Incorporated changes recommend by Owen Leonard on bug report.
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
To test:
1. Edit a patron, and try to use the datepicker to set the date the patron is
restricted until.
2. Note that the datepicker does not come up.
3. Apply patch.
4. Repeat step 1.
5. Note that the datepicker does come up.
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
To test:
- switch on UseControlnumber
- add a serial record with 001
- ldr pos 19 = a or
- 008 (continuing resource), pos 21 = m
- add 2 analytics with with $w subfields containing the 001 of the serial
- one with ldr pos 7 = a
- one with ldr pos 7 = b
- add 1-2 monographical records linked to the serial
- 8xx $w subfield containing the 001 of the serial
- 490
The serial should show 2 links (in both OPAC and Intranet):
'Show volumes' should only bring up the monographical records.
'Show analytics' should only find the analytical records.
Without the patch both links would find all linked records, no difference
between both links.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
hide link to neworderempty if user does not have order_manage permission
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This patch moves the display of the patron image in self-checkout
from above the checkout form into a column to the right of the
form.
The patch also corrects an error in the display of the page title
which was preventing correct display of the library name. To test
this change confirm that the page title shows the value of your
LibraryName system preference or "Koha" if the preference is empty.
http://bugs.koha-community.org/show_bug.cgi?id=7631
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Confirmed working as expected. Passes template tests.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
If a vendor/bookseller has no basket/subscription link, it can now
be deleted (after a JS confirmation).
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Verified that I can only delete vendors without linked orders or
subscriptions.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Patch fixes problem for syndetics + bibs with no ISBN. Also adds "no image found" capability to Syndetics results.
To test (first, contact me and I will let you use my syndetics credentials *for testing this bug only*):
* replicate bug - have a bib with an ISBN, and one without. The one with the ISBN should show a cover, the one without will show a broken image.
* apply patch
* search for the same bib - you should now see "no image available" for the one with no ISBN, and a cover image for your bib with an ISBN.
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
QA Comment: normalized spacing
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This patch hides the "send cart" link if the opacuserlogin
preference is set to disallow. Other similar changes included:
- hide the "send list" link
- hide the "your lists" tab
- hide the "log in to create your own lists" link
- hide the "recent comments" link
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Tested with opacuserlogin set to both "Allow" and "Don't allow." With
opacuserlogin set to "Allow," the links showed up, and with opacuserlogin
set to "Don't allow," the links did not.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
to export a file containing a list of checkin barcode for the current day.
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This patch amends the preferences page's CSS file to add
bottom padding to the page container. This gives the bottom-
most submit button some breathing room.
Markup correction: Adding "row" and "col" attributes to
<textareas> to quiet validation errors. This doesn't
affect output at all (dimensions are specified in CSS).
To test, open the system preferences page to a tab like OPAC
which contains many preferences. At the bottom of the page
the last submit button should have about a line's worth of
white space below it.
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
- Fix sql syntax error
- Fix Encoding
- SendAlerts must return an error if no email is defined
- Get error if no email in memberentry
http://bugs.koha-community.org/show_bug.cgi?id=7001
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
The suggestion view was suggested to be able to display the suggestion from a basket line (when it comes from a suggestion, see bug 5346)
This tiny follow-up introduce this link
If the new syspref ExpireReservesMaxPickUpDelay is enabled,
this will cancel holds that have been waiting for longer than the
number of days specified in the syspref ReservesMaxPickupDelay.
If ExpireReservesMaxPickUpDelayCharge is set, the borrower charged the fee set therein.
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Altered circulation.pref to include currency class and [% local_currency %] param
Branches can have their own version of notices - added branchcode to
letter table.
Support html notices - added is_html to letter table.
Support for borrower attributes in templates.
GetPreparedletter() is the interface for compiling letters (notices).
Sysprefs for notice and slips stylesheets
Added TRANSFERSLIP to the letters
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>