Joe Atzberger [Fri, 7 Nov 2008 21:49:59 +0000 (15:49 -0600)]
Results of CSV module analysis, testing various CSV modules and configs.
The upshot is that despite appearances, whe should NEVER use Text::CSV::Unicode
or any CSV module in non-binary mode. Text::CSV works in binary mode
by using Text::CSV_XS, so the behavior is the same for both (in binary).
Frederic Demians [Sun, 16 Nov 2008 08:50:54 +0000 (09:50 +0100)]
Fixes bug #2788 - CoinS support
1 In URL rft.tpages is replaced with rft.page. That's what
Zotero expects.
2 TMPL_VAR NAME="size" is replaced with "pages" for 1.
3 TMPL_VAR NAME="publisher" is replaced with "publishercode"
the correct value for rft.pub
Ryan Higgins [Wed, 12 Nov 2008 03:05:03 +0000 (22:05 -0500)]
bug 1891 : bib-level itemtype was required in order to place a hold.
This patch removes some superfluous logic left over from early Koha
when a multi-step holds process allowed you to limit your choices to
specific biblioitems.itemtype values. Code previously required a value
in biblioitems.itemtype in order to place hold.
Andrew Moore [Tue, 11 Nov 2008 20:34:13 +0000 (14:34 -0600)]
Bug 2775: adding method to clean syspref cache in C4::Context
C4::Installer provides a way to update the kohaversion syspref. Now that
C4::Context caches syspref values, any updated value through C4::Installer
is not being seen.
This patch adds a method to C4::Context to allow you to clean that
cache. Then, it calls that method when the kohaversion syspref is changed.
Fix overdue list if you do not specify a branchcode.
Before, if you do not provide a "branchcode" you have an empty csv export.
Now, if you have an empty branchcode you have all overdues listed in csv.
(I made a typo error in code)
If the user set an empty date as the expiration date during a patron modification, we recalculate the expiration date with sysprefs and the registration date.
Before, when you set an empty date, 0000-00-00 is put in the database (too bad).
Frederic Demians [Sat, 25 Oct 2008 08:38:37 +0000 (10:38 +0200)]
Improve C4::Charset::MarcToUTF8Record performance
A script like bulkmarkimport.pl spends most of the time
in C4::Charset::MarcToUTF8Record function, and
specifically in C4::Charset::char_decode5426
just initializing a hash. This patch moves this
hash outside function to avoid its initializing
each time the functon is called.
A test on a specific conversion script shows me
that performances were improved from 23s to 8s.
Clay Fouts [Thu, 30 Oct 2008 02:22:15 +0000 (19:22 -0700)]
Database connectivity cleanups
This patch employs process-local caching of systempreferences and
eliminates the "select 1" execution every time dbh() is called.
DBI::ping() is used instead.
John Beppu [Wed, 5 Nov 2008 16:51:32 +0000 (10:51 -0600)]
bug 2563: could not input into marc 008, fields 7-10 and 11-14
You actually *could* input data into those fields, but it wasn't
immediately obvious, because the field size was "4" and the
value was " ". You couldn't type anything in until you
backspaced over the spaces that were there by default.
UPDATE 2008-11-05: Make absolutely sure that those values
are 4 chars long (via JavaScript)
Allen Reinmeyer [Thu, 6 Nov 2008 20:43:26 +0000 (14:43 -0600)]
UPDATE:Bug #2756 opacbookbag preference turns off add items to list
There was a bug in the javascript that prevented the 'select all','clear all' and the 'add-to' list. Javascript wasn't including basket.js on virtualshelves option. Also, 'Save to Lists' was calling addtoshelf instead of addtolist. Functionality is now the same for virtualshelves regardless of opacbookbag status.
this patch add an "hidden" field in the template, that permit in C4::VirtualShelves::Pages to get the right(privates) shelves with
GetShelves in$
of always public shelves.
So when a private shelf is wanted to be deleted, the script watch only in public shelves if the shelf exists, and doesn't work.
Owen Leonard [Thu, 6 Nov 2008 19:04:11 +0000 (13:04 -0600)]
Adding javascript to let user click table cell to check containing checkbox.
This is a usability improvement as it widens the target of the click. The script for moremember.pl includes code necessary to uncheck its sibling as per uncheck_sibling(). If this patch is approved I will look for other instances so that <td> interactions will be consistent.
Owen Leonard [Mon, 27 Oct 2008 16:55:13 +0000 (11:55 -0500)]
Overhaul of cover images. Replaces Amazon's "no cover" image with styled text, addressing bug 2241. Adds the same "no cover" text for Google and Baker & Taylor images.
John Beppu [Fri, 24 Oct 2008 14:45:24 +0000 (09:45 -0500)]
bug 2707 - overdue rules not being deleted
* I added some code to detect the rows which were blank,
and I deleted them upon saving the form.
* Updated to get the categories from the database
instead of hardcoding them.
Joe Atzberger [Thu, 30 Oct 2008 05:14:25 +0000 (00:14 -0500)]
Circ cleanup.
Removed unused $dbh variables, converted to loop_context_var instead of togglecolor.
Prevented double comparison in sort. The rest is whitespace cleanup.
This affects transactions on items that may be covered by
a title or item-level hold, but have not yet been retrieved
from the stacks (i.e. "confirmed") by the librarian. This does
not affect waiting holds (found="W"), so they will still block
transaction unless they belong to the operating patron.
Also I cleanup any hold the patron has on a biblio/item when
they are allowed to checkout the item.
Here we are filling the hold because the checkout is allowed, regardless
of of the queue position. This is different from AddIssue's CancelReserve, that
only fills the hold if it is next in line, but in the future AddIssue should
adopt a similar logic.
Joe Atzberger [Fri, 19 Sep 2008 21:24:22 +0000 (16:24 -0500)]
Unravelling links in masthead. Regularize logic and improve readability.
Link to Tag Cloud displayed on Adv. Search page even when TagsEnabled was OFF.
This was due to unnecessary duplicative code for Adv. Search vs. other pages.
Note: with this revision, the link to "Advanced Search" will display on all pages,
even on the Advanced Search page itself. This is in fact desirable, rather than
the set of links collapsing and changing position depending on page being viewed.
If the old premise were to be followed (that Adv. Search link should not display on its
own page), then the same interface sensibility should apply to ALL links in the
masthead: i.e., Tag Cloud link should not display on its own page, same for Browse
by Subject, Most Popular, etc. I would argue even this is undesirable. At most,
give the links in moresearches some IDs and let each page unlink/restyle the
"current" link with jquery. IMHO, masthead itself should not be engage in such trifling
interface polishes.
Allen Reinmeyer [Thu, 23 Oct 2008 19:16:18 +0000 (14:16 -0500)]
Bug #2709 Cannot add from Search to New list
While a new list was created, no subsequent call to add the biblio number was made,
thus a new empty list would be created every time.
Under the existing list add, the same code to add items would also apply to a new list,
so I refactored out the logic to add items and made a new subroutine.
fix for bug 2543: report output by tabulation a bit too literal
This repurposes the Reports module for general reports, and moves its functionality to a different module, Reports::Guided. It also updates all of the reports that can export to correctly treat the 'tabulation' value of the 'delimiter' syspref.
Joe Atzberger [Thu, 23 Oct 2008 16:01:03 +0000 (11:01 -0500)]
Patch security hole in vestigial report.
IMHO, this report should be removed in entirity because of its faulty
construction and total inability to distinguish between register "tills".
That is, it appears to be a valid accounting measure but isn't.
In any case, it let's not let just anybody run it!
Galen Charlton [Wed, 22 Oct 2008 23:11:30 +0000 (18:11 -0500)]
followup 4 to renewal limit override
* use style="display: none" instead of content_hidden
* fix JavaScript so that actions that check/uncheck
items for a renew or return do not affect
the override renewal limit checkbox
Michael Hafen [Wed, 22 Oct 2008 23:11:26 +0000 (18:11 -0500)]
Allow renewal limits to be overridden
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.
Owen Leonard [Mon, 20 Oct 2008 15:42:59 +0000 (10:42 -0500)]
Changing checkboxes to radio buttons (as it is in the OPAC), since you can't place a hold on more than one specific item. Also includes some markup cleanup.
Galen Charlton [Wed, 22 Oct 2008 20:22:46 +0000 (15:22 -0500)]
bug 2692: remove escape="url" from opac-facets.inc
Based on Owen Leonard's patch, but redone to exclude
a dependency on an earlier unapplied patch.
For future enhancement, limit_cgi and the like should
probably not be constructed directly in C4::Search.
Instead, it should pass back a representation of the search
that the template can use to construct the appropriate URLs.
Done right, that would also make it easier to implement
things like search history.
Owen Leonard [Tue, 14 Oct 2008 18:50:47 +0000 (13:50 -0500)]
Two template bug-fixes: removing debugging output from opac-detail.tmpl, and turning off html-escaping in addbooks.tmpl to prevent incorrect HTML output. Need to figure out how to allow HTML tags in titles /and/ do search term highlighting.
Ryan Higgins [Fri, 17 Oct 2008 03:25:27 +0000 (22:25 -0500)]
Bug 2660: Add command-line options to overdue notice script.
This commit adds two options to the overdue_notices.pl script.
The notices are now generated in one of two modes: default or triggered.
In default mode, every time the script runs, a notice is generated if an item
is overdue within a notice date range. This mode is suitable for a weekly cron
(or manual run), but the notice triggers should be syncronized with the cron script such that
the script is run once per notice date range. Otherwise, duplicate messages will
be generated ( or no notice generated if a notice date range passes without the script being run).
Triggered mode is suitable for a nightly cron job: a notice is generated only on those
days that an overdue item enters a notice date range. This mode is susceptible to message
loss when the cron script fails to run, or when notice triggers are edited.
A second flag is added: --list-all, which causes items.content to list all currently overdue items.
Without this flag, only items that are overdue within the given notice's date range are listed on
that notice.
Joe Atzberger [Fri, 19 Sep 2008 00:02:45 +0000 (19:02 -0500)]
Bug 2627: Allow Unicode data in import_borrowers, expand feedback on errors.
Date fields are now checked against syspref and iso regexps before attempting
to convert or insert them. The problem characters were non-ASCII diacriticals.
Note: this may rely on improvements in the current 0.54 version of Text::CSV and
Text::CSV_XS, rather than the Koha minimum of 0.01 and 0.32, respectively.
Michael Hafen [Thu, 16 Oct 2008 19:59:44 +0000 (13:59 -0600)]
fix calls to get_template_and_user in label-item-search.pl
remove extra flagsrequired line.
move call in first branch to the top.
This will be important is IndepenantBranches code is later added to,
for example, C4::Items::get_itemnumbers_of()
Galen Charlton [Mon, 6 Oct 2008 01:40:24 +0000 (20:40 -0500)]
bug 2659: fix crash in OAI-PMH interface
When retrieving a record via the OAI-PMH interface, if one of the fields used
to prepare the DC metadata is not defined in the MARC framework (e.g.,
biblioitems.publicationyear in the default MARC21 framework), an OAI GetRecord
can fail with the following error:
> Can't call method "as_string" on an undefined value at
> /usr/share/koha/opac/cgi-bin/opac/oai.pl line 59.
Michael Hafen [Wed, 1 Oct 2008 20:14:56 +0000 (14:14 -0600)]
bugfix: Sort previous borrowers descending in Items.pm for moredetail.pl
The list of previous borrowers on moredetail.pl shows the three oldest
rather than the three most recent as I expected. This changes the sql
to order descending so we get the three most recent.
Galen Charlton [Thu, 16 Oct 2008 15:10:09 +0000 (10:10 -0500)]
followup on Owen's patron attributes patch
Hide the display of the patron attributes only if
no types are defined; the patron attributes section
(and more importantly, the edit link), should still
be displayed if an attribute type is defined, even
if the patron has no attributes currently set.
Galen Charlton [Wed, 15 Oct 2008 13:52:34 +0000 (08:52 -0500)]
bug 2677: restore RandomizeHoldsQueueWeight and StaticHoldsQueueWeight
Restoring the functionality of these sysprefs as part of the
rework of build_holds_queue.pl:
* StaticHoldsQueueWeight is an ordered list of library codes.
The order of the libraries in this list determines the order
of libraries in which available items will be chosen to be
targeted to holds. Note that if this list does not include
a library, items from that library will never be targeted to
holds and staff will never be asked to retrieve items for
title-level holds from those libraries.
* RandomizeHoldsQueueWeight is a Boolean parameter, indicating
whether to randomize the libraries in the StaticHoldsQueueWeight
list.
If neither RandomizeHoldsQueueWeight nor StaticHoldsQueueWeight is
set, then the libraries will be used to target items to holds in
alphabetical order by library code.
Owen Leonard [Tue, 7 Oct 2008 14:21:01 +0000 (09:21 -0500)]
More corrections to fix Bug 2649, "minPasswordLength Sys Pref does nothing." Previous patch included typo copied from member-password.pl. Both are corrected now.
Ryan Higgins [Wed, 8 Oct 2008 05:31:24 +0000 (00:31 -0500)]
Remove ambiguity from SQL statement for holds queue.
holdingbranch table not referenced in view_holdsqueue.pl, causing irresolvable ambiguity in
sql query when limited by library (holdingbranch). This was causing DBI errors to be thrown
in test database, and library-limited holdsqueue display was thus empty.
Allow valid comparison of hold_queue to current user barcode and
permit checkout if the current user is at the front of the queue.
Effectively, this allows a user to checkout a book he has held.
Here are the example checkout (11) and checkout response (12)
statements in a SIP telnet session, showing failure (120) previously
and success (121) after patch application.
Before:
11YN20060329 203000 AOCPL|AA1|AB502326000820|ACterm1
120NUN20081009 140222AOCPL|AA1|AB502326000820|AJKidnapped :|AH|AF2008-10-09 : Koha Admin (1)|BLY|
After:
11YN20060329 203000 AOCPL|AA1|AB502326000820|ACterm1
121NNY20081009 150204AOCPL|AA1|AB502326000820|AJKidnapped :|AH2008-10-10|AFItem was reserved for you.|
This patch also resolves security/privacy issues related to the display
of "needsconfirmation" values that identify, for example, the user
currently issued an item, or with a hold on the item. These messages
should not be passed to an end-user interface.
This is a pre-requisite to continued SIP processing, dealing with some
arcana related to recursive dependencies and UNIVERSAL. The reason this
is separate from other SIP patches is that it is expected patched in other
submissions already.
Ryan Higgins [Sat, 27 Sep 2008 17:57:08 +0000 (12:57 -0500)]
Bug 2555 : label batch_id not properly incremented after batch num 10.
This is a stop-gap fix intended for 3.0 maintenance release.
3.2 should include a label_batches table which will allow named
batches to be associated with a template & layout, and fix the
column definition of batch_id here to be an auto_incr int.