Assigned DBrevs as follows:
049: additional correction per bug 2611
050: OPACSearchForTitleIn system preference
Also fixed syntax errors in code for 050.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Realized that we don't want to update the notices in existing installs
as this would overwrite any changes and customizations libraries
may have made.
Original commit: 10b7bab4445c92f7f647be53e4b0ea858cbb2a84
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
This preference allows librarians to control which links appear
in the 'More Searches' box on the opac detail page. If the
preference is left blank the 'More Searches' menu will not apear
on the opac detail page at all.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
* set DB changes as revs 047 and 048
* ensured that itemcallnumber was widened to 255 in items and
tmp_holdsqueue
* adjusted DB update descriptions
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Squashed commit of the following:
commit e9dd6e1dee03fe3503f7995b57510f9edfe6b333
Author: Chris Cormack <chrisc@catalyst.net.nz>
Date: Wed Aug 19 08:14:53 2009 +0000
Version number
commit df3ee5473e79b760a91c62b96d7ce19229e0fd27
Author: Chris Cormack <chrisc@catalyst.net.nz>
Date: Wed Aug 19 08:08:11 2009 +0000
French systempref
commit c4b036e4e43947d7d1fb9f2e18e460788cb4e1ec
Author: Chris Cormack <chrisc@catalyst.net.nz>
Date: Wed Aug 19 00:25:33 2009 +0000
Code to update the database, and updating the sysprefs.sql
commit f74b942c24d5e9c33a4ec0e5ac706a0e347eb1a7
Author: Chris Cormack <chrisc@catalyst.net.nz>
Date: Tue Aug 18 02:07:22 2009 +0000
Now hides the name on the detail screen too
commit 53c80dbef88e360a4bbb78ecff3a6ca6ec401398
Author: Chris Cormack <chrisc@catalyst.net.nz>
Date: Tue Aug 18 01:35:19 2009 +0000
Allowing the librarians to choose to hide the borrowers name on holds
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
* Fixed case of copy-and-pastitis in DBrev descrieption
* Inserted description for new syspref
NOTE: Please do not leave the system preference description blank
in the updatedatabase entry - even for non-English users, an English
description is more useful than a blank one.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Button added to clear the last Borrower record after transaction is complete
To enable, turn on the syspref DisplayClearScreenButton.
This work was sponsored by Middletown Township Public Library, Middletown, NJ USA
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Set items.permanent_location to the current value
of items.location - otherwise, the item shelving location
could get blanked as existing items are checked in.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Allows temporary locations corresponding to 'in processing' and 'shelving'
so that newly-created items, and newly-returned items do not show
immediately as a available. Three new system preferences govern the usage
of these features.
NewItemsDefaultLocation. If system pref NewItemsDefaultLocation is set to a location code,
all newly catalogued items will be set to the location set in this preference.
Location code must be a valid LOC authorized value type.
InProcessingToShelvingCart. if the system pref InProcessingToShelvingCart is turned on,
any items run through returns.pl with a location code for 'PROC', will be modified to
have a new location code of 'CART'.
ReturnToShelvingCart. If the syspref ReturnToShelvingCart is turned on,
all items returned other than confirmed holds will have a new location code of 'CART'.
Any item issued is automatically taken of the shelving cart.
Adds a cron script shelf_to_cart.pl which should be run hourly.
Updates all items with a location of CART to the item's permanent location.
The original location code is stored in the new items column 'permanent_location'.
Original Author: PTFS Contractor <dbavousett@ptfs.com>
This work co-sponsored by
Middletown Township Public Library, Middletown, NJ USA and
East Brunswick Public Library, East Brunswick, NJ USA
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Also changed default value of OPACFineNoRenewals to 99999
when upgrading existing databases so that there's no (likely)
sudden change in OPAC behavior.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
This introduces a new system preference, OPACFineNoRenewals, that sets a
limit on the total fines a patron can have before they can no longer
renew their own books. opac-user.pl has been updated to obey this limit.
This work sponsered by East Brunswick Public Library, East Brunswick, NJ USA
Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
The AWSPrivateKey syspref is describe more fully
in a previous commit, but to summarize, it should
contain the Amazon Web Services Secret Access Key
required by Amazon to sign requests to their
Product Advertising API.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
After 2009-08-15, Amazon Web Services will expect that
all requests to the Product Advertising API, which is what
Koha uses for retrieving reviews and other enhanced content
from Amazon, include signatures. This patch and
subsequenct patches implement this functionality.
What this means in practice (assuming the user has elected
to use any enhanced content from Amazon) is that
[1] The user must get a Amazon Secret Access Key. This can
be done by logging in to the user's AWS account
at (e.g.) http://aws.amazon.com/, going to the 'Access Identifiers'
page, and from there retrieving and/or creating a new Secret
Access Key.
[2] The contents of the Secret Access Key should then be
entered into the new AWSPrivateKey system preference.
Once that is done, grabbing reviews and table of contents from Amazon
should work as normal. If the user doesn't do this before 2009-08-15,
reviews and TOCs will no longer be supplied from Amazon, although there
should be no crashes - the content will simply not show up.
Note that the requirement to sign requests does *NOT* appear to apply
to simply displaying book covers from Amazon.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
This is the two system preferences controlling this feature, and the
updatedatabase addition using db verion 3.01.00.040
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
* Added missed SpineLabelAutoPrint to updatedatabase;
this preference controls whether labels generated
by the new quick spine label tool are printed automatically
* put SpineLabelAutoPrint and SpineLabelFormat in the
Cataloging section of the syspref editor
* set height and width for the SpineLabelFormat textarea
in the syspref editor
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
This is a small tool for quickly printing spine labels using dedicated label printers.
It is located in the Tools page as Quick Spine Label Creator.
The system preference SpineLabelFormat defines which fields will be displayed.
The pref SpineLabelAutoPrint will make the print dialog pop up automatically.
The CSS file spinelabel.css controls all presentation for the labels.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
[1] Removed POD: not a bad idea, but if we do it,
there should be more substance to the messages
[2] Improved description of change
[3] Removed extra 'my' qualifier.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Adds 5 columns to the `branches` table: `branchzip`, `branchcity`,
`branchcountry`, `branchurl` and `branchnote`.
I/O operations for these fields are not included.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Development is in progress for brief records
in Koha; until that's done, this framework can
be used to add a minimal record.
Created by debra.denault@liblime.com
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
* Added definitions of the new display sysprefs:
viewISBD - Allow display of ISBD view of bibiographic records
viewLabeledMARC - Allow display of labeled MARC view of bibiographic records
viewMARC - viewMARC Allow display of MARC view of bibiographic records
* Adjusted IntranetBiblioDefaultView
* made type choice (fixing bug 1933)
* added better description for English
* added labeled_marc option
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch modify the database to have a grace period which can be set. And is used to create automatically new waited issues with a
cronjob(which is in this patch), and set old issues to "late" status.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch modifies the database for the messaging
preferences enhancement <http://wiki.koha.org/doku.php?id=en:development:rfcs3.2:rfc32_defaultmessagingsettings>
as follows:
* adds a categorycode column to borrower_message_preferences
This allows a set of messaging preferences to be linked
to a patron category
* allow the borrowernumber column to be null
This allows a messaging preference set to be linked
*only* to a patron category. If MySQL had check
constraints, I would add one so that exactly
one of borrowernumber and categorycode in a row in
borrower_message_preferences could be NULL.
* add a FK constraint from borrower_message_preferences.categorycode
to categories; if you delete a patron category, any default preferences
associated with it will be automatically deleted.
The messaging preference enhancement was sponsored by the Northeast
Kansas Library System (NEKLS).
Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Same as Joe's prior 2897 patch, but applied to the English
sample_notices.sql - due to a Git merge and rename detection
oddity, his original submitted patch was applied to the French
sample_notices.sql. Since the two files are
currently identical, no problem in the end.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
items.content is invalid for anything but overdue notices. It is
not processed by advance_notices.pl for DUE and PREDUE. Also, the
odd greeting "Dear firstname title" is standardized to match the
other messages' "Dear firstname surname".
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Reconciliation patch to add the RenewalPeriodBase system
preference, which per code by Nahuel Angelinetti changes
the process of calculating the due date after a renewal:
If RenewalPeriodBase is set to 'now', the due date is
set to the current date + the loan period. This is the
current behavior.
If RenewalPeriodBase is set to 'date_due', the due date
is set to the due date before the renewal + the loan period.
Unless like the corresonding database update in the 3.0.x branch
(3.00.01.007), the default value of RenewalPeriodBase is set to
'now' so as not to unexpectedly change the calculation.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch just check the syspref and use it as base date of renew.
Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
* moved to DB rev 030
* assigned AllowNotForLoanOverride to circulation syspref category
* added a hint to the circulation operator: when the
AllowNotForLoanOverride is ON, if the operator attempts
to check out an item that is normally not for loan due to
its item type or because the item is explicitly marked as
not-for-loan, the operator is given the chance to check
out the item anyway.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
If the syspref 'AllowNotForLoanOverride'(YESNO) is set to YES, the librarian is able to force a loan on an item set as "not for
loan".
If the item is not for loan and the syspref is set to YES, koha will ask to the librarian if he really want to check-out it, else
do nothing.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Fixes bug where searching with the language limit set
to Spanish would instead retrieve Russian records.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
The result of this apparent copy/paste error is that adv. search
limits by Language=Spanish would return results for Russian!
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Add AmazonReviews syspref.
DOCUMENTATION:
AmazonReviews is OPACAmazonReviews counterpart,
except that in staff interface Editorial Review
is displayed alone, without reader reviews.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
If you've never truncated your zebraqueue table, you might want to
update your index and truncate it before applying this patch and running updatedatabase.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch removes the system preference from new installations.
No db revision is supplied to remove the system pref from existing installations.
It is recommended for administrators to use the scripts provided in the misc/ directory
to ensure that their system preferences are in sync with those used in code.
Admins should remove this preference from existing installations manually.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This is the database update to add the system preference for
numReturnedItemsToShow
[RM note: DB rev 026]
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This adds a system preference controlled feature. This controls how
many returned items are shown on the check-in page.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This adds a feature and system preference: ceilingDueDate. If this is
set to a valid ( according to dateformat syspref ) date, then calculated
due dates will be less than this date.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
labels.batch_id should be int as the value is always an integer. This corrects
the problem.
[RM note: ported patch to HEAD. DB rev 024]
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Changing isbn data from 14 to 30 in order to manage friendlier,
isbn with - inside, and multiple isbns.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
* add to enhanced content tab of syspref editor
* during upgrade, if database has OPACAmazonEnabled
turned on, ensure that OPACAmazonReviews is on
as well.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Extends Christopher Hyde's patches to add LTFL support
as follows:
* adds fr-FR system preferences
* adds updatedatabase.pl
The three new system preferences are:
LibraryThingForLibrariesEnabled - turn ON to enable LTFL support
LibraryThingForLibrariesID - client ID for LTFL service
LibraryThingForLibrariesTabbedView - put LTFL content in tabs on bib detalis page
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Intended for corporate or special sites which require the name of the person
who has checked out an item to show in the OPAC. Most libraries will want
to leave this turned off!
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Fixes the following problem:
When deleting a patron record via the intranet or the cleanborrowers tool,
patron records are deleted but are not copied to deletedborrowers.
C4::Members::MoveMemberToDeleted() fails with the following error:
deletemem.pl: DBD::mysql::st execute failed: Column count doesn't match value
count at row 1 at C4/Members.pm line 1672.,
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
If series title was previously taken as collectiontitle
then you should launch
misc/maintenance/UNIMARC_fix_collectiontitle.pl
misc/batchRebuildBiblioTables.pl
[RM note: applies only to UNIMARC users - MARC21
users should not run the batch jobs.]
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Allows specification of how many issues of a subscription to display
at a global and subscription-specific level. Also adds a link to the
detail page to a specific subscription.
Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
www.babeltheque.com is a LibraryThings for Libraries equivalent.
This patch enables this service on OPAC.
* Replace previous patch in order to apply onto last master HEAD
and solve conflicts induced by last pushed pateches:
1bb9f76e66
* Modify kohaversion.pl
* It uses v3.01.00.016 slot.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch resolves a number of problems related to Enhanced Content:
1. Previously, there was no syspref for controlling whether or not to display
Amazon.com cover images apart from other content. This had the side effect
of preventing use of amazon.com content alongside use of another provider's
images. This patch introduces AmazonCoverImages and OPACAmazonCoverImages,
and changes the name of AmazonContent to AmazonEnabled.
So, for instance, you can now enable OPACAmazonSimilarItems yet utilize
SyndeticsCoverImages for displaying those similar items.
NOTE TO DOCUMENTATION TEAM: please update references to AmazonContent
and OPACAmazonContent to comply with the above.
2. Fixes some semantically incorrect uses of AmazonContent (now OPACAmazonEnabled)
on the OPAC side.
3. Resolves once and for all, the normalization of ISBN,UPC,EAN and OCLC numbers
for all enhanced content elements; These elements can be normalized using the
new functions in C4::Koha; I've replaced use of the various previously used
variables $xisbn,$norm_isbn,$clean_isbn, etc with $isbn, and the template
variable normalized_isbn.
We finally have a single, consistant place to retrieve normalize values for
these fields given a particular record.
4. Adds Syndetics attribution statements to display of all Syndetics content
'enhanced content provide by Syndetics' or 'Enhanced Description from Syndetics'
5. Adds an option to view the large cover image on the detail page on the OPAC
when using SyndeticsCoverImages; this option is controlled by a new system
preference: SyndeticsCoverImageSize which has two values: MC (medium) LC (large)
6. Adds UPC and OCLC numbers for Syndetics enhanced content queries especially
helpful for finding enhanced content for DVD and Music materials
7. Adds capability to display Syndetics images to opac-user for checkouts and overdues
8. Updates to systempreferences.sql, and updatedatabase.pl database revision 015
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch also includes a new function to retrieve the index
page from Syndetics and parse it for available content prior to
retrieving content; this is done to speed up syndetics content
by not retrieving content that doesn't exist for an item. However,
Syndetics continues to be a very slow service compared to Amazon.com
and other enhanced content services
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Warning would look like:
updatedatabase.pl: Use of uninitialized value in string eq
at /home/user/koha/installer/data/mysql/updatedatabase.pl line 2141.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch just update the syspref to use incremental|annual|hbyymmincr|OFF instead of "YesNo".
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
- new table, item_circulation_alert_preferences
- new data:
- letter -- 2 new templates
- message_transport_types -- feed
- message_attributes -- Item Check-in and Item Checkout
- message_transports -- for each attribute and for each transport_type...
Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
The default syspref setting for intranetuserjs should be empty. At one
time, an unwanted value accidently got put in there. This removes the
syspref only if it equals the unwanted value.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Two new subpermissions of circulate were added:
- circulate_remaining_permissions
- override_renewals
Also, the following schema alterations were made
- permissions.code : varchar(30) => varchar(64)
- user_permissions.code : varchar(30) => varchar(64)
(The reason for this was because "circulate_remaining_permissions"
was greater than 30 characters long and wouldn't fit.)
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
There was a missing ' in the value of the NoZebraIndexes syspref. This
patch fixes it.
It's not necessary to fix the existing settings because
C4::Biblio::GetNoZebraIndexes is liberal enough to be able to parse even
the deformed value.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch cleans up kohastructure.sql a bit:
* moved the table definition to above the ending comments
* added a "drop table..." statement
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Added syspref to updatedatabase.
Updated kohastructure.sql with the limits table.
Signed-off-by: Andrew Moore <andrew.moore@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Because of a query on biblioitems.issn in
C4::Breeding::ImportBreeding(), libraries doing a lot
of bib imports were experiencing performance problems,
which adding an index will alleviate.
A possible longer term solution is to index all
reservoir/import batch records in a Zebra database.
[LL bug 232]
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Code changes to display the priority level on holds in OPAC. Turned on/off based on System Preference. Database changes to systempreferences for both English and French
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Two recent changes to updatedatabase.pl don't include newlines at the
end of their status messages. This patch adds them. This is only useful
if you're running this from the command line.
Note: there is an opportunity here to extract some of the simlar logic
from each of these blocks to a function.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Originally by Jesse Weaver <jesse.weaver@liblime.com>
This patch creates a new system preference, AllowRenewalLimitOverride,
that, if YES, allows the renewal limit to be manually overridden. It
updates C4::Circulation and reserve/renewscript.pl to obey this.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Corrects loans whose issuedate was set to NULL
during a renewal as follows:
* First, tries to extract the loan date from
the statistics table.
* For any remaining rows, sets the issue date
to the date of the last renewal.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
The intranetuserjs syspref allows a Koha administrator
to insert arbitrary JavaScript into the staff page header.
Now that this syspref is functional again, this patch
changes the installation scripts so that the default
value is blank - any JavaScript we ship with Koha should
be in the templates, not in a syspref.
Documentation changes: none per se. However, I do want to
point out that the intranetuserjs syspref is a bit of a
dangerous one - enter a value with incorrect syntax, and
you could make it difficult to access the staff interface -
and should probably be marked as an advanced option.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Following suggestion by Vincent Danjean for Debian
packaging, 0755 -> 0644 for non-executable
files.
Also removed shebang from a few modules in C4.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
For bug 2522, add a new table called hold_fill_targets to
implement hold request targeting. This table
has the following columns:
borrowernumber - identify request
biblionumber - ditto
itemnumber - item targeted to fill request
source_branchcode - current location of item
item_level_request - if 1, request is item-level
For bug 2331, adds a column called item_level_request
to tmp_holdsqueue.
Note: both of the item_level_request columns can
go away once reserves is modified so that
it is clear whether a request is item-level or
bib-level.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This patch deprecates the NoReturnSetLost system preference, which, as it
turns out, was not implemented anyway. New longoverdue script allows one to
specify on the commandline system-wide delays for changing items to different
lost statuses, and optionally charge for the item.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
The template HTML-escapes the descriptions now (as it should).
So we can't make them prettier w/ HTML inserted.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
This patch adds warnings to the OPACShelfBrowser, CataloguingLog, and NoZebra system preferences. Using
them on busy koha installations has proven to be rather resource intensive.
This is considered a stopgap solution. Making these features less resource using to run
would be preferred.
Note to documentation writers: screenshots of these system preferences could be updated, but
no functionality has changed.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Previously, the SMSSendDriver system preference was set as a local use system
preference. This patch makes it an official system preference under the "Patron" tab.
This system preference determines which SMS::Send driver is used to send SMS messages.
I have attempted to take care to not overwrite this system preference if it has already
been set.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Preference was removed in patch for bug 2234; completing
removal in existing 3.0 installations via DB rev 104.
No documentation changes (deprecation of noOPACHolds
done in an earlier patch)
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
From the bug report:
The serialsadditems syspref was ostensibly removed in DB rev 071
(http://git.koha.org/cgi-bin/gitweb.cgi?p=Koha;a=commit;h=5c41ae54e68866f9661e853376537059f4d83f70)
in favor of a new serialsadditems column in the subscription table.
However, this removal was incomplete. It is still created for new installations by:
installer/data/mysql/en/mandatory/sysprefs.sql
installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql
and is used in
serials/serials-recieve.pl
serials/serials-edit.pl
admin/systempreferences.pl
Since the system preference was not removed from the sample data scripts, it
is necessary to add another DB rev to remove it - a user may have made a
fresh install of Koha after DB rev 071.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
The current serialitems table structure does not provide for a *:1 relationship with
the serial table. This causes a problem when attempting to add multiple items to a given
serial. The db throws an error when attempting to INSERT in serialitems due to serialid.serialitems
being a unique key. A further side effect is that the marc record is updated with the
item inspite of the error. The mods to the serialitems table structure in this patch
drop serialid.serialitems as a key and make itemnumber.serialitems the primary key
creating a *:1 relationship with the serial table. This patch also makes serialid.serialitems
a foreign key referencing serialid.serial to maintain referential integrity.
Fix for duplicate barcode check
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
a default installation:
1. Re-names several of the item fields to make more sense to catalogers and patrons
2. Remove links Non-public note from items.paidfor
3. Changes Non-public note to be hidden in the OPAC view
Fixes issues with the 'hidden' field in the framework, specifically:
1. the editor obeys the rules of possible values for hidden (>4, or <-4)
2. the OPAC MARC display obeys the rules of positive values meaning 'hidden in OPAC'
3. the staff MARC display now obeys the rules specified in the hidden values description
The RSS message_transport_type was recently removed (until we get it implemented). It
is now being removed from the other tables that reference it.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
I didn't implement a way for patrons to get their advance notices and other
messages through RSS, so I'm removing it from the list of available transport types.
This will cause the "RSS" column in the patron messasging pages to be
unavailable. When we implement RSS, we can add it back in and the checkboxes will return.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
I didn't implement a way for patrons to get their advance notices and other messages
through RSS, so I'm removing it from the list of available transport types.
This will cause the "RSS" column in the patron messasging pages to be unavailable.
When we implement RSS, we can add it back in and the checkboxes will return.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
I added three fields to the message_queue table:
- to_address
- from_address
- content_type: necessary to hold email header for attachments
I changed one field in message_queue:
- borrowernumber can now be NULL for messages sent to the admin
These can be used to override the default addresses used. By default, emails are sent to
the borrowers.email address and sent from the KohaAdminEmailAddress syspref address. These
values are still used if the to_address or from_address values are NULL. These changes
are necessary to let overdue_notices.pl be backwards compatible.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
This is the first iteration of this script, likely to be expanded
if other mappings are determined. Currently it populates the
itemtype for all statistics that have itemnumbers and then pulls
borrownumbers from old_issues (or issues). This has the benign
side effect of ignoring whether or not itemtype was a different
value at the time of the transaction.
It then tries to populate null borrowernumbers using a fairly
conservative approach, only where exactly one match exists, else warns.
The process of updating statistics is needlessly complex based on the
lack of a reliable primary key. ALL such tables should have a numerical
primary key. The impression that the timestamp and any other fields
are enough to combine for a "unique enough" key is wrong. For example,
running SIP tests will add multiple transactions that might share
borrowernumber, itemnumber and timestamp. Key uniqueness should be
logically inherent, not de facto.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
In borrower_message_preferences, wants_digets => wants_digest
Note that the typo is present only in databases that had
borrower_message_preferences created via updatedatabase.pl.
Signed-off-by: Andrew Moore <andrew.moore@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Corrected two errors found in the authority types used
in the MARC21 frameworks:
* one subfield that used "Meeting Name" instead of "MEETI_NAME"
* various subfields that used "CORP0_NAME" instead of "CORPO_NAME"
The biggest visible consequence of this change is that corporate
name headings (110, 610, 710, 810, etc.) will now link correctly
to their authority records.
In addition, brought the fr-FR MARC21 framework scripts up-to-date
with respect to the changes made to the English versions.
No documentation changes.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
I had the create table statements in the wrong order, so they would not apply cleanly.
This is an update to database version 091, and does not take a new number.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
As part of fixing hold request bugs 1710 and 1739,
two new system preferences are defined:
AllowOnShelfHolds: YesNo, default value OFF
* if ON, allow item-level hold requests to be
placed for available items that are not on loan
AllowHoldsOnDamagedItems: YesNo, default value ON
* if OFF, item-level hold requests cannot
be placed on items that are marked damaged.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
I forot to add the new EnhancedMessagingPreferences system preference to the French SQL. I
hope I added it in the right place. The 'explanation' is untranslated.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Updates to kohastructure.sql and updatedatabase.pl:
- add new message_queue table
- add message_transport_types table
- add message_attributes table
- add message_transports table
- add borrower_message_preferences table
- add borrower_message_transport_preferences table
- adding EnhancedMessagingPreferenes to sysprefs SQL.
Added column to borrowers table to hold SMS Alert Number.
Added some more sample notices (letters) that will be sent for patron alerts
added some sample SQL to configure messaging.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
The first new table is branch_borrower_circ_rules.
This table is used to store circulation rule attributes
that apply to a combination of patron category and branch
across all item types. The one attribute defined is
maxissueqty, which sets the maximum number of loans
that a patron of a given category can take out at a given
branch.
Note that branch_borrower_circ_rules is for attributes
that apply across all item types. This means that
issuingrules.maxissueqty has a different meaning: it is
the maximum number of loans per branch, category, and item type;
if issuingrules.itemtype is '*', that is a *default*
circulation rule used if no more specific rule is found.
The new table will allow the implementation of total
loan limit across item types without making the wildcard
'*' in issuingrules ambiguous. Specifically, if branchcode,
categorycode, or itemtype is issuingrules is '*', that will now
always mean a loan rule to be applied if a more specific rule cannot be found.
Setting issuingrules.itemtype to '*' will no longer mean
to set a total limit across item types for maxissueqty.
The remaining new tables are used to store default
rules for the default branch, the default patron category,
or both:
default_branch_circ_rules - for a given branch, specify
the rule to apply if no more specific rule on
branch and patron category is found (i.e. patron category is default)
default_borrower_circ_rules - for a given patron category,
specify the rule to apply if no more specific rule
on branch patron category is found (i.e., branch is default)
default_circ_rules - global default if no more specify rule
on patron category and branch is available. Note that this
table is constructed so that it can have at most
one row.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
For documentation, please indicate that as part of profiling,
staff can refer to the AdvancedSearchTypes system preference to
choose where to draw the advanced search 'Types' from. Currently
this is implemented as a choice, between itemtypes and ccodes,
but it's been designed to work with any authorised value so long
as an index exists for searching by that authorised value.
By default, and if this syspref doesn't exist, it will pull from
itemtypes as before.
OPACItemHolds
OPACShelfBrowser
have been added to updatedatabase.
The xslt sysprefs have also been added with a note stating they
only work with MARC21.
Note that when the user is not logged in, the Tags input box/button will not display.
The user will see a message telling them to log in to add tags. However, in order to
keep the results display clean, the message will display only once, utilizing the loop
context variable "__first__". Useful stuff!
I also threw OPACShelfBrowser sysprefs.sql, but it still needs added to updatedatabase.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
[1] Added MARC-8 as an encoding choice on the target
administration page.
[2] Fixed TMPL coding errors.
[3] Set the correct encoding (as it happens, 'MARC-8')
for all of the English sample Z39.50 targets.
Documentation note: due to this patch and the ones from
Frederic, screenshots of the page for editing a Z39.50
target should be redone.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
from circulation dashboard, creates new sysprefs, assigns
the sysprefs to the proper tab in sysprefs (Circulation),
updatedatabase changes to do the previous, and fixing one
redundent limit in the query for build_holds_queue.pl
Note: still need to address item-level holds
used for reporting picklist for holds in multi-location
libraries. This is a temporary workaround to a longer-term
post-3.0 cleanup of the holds process.
Following this will be a cron job for managing the
holds picklist queue as well as a report for viewing
the list of items from circulation
Put the 801$a in tab 8, not 0, so that a valid 801
does not get split by the bib editor.
Signoff from Paul or Henri-Damien requested before
committing this patch.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Update MARC21 bib framework to ensure that subfield $9 in 110,
110, 111, 130, 240, 243, 440, 410, 411, and 440 remain
in same bib editing tab as rest of subfields in those fields.
This helps ensure that authority-controlled fields are not
mangled when editing a bib record.
Change also fixes editing tab for subfields in the 037, 584, and
760.
This is DB rev 085.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Changed default mandatory and optional MARC21 frameworks
to ensure that all the subfields of 037, 100, 110, 111, 130,
240, 243, 400, 410, 411, 440, 584, and 760 are all either
ignored (tab = -1) or assigned to the same editing tab.
Most of these changes involve the subfield $9 in authority-controlled
fields, which for the affected 1xx, 2xx, and 4xx fields was assigned
to tab 6, not 1, 2, or 4. Because of this, any such field with a
$9 was effectively split, leading to record corruption.
This is part of the fix for bug 2017.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
There is nothing to prevent a user from loading the
sample itemtypes from both 3-LecturePub and 4-Conservation.
To avoid an SQL error (and to let the installer tests
pass), made two of the SQL inserts "INSERT IGNORE" for
sample item types that have the same key.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Added two tables and system preference to support
a new patron alternate ID and attributes feature.
A patron attribute (or extended patron attribute) is an
additional piece of information associated with a patron
record. Each attribute has a type that specifies
whether the attribute is repeatable, can serve as
a unique identifier, can take a password, and
whether it can be used to search for patron records
in the staff interface.
The list of attribute types is controlled by the
superlibrarian. Once an attribute type is defined,
values for that attribute can be added to the patron record
via the staff interface or the batch patron import.
Two uses of extended attributes are:
- defining additional unique identifiers, such as
a campus student ID number, a library staff
HR number, and so on. These IDs can be used
for searching or matching and overlaying records
during a batch import.
- additional statistical categories. For example,
a library could define an attribute type for
tracking the academic major of a student patron.
Any number of attributes of this sort could be
defined.
The extended attributes feature is completely optional. If
the new syspref, ExtendPatronAttributes, is OFF, the patron
attributes tables will be ignored; it will not be possible
to display, edit, search for, or match on extended
attributes.
The tables are:
[1] borrower_attribute_types - store attribute types
defined by the administrator.
- code
- description
- repeatable (whether a patron record can have
more than value of a given attribute type)
- unique_id (whether values of this type
must be unique within the database)
- opac_display (whether values of this type
can display in the patron details page in the OPAC)
- staff_searchable (whether values of this type
can be used to retrieve patron records in circulation)
- password_allowed (if set, staff patron editor will
allow a password to be associated with a value; this
is mostly a hook for functionality to be implemented
in the future.
- authorised_value_category (code of an authorised_value
category. If one is specified, the staff patron
editor will use a dropdown for setting values of this type)
[2] borrower_attributes - the actual attributes.
- code (attribute type code, FK)
- borrowernumber (link to patron, FK)
- attribute (the value)
- password (password associated with value)
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Adjustments to updatedatabase.pl to help ensure that a
DB upgraded from 2.2.9, 3.0-alpha, or 3.0-beta has a schema
identical to a fresh installation.
The changes to the following columns and indexes are to
default values, field widths, position relative to other
columns or index names.
virtualshelfcontents.biblionumber
virtualshelfcontents_ibfk_1 (virtualshelfcontents)
shelfcontents_ibfk_2 (virtualshelfcontents)
sessions.id
deletedbiblioitems.marc
branchcategories.categorycode
branchrelations.categorycode
items.damaged
deleteditems.notforloan
deleteditems.damaged
deleteditems.itemlost
deleteditems.wthdrawn
currency.symbol
subscription.numberlength
subscription.weeklength
serialidx (serialitems)
items.more_subfields_xml
z3950servers.type
deleteditems.more_subfields_xml
opac_news.lang
labels_conf.formatstring
The following missing columns were added:
deletedbiblioitems.marcxml
deleteditems.itype
The 080 DB rev is specifically for syncing the schema
for users of 3.0-alpha, 3.0-beta, and 3.0-beta2, and should
be a no-op for anybody who has followed git HEAD for
the past few months:
subscription.monthlength
deleteditems.marc
aqbooksellers.name
NOTE: this patch does not handle the case of syncing
the DB of a developer or user who has been following
git HEAD since before 3.0-alpha.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Adjustments to updatedatabase.pl to help ensure that a
DB upgraded from 2.2.9, 3.0-alpha, or 3.0-beta has a schema
identical to a fresh installation.
The changes to the following columns and indexes are to
default values, field widths, position relative to other
columns or index names.
virtualshelfcontents.biblionumber
virtualshelfcontents_ibfk_1 (virtualshelfcontents)
shelfcontents_ibfk_2 (virtualshelfcontents)
sessions.id
deletedbiblioitems.marc
branchcategories.categorycode
branchrelations.categorycode
items.damaged
deleteditems.notforloan
deleteditems.damaged
deleteditems.itemlost
deleteditems.wthdrawn
currency.symbol
subscription.numberlength
subscription.weeklength
serialidx (serialitems)
items.more_subfields_xml
z3950servers.type
deleteditems.more_subfields_xml
opac_news.lang
labels_conf.formatstring
The following missing columns were added:
deletedbiblioitems.marcxml
deleteditems.itype
The 080 DB rev is specifically for syncing the schema
for users of 3.0-alpha, 3.0-beta, and 3.0-beta2, and should
be a no-op for anybody who has followed git HEAD for
the past few months:
subscription.monthlength
deleteditems.marc
aqbooksellers.name
NOTE: this patch does not handle the case of syncing
the DB of a developer or user who has been following
git HEAD since before 3.0-alpha.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Adding New Systempreference AddPatronLists
This systempreference allow administrator to choose if patrons are created on categorycode lists or category_type ones.
Overloading GetBorrowerCategory so that if no parameter provided, it returns the list of category records
Changing memberentry.pl in order to use the categorycode when provided.
Bug Fixing Circulation.pl so that doesnot come up with Error 500
with no category selected for GetBorrowerCategory
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Numerous changes to update22to30.pl to help ensure
that a database upgraded from 2.2.9 to 3.0 will have
a DB schema identical to that of a new installation.
These changes were testing by starting from an empty database,
loading koha.mysql from the 2.2.9 package, then running
update22to30.pl
move_marc_to_authheader.pl
move_marc_to_biblioitems.pl
dropping the following tables:
marc_subfield_table
auth_subfield_table
marc_biblio
marc_blob_subfield
auth_word
biblioanalysis
borexp
catalogueentry
charges
itemsprices
marc_word
marcrecorddone
sessionqueries
uploadedmarc
users
websites
z3950queue
z3950results
updatedatabase.pl
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Changes to kohastructure.sql to sync with changes
made via updatedatabase.pl:
aqbooksellers.name (DB rev 042)
subscription.serialsadditems (DB rev 071)
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
The 652 field don't exist in UNIMARC. So linking the new enumchron to a 952 field automatically should be done only for marc21
For UNIMARC, i map it to 995$v, which has been introduced in the last release of the "recommandation 995"
adding the 995$v as well for installer
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Removed the categorytable, mediatypetable, and subcategorytable
tables. These three tables appear to be from an incomplete
patch from pre-git that defined these tables to implement
additional search limits, and are not present in the 2.2.9
package. In 3.0, these tables did nothing - the only code that
referred to them are incomplete admin editors that lack HTML
templates and are not referred to anywhere.
The updatedatabase.pl logic to remove these tables is conservative;
the tables are dropped only if they exist and are all empty. Effectively,
this means that they'll be dropped if you've been running a fresh install
of 3.0 from git or the alphas or betas; if you've upgraded your database
from 2.2.9, these tables likely weren't in your database to begin with.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
tags_all, tags_approval, tags_index; for those tracking
git HEAD, these were already added via updatedatabase.pl
DB rev 073, so there's no DB bump for this patch.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Enhanced the ability of catalogers to specify how
bib and item records should be added, replaced, or
ignored during a staging import.
When an import batch of bib records is staged and commit,
the user can now explicitly specify what should occur
when an incoming bib record has, or does not have, a match
with a record already in the database. The options are:
if match found (overlay_action):
create_new (just add the incoming record)
replace (replace the matched record with the incoming one)
use_template (option not implemented)
ignore (do nothing with the incoming bib; however, the
items attached to it may still be processed
based on the item action)
if no match is found (nomatch_action):
create_new (just add the incoming record)
ignore (do nothing with the incoming bib; in this
case, any items attached to it will be
ignored since there will be nothing to
attach them to)
The following options for handling items embedded in the
bib record are now available:
always_add (add the items to the new or replaced bib)
add_only_if_match (add the items only if the incoming bib
matches an existing bib)
add_only_if_add (add the items only if the incoming bib
does *not* match an existing bib)
ignore (ignore the items entirely)
With these changes, it is now possible to support the following use cases:
[1] A library joining an existing Koha database wishes to add their
items to existing bib records if they match, but does not want
to overlay the bib records themselves.
[2] A library wants to load a file of records, but only handle
the new ones, not ones that are already in the database.
[3] A library wants to load a file of records, but only
handle the ones that match existing records (e.g., if
the records are coming back from an authority control vendor).
Documentation changes:
* See description above; also, screenshots of the 'stage MARC records
for import' and 'manage staged MARC records' should be updated.
Test cases:
* Added test cases to exercise staging and committing import batches.
UI changes:
* The pages for staging and managing import batches now have
controls for setting the overlay action, action if no match,
and item action separately.
* in the manage import batch tool, user is notified when they
change overlay action, no-match action, and item action
* HTML for manage import batch tool now uses fieldsets
Database changes (DB rev 076):
* added import_batches.item_action
* added import_batches.nomatch_action
* added 'ignore' as a valid value for import_batches.overlay_action
* added 'ignored' as a valid value for import_records.status
* added 'status' as a valid value for import_items.status
API changes:
* new accessor routines for C4::ImportBatch
GetImportBatchNoMatchAction
SetImportBatchNoMatchAction
GetImportBatchItemAction
SetImportBatchItemAction
* new internal functions for C4::ImportBatch to
determine how a given bib and item are to be
processed, based on overlay_action, nomatch_action,
and item_action:
_get_commit_action
_get_revert_action
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
This patch adds the ability to associate icon images with authorized values.
They're not displayed anywhere yet, though. There's also a database update
in here. I took version "3.00.00.075", but I can change that later if it gets
taken before I commit these patches.
DOCUMENTATION CHANGES: When you add or edit authorized values, you can now
associate image icons with them. These icons come from the same icon sets
that you can have with your itemtypes, such as media type. They don't show
up anywhere yet, but that's coming. Keep an eye on
http://bugs.koha.org/cgi-bin/bugzilla/show_bug.cgi?id=2047
for more updates.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
This is the database update change to take into account the rearrangement of the
itemtype icons directory.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
With this addition, it's possible to install Koha in French (fr-FR) and
having the English MARC21 framework. It would be desirable if someone
(a French Canadian?) translate this into French.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
The patch update the DB by adding a row in the subscription table (serialsadditems), that is filled with the value of the syspref.
then, the syspref is deleted.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Some informations imported into MySQL DB by web installer
were wrongly encoded. It was the case for example with
opac_news table.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
First big commit in a project to add more granular
staff user permissions to Koha.
* Created two new database tables
permissions:
stores a list of defined permissions; each
permission is to be interpreted as a child
of a top-level permission defined in the
existing user flags. For example, Tools (bit 13)
now has a separate sub-permission for each
individual tool.
The columns are
module_bit = FK referencing userflags.bit
code = code, e.g., import_patrons
description = e.g., "Import patron data"
user_permissions:
stores a list of the specific permissions that
a staff user actually has. For example, if
staff user 123 has only the 'import_patrons' subpermission
of 'Tools' (module_bit = 13), that would be represented
by having (123, 13, 'import_patrons' in user_permissions.
user_permissions and borrowers.flags are now interpreted
as follows (assuming the CheckSpecificUserPermissions syspref
is ON):
* If the appropriate bit (e.g., bit 13 for Tools) is set
in borrowers.flags, the staff user can access all
Tools functions. There should be no rows in user_permissions
for that staff user and userflag bit combination.
* If the bit is not set in borrowers.flags, but one or
more rows are present in user_permissions for that
staff user and bit combination, the staff user can
access the specified sub-functions.
* If the bit is not set in borrower.flags and there are
no rows in user_permissions for that staff user and
bit combination, the user cannot access any of the functions.
Note that this means that if a staff user can access all
functions for a module (because the bit is set in borrowers.flags),
the user will automatically be able access any new subfunctions
added to permissions by a database update.
The columns are:
borrowernumber = FK referencing borrowers.borrowernumber
module_bit, code = FK referencing permissions
* Added a new system preference, CheckSpecificUserPermissions
If this system preference is ON, staff users can be assigned
specific permissions which will be respected during
authorization checks. If this system preference is OFF, the
current userflags semantics will continue to apply.
* Defined sub-permissions for Tools. The list of specific
tools permissions is now:
edit_news Write news for the OPAC and staff interfaces
label_creator Create printable labels and barcodes from catalog and patron data
edit_calendar Define days when the library is closed
moderate_comments Moderate patron comments
edit_notices Define notices
edit_notice_status_triggers Set notice/status triggers for overdue items
view_system_logs Browse the system logs
inventory Perform inventory (stocktaking) of your catalogue
stage_marc_import Stage MARC records into the reservoir
manage_staged_marc Manage staged MARC records, including completing and reversing imports
export_catalog Export bibliographic and holdings data
import_patrons Import patron data
delete_anonymize_patrons Delete old borrowers and anonymize circulation history (deletes borrower reading history)
batch_upload_patron_images Upload patron images in batch or one at a time
schedule_tasks Schedule tasks to run
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
This reverts commit eaac37aa6ea8c4f2b79adaa4186bc08a9ac9efd4.
Rev 052 in updatedatabase.pl already adds more_subfields_xml
to deleteditems - the reverted patch would attempt to add
more_subfields_xml to deleteditems twice for anybody
upgrading from < 048.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Setting this as a Choice parameter.
This may raise not a performance issue.
Since we were told that loading it local could be longer than getting it from yahoo.
But for poor internet connectivity, it would be a better.
For mobile computer, it is a better choice.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>