Commit graph

1623 commits

Author SHA1 Message Date
Galen Charlton
bc9ee0cff9 item rework: moved ModItemInMarc
* Moved exported ModItemInMarc from C4::Biblio to
  C4::Items and renamed to _replace_item_field_in_biblio.
  Function is now private and is not exported, as
  ModItem is now the sole entry point for updating
  an item record.
* Replaced calls to ModItemInMarc in C4::Circulation
  with appropriate ModItem calls.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:23 -06:00
Galen Charlton
c58ca5dd5a items rework: fix several non-NULL columns during ModItem
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:13 -06:00
Galen Charlton
c6c8e80a73 start of BIB change -- introduce C4::Items
Introduced C4::Items module to separate items API
from biblio API.  Details on changes will be
put in later commit messages.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:12 -06:00
Joshua Ferraro
5c23369af2 Fixing Database Definitions for Statuses *PARTIAL*
Prior to this fix, the status fields had three 'off' values, NULL, "",
and 0. I've reduced it to two in the db, removing the option for NULL, and
setting the default value to 0, however, we need to verify that we don't ever
write out as "" as this needlessly complicates the indexing process,
critical for searching or limiting by status (e.g., availability). Also,
queries that attempt to write a NULL value to one of these fields will fail
(based on my tests).

This patch includes the following changes:

* Updated the database definition for notforloan, damaged, itemlost, and
wthdrawn in kohastructure.sql to forbid NULL and default to 0; MySQL
can't forbid other values (such as empty ""), so this has to be handled
at the application layer and REQUIRES further patching.

* Fixed the 'limit by availability' query node in Search.pm to use a
much less confusing definition of 'available'

* Added code to set values to 0 where they are NULL or empty ( "" ) for
notforloan, damaged, itemlost or wthdrawn in both the MARC and the items
table:

  * Biblio.pm -> AddBiblioAndItems
  * catalogue/updateitem.pl
  * SEE NOTE BELOW, REQUIRES UPDATE TO THE REST OF KOHA'S ITEM MGT!

* Removed code in bulkmarcimport.pl that sets notforloan status depending
  on item-level or bib-level itemtype -- that flag is designed to be set
  only to override the notforloan setting for the item's (or bib's,
  depending on the syspref) assigned itemtype (it doesn't need to override
  to 'for loan', only to 'not for loan').

  added $dbh->do("truncate zebraqueue"); when operation is 'delete'

* I updated some notes in catalogue/updateitem.pl as to why ModItem can't be
used -- we don't have _a_ place where we can change the item and marc :/

  I've tested the following:

  bulkmarcimport.pl..........................MARC/items OK
  Staged Records Import......................NOT OK
  updateitem.pl (via moredetail.pl)..........MARC/items OK
  circulation.pl.............................NOT OK
  returns.pl.................................NOT OK
  addbiblio.pl...............................NOT OK
  additem.pl.................................NOT OK

Basically, there isn't a single place to apply this patch that will
update both item data and MARC data in one place ... a future patch
needs to address this issue.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:04 -06:00
Joshua Ferraro
05290bb1b5 Improving searchhighlightblob, similar to Paul's patch:
1. doesn't remove author_nospan, and <span>s around bib fields for
display, perhaps they should just get a separate style?

2. using subfields now

3. improved ability to highlight small words (3 chars and less)

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 01:39:13 -06:00
Henri-Damien LAURENT
ee252ad5af NZSearch debugging
Adding NZoperatorAND NZoperatorOR NZoperatorNOT
Using NZOperatorAND NOT in NZanalyse
Some problem solved.

Please test.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 00:48:26 -06:00
Joshua Ferraro
aabea3417b WARNING: Updates to Index Defs for Authorities
This commit is a partial fix to authority control for MARC21,
and better authority handling in general (for UNIMARC too).
Before this patch, authority searching, editing, saving, was
not functioning, or was extremely buggy.

WARNING: You will need to re-index your authority database after
applying this commit.

The following changes have been made:

  * Normalizing record.abs index names (in both MARC21 and UNIMARC)
  * Synching authorities/bib1.att, ccl.properties, AuthoritiesMarc.pm
    with new indexes (UNIMARC too)
  * Clean up biblios/bib1.att (remove duplicate att defs)
  * Clean up authorities-* templates to conform to new styles
  * Fixed search failure when using Default framework (now searches
    All)

Also included are several fixes to the built-in SRU server for
Authority and Biblio, it's recommended that you update your
koha-conf.xml file:

  * adding explain-authorities.xml and explain-biblios.xml
  * adding necessary info to koha-conf.xml to enable SRU/W
  * adding several example XSLT stylesheets, that can be used
    for SRU on-the-fly transformations (to MODS, DC, RDF, etc.)

Still remaining for 3.0 are the following tasks:

  * update MARC21 frameworks (authority and cross-reference bib)
  * update display code/templates in authority results list
  * update search code/templates to utilize index points
  * implement 'grouping' of authtypes for searching (Name, Title, Subject)
  * repair utility to import auths and perform matching
  * repair bibliographic import to match auths and warn if no match

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 00:28:40 -06:00
Mason James
5dacccedec TransformHtmlToXml() now checks from UNIMARC flavour, before inserting encoding info to 100$a
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-02 07:54:30 -06:00
Ryan Higgins
31ddb16fa2 Fix bug in ModReceiveOrder call
had been losing datereceived and replacementprice on modorder.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-01 18:42:48 -06:00
Ryan Higgins
52e1a15e5a Specify datereceived when receiving a new parcel.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-01 18:42:47 -06:00
Chris Cormack
3bccf02a66 Fix for bug 1711
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-01 17:43:42 -06:00
Ryan Higgins
b2f5cf3ad2 Further updates to acq, merging in dev_week mods.
Splitting orders now on receipt.
Many tmpl updates to pass correct values btwn scripts.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-01 15:07:08 -06:00
Ryan Higgins
4b089e1eee updates to acqui - first of several commits
bug fixes to display and save publishercode and purchase order numbers.
use invoice number in place of parcel code
fix template apparently allowing user to modify biblio details on add/mod order
removing CGI scrolling_list

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-01 15:07:02 -06:00
Joe Atzberger
e4386103cb NewsChannels - format_date for news "Posted on" date
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-31 16:26:03 -06:00
Chris Cormack
fdda3d48d1 Fix for bug 1708
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 20:51:24 -06:00
Chris Cormack
48b4d54408 Fix for bug 1515
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 20:51:22 -06:00
Joshua Ferraro
07349a7c2f fix to enable separate imageurls for item-level itypes
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 17:00:55 -06:00
Chris Cormack
0a8fcfe53a Fix for item level itypes and toomany subroutine
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 15:13:05 -06:00
Chris Cormack
f1f54790dc Fixing a bug with notforloan being checked properly
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 12:07:59 -06:00
Chris Cormack
87327eae60 Fix for bug 1689
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 12:07:57 -06:00
Chris Cormack
966d90e609 Get biblioitem data in canbookbeissued, we need this for biblioitem level
itemtypes, to check for notforloan

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 12:07:56 -06:00
Joe Atzberger
65ce93c38a OPAC VirtualShelves overhaul -- bugfix 1413 (among others)
Making shelves work in the opac.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-28 12:58:07 -06:00
Galen Charlton
281c1e2454 only munge copyrightdate and publicationyear if they exist
Prior to this fix, those two keys were always
created by TransformMarcToKoha even when
not appropriate (e.g., for items).

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-28 12:39:44 -06:00
4afc512039 Fix to enable reading history in the staff client.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-28 12:30:54 -06:00
Joshua Ferraro
c70df80694 Search.pm Bugfixing
Getting Search.pm air tight ... cleaned up some local variables
that were declared global

fix to asynchronous federated searching lost since dev_week, immediate
use is authority search

template fixes to item-level itemtypes and bib-level itemtypes

temp workaround to javascript problems preventing item edits

fix to installer

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-28 08:32:24 -06:00
Joshua Ferraro
1a7a650ea2 improve embedded documentation and perldoc
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-28 08:32:15 -06:00
Chris Cormack
358ec9c6c3 Fix for 1582, if independent branches is on, you cant return to
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:24:37 -06:00
Galen Charlton
a858e8a8b8 session management: use YAML::Syck for serialization
When using mysql and a sufficiently recent version
of DBD::mysql that actually respects the mysql_enable_utf8
option, setting the current branch to a name that
includes a diacritic causes the session to fail
and forces the user to the login screen upon
clicking another link.

This turned out to be due to the default (Data::Dumper)
serialization used by CGI::Session, which truncated the
session object at the diacritic.  By enabling
that module's YAML serialization option, the problem
was resolved.

This patch introduces a dependency on the YAML::Syck
module.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:24:02 -06:00
Galen Charlton
88451107ae UTF8 and mysql: enable UTF8 mode correctly
Doc for DBD::mysql states that if not setting
mysql_enable_utf8 as part of the database
connect(), must do it before doing "set names utf8"

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:23:58 -06:00
Ryan Higgins
a9d03af6dc adding 'exempt fine on return' option.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:22:45 -06:00
Chris Cormack
7d6282e513 Fix for 1704, now if autoitemreturns is off you get a dialogue warning a
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:22:00 -06:00
Chris Cormack
3ae2edde0a Getting rid of noisy warn
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:21:56 -06:00
Chris Cormack
28fe361296 Fix for bug 1666
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:21:35 -06:00
Joe Atzberger
0bdeee4041 Input.pm - perldoc correction
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:21:07 -06:00
Joshua Ferraro
da8a4ca991 BIG COMMIT: minimal fix to authorities search
This is a minimal fix -- pname authorities work propertly, but nothing
else has been tested yet

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 20:23:16 -06:00
Chris Cormack
dfc5c181bc Big bugfix for bug 1631
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 18:40:28 -06:00
Chris Cormack
ac21232fd5 Fix for bug 1691
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 14:33:08 -06:00
Paul POULAIN
20649b7dc0 Adding OPACItemsResultsDisplay syspref & bumping to version 036
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 14:33:04 -06:00
Paul POULAIN
d46958af51 replacing SHELF_LOC by LOC, as decided with kados on the chat
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 14:33:02 -06:00
Paul POULAIN
a553ea88b1 fix to handle notforloan authorised values (we now handle wthdrawn, itemlost, damaged AND notforloan fields)
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 14:32:59 -06:00
Joshua Ferraro
58d425cf7b fix for bug 1696: Reading record page fails
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-25 12:28:55 -06:00
Galen Charlton
0456e457dc IMPORTANT - replaced TransformMarcToKoha
Replaced with FasterTransformMarcToKoha
from a previous commit.  Main differences are:

[1] At least twice as fast because of improvement
    in algorithm for processing the MARC record --
    each tag is processed only once.
[2] Fixed bug where biblio.notes would end up with
    an extra ' | ' at the end.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-25 09:08:39 -06:00
Galen Charlton
cb6cf680bc improved error detection in AddBiblioAndItems
Introduced new C4::Biblio function CheckItemPreSave,
which checks for duplicate barcodes and invalid
branch codes.  Not yet sure whether this function
needs to be exported or whether it will just be
used internally to C4::Bibli.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-25 09:08:34 -06:00
Galen Charlton
f60f4987a3 C4::Biblio::AddBiblioAndItems - added duplicate barcode check
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-25 09:08:30 -06:00
Galen Charlton
7d47666f7e bulk MARC record import - speed improved
Changes to improve speed of MARC bib and item
imports:

[1] Turn off autocommit and commit database
    transactions in larger batches.
[2] Introduce a new C4::Biblio function (AddBiblioAndItems)
    to combine AddBiblio and AddItems -- this is faster
    because we are not parsing the MARC XML of the biblio
    every time we add an item.
[3] Introduce FasterTransformMarcToKoha, which is much
    faster than TransformMarcToKoha.  The new version,
    which will replace the old one once it has been
    fully tested, scans through each field in the
    MARC record just once, instead of potentially
    dozens of times.
[4] Remove code in bulkmarcexport that moved the
    item tags to separate MARC::Record objects.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-25 09:08:28 -06:00
Joshua Ferraro
2143002750 IMPORTANT: BUGFIXING STATUSES
Major bugfixes:
* Circulation status in moredetail.pl now correctly displays On loan
status and Date due
* Bugfixes on Status column in detail.pl
   * Removed hard-coded English strings from status column in detail.pl
      * Added missing auth values for lost and damaged statuses, sane
defaults if those auth
     values don't exist
        * Added missing 'On hold' status and 'Hold waiting' status
display

Medium bugfixes:
* Now correctly shows itemtype at level specified in systempreference
* Uses itemtypeimage for display, image title is full itemtype
description

* Fixed Location column concatenation between branchname location and
itemcallnumber
  * broke out Location (branch), Collection (items.location)
      Call Number (itemcallnumber) into their own columns
        * Added auth value display for items.location

	Minor fixes:
	* detail.pl didn't show dates correctly
	* nomenclature s/Checked out/On loan/ in opac-detail.tmpl
	* s/Book/Item/ in my $desc="Item Returned
".$iteminfo->{'barcode'}; in Circulation.pm
* request.tmpl: s/date_due/onloan/ to display date due
* Fixed SimilarItems, XISBNSimilarItems

NOTE: Needs to be ported to OPAC

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-24 13:34:44 -06:00
Joshua Ferraro
43334b8cec bugfixing request.pl
Major Fix:
Fixing bug where 'expected' label existed for items that
were 'waiting'

Minor Cleanup:
Show correct statuses
Show itemtypes at correct levels depending on
global system preference
Display branch names, not branch codes
Adding in visibility option for 'canreservefromotherbranches' syspref

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-24 00:43:26 -06:00
Joshua Ferraro
61d8942a20 show itemtypes at level specified in syspref for holds
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-24 00:43:14 -06:00
Joshua Ferraro
e4799032d2 Warning: big commit Fixing moredetail.pl
Previously, about 50% of the data on this page was either incorrect or missing.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-23 20:32:34 -06:00
Joshua Ferraro
8903f62102 fix for bug 1688
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-23 15:01:06 -06:00