Commit graph

703 commits

Author SHA1 Message Date
Paul Poulain
9cc9db0753 Bug 6875 follow-up for Items/Biblio de-nesting
the sub _find_value is used only in PrepareItemRecord sub, that has been moved to Items package

This patch moves the _find_value in Items as well.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Editing an already arrived serial issue with an attached item
resulted in an error. After applying the patch it's fixed.
2012-02-27 11:13:02 +01:00
52afe06ddd Bug 6193 - Follow up: use SetEnv and remove memcached from koha-conf.xml
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Confirmed that memcached is still being used after the memcached configuration
in koha-conf.xml was removed, and the following two lines were added to
both virtual hosts in koha-httpd.conf:
SetEnv MEMCACHED_SERVERS "127.0.0.1:11211"
SetEnv MEMCACHED_NAMESPACE "KOHA"
2012-02-20 23:24:02 +01:00
Paul Poulain
f7a525fa09 Merge remote-tracking branch 'origin/new/bug_6875' 2012-02-20 16:45:42 +01:00
Paul Poulain
49b167e848 Bug 6875 de nesting C4::Biblio
C4::Biblio is used in many many places. The goal of this cleaning is to do from C4::Biblio a package with as many dependancies as possible.

* C4::Heading is called only in 1 place, highly rarely used (only in 1 misc/link_bibs_to_authorities.pl), moving to require
* PrepareItemrecordDisplay is a sub that is more related to Items, moving it here. It means some scripts that used this sub must be checked against use C4::Items
* C4::Items is needed in EmbedItemsInMarcBiblio, moving it only in this sub, and switching to require
* 2 subs are totally useless z3950_extended_services and set_service_options, removing them

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
No test plan included, but tested some opac and cataloging functions.
Code looks good. Marked as Passed QA.
2012-02-20 16:35:17 +01:00
795dc61f75 Bug 3264 UnCloneField() / minus button in MARC editor can clear all subfields (authorities AND biblio)
All subfields following the removed subfield were not saved.
Problem is in C4/Biblio routine TransformHtmlToMarc.
If the field is emptied, the param list contains a code param but no subfield
param. The while loop handling the subfields could not handle that. Also added
a FIXME because the whole routine depends on an assumption about the order of
cgi parameters that is not strictly guaranteed.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
I was unable to replicate the problem, but can confirm that the patch does
not break anything under any of the following platforms/browsers:
Mac OS X 10.6.8:
Chrome 16.0.912.77
Firefox 9.0.1

Windows 7:
Firefox 3.6.3
Firefox 9.0.1
IE 8.0.7600.16385

Ubuntu 11.10
Firefox 8.0
Chromium 15.0.874.106 (Developer Build 107270 Linux)

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-16 18:52:46 +01:00
Chris Cormack
70237c49ef Bug 7432 : Fix how we are setting expiry time when caching
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-15 10:26:22 +01:00
Paul Poulain
1637af349e Bug 6210 follow-up, removing warn
See http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=6210#c27
and http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=6210#c28
2012-02-02 15:35:26 +01:00
Srdjan Jankovic
91d870f67a bug_6210: Select framework if merging two records with different frameworks
ModBiblio() - set framework to "" if "Default"

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

All 4 tests passed:

Test 1:  Merge two records with the same framework
    Desired result:  shouldn't get any prompting to pick a framework, and the
same framework should be used

    Test 2:  2 records, different frameworks, into the kept record's framework
    Desired result:  merge with kept records framework used

    Test 3:  2 records, different frameworks, into the discarded record's
framework
    Desired result:  merge with used records framework used

    Test 4:  2 records, different frameworks, into a third framework
    Desired result:  merge with third framework used
2012-02-01 17:40:43 +01:00
Paul Poulain
b70e4f3d6d BZ4376 Minor change in GetMarcAuthor
A minor change in the GetMarcAuthors function of C4/Biblio.pm allow differentiate the type of authors in the templates

This change allow doing things like this in the templates:
<TMPL_IF EXPR="tag == 700" && code eq 'a' >
 <strong>Author:</strong>
<!-- TMPL_ELSE -->
 <TMPL_IF EXPR="tag == 710" && code eq 'a' >
  <strong>Corpotation Author:</strong>
<!-- /TMPL_IF -->
<!-- /TMPL_IF -->

(html template syntax, but also applicable to template toolkit)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Works as claimed and doesn't break existing functionality.
2012-01-18 12:07:12 +01:00
Paul Poulain
6456afea95 Bug 6990 follow up PODDOC & unit test updating
This patch removes the TransformKohaToMarcOneField sub, but there was some remaining POD & unit test about it
2012-01-17 12:07:03 +01:00
02d392a502 TransformKohaToMarc enhancement
TransformKohaToMarc function is called for each biblio and item that has
to be build. This function execute a DB statement for each Koha field
that has to be mapped to a MARC tag/letter. This impact deeply
performances for script like rebuild_zebra, especially since items are
not anymore in bilio records and have to be rebuild on the fly.

I'm proposing a patch which read Koha field to MARC field mapping just
one time and cache it. My test show a 30% execution time improvement on
rebuild_zebra.pl script. It uses already cached mapping in C4::Context.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

http://bugs.koha-community.org/show_bug.cgi?id=6990
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-17 12:07:02 +01:00
Chris Hall
48f25fec43 bug 7239 fix to avoid error being thrown even though a record is created
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
When creating an item in acquisitions while ordering and not filling out
any fields, there is no longer shown a perl error message.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-14 17:37:41 +01:00
Ian Walls
f56e6c0a58 Bug 7073: GetCOinSBiblio should take $record object, not biblionumber
This patch changes the GetCOinsBiblio subroutine to take a MARC record object
(as returned from GetMarcBiblio) instead of a biblionumber.  The first thing the subroutine
did was GetMarcBiblio, and the $biblionumber passed was never used again.

This subroutine was only used 3 places: opac/opac-search.pl, opac/opac-detail.pl,
and C4/VirtualShelves/Page.pm.  In the first and last cases, it was used in a loop.
In the last two cases, a call to GetMarcBiblio had already been done.  This is expensive, and
we were doing it twice per record.

For opac/opac-search.pl, the call to GetMarcBiblio was moved to just outside GetCOinSBiblio;
this will not change the performance at all.  But for opac/opac-detail.pl and C4/VirtualShelves/Page.pm,
a redudant call to GetMarcBiblio is now avoided.

To Test:
1. Enable COinSinOPACResults in system preferences.  Perform a search in the OPAC.
   Verify that the COinS spans are showing up
2. View the detail record of one of the returned items.  Confirm that the COinS span exists on the detail page.
3. View a list in the OPAC.  Confirm that COinS spans are still showing up

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-24 11:44:02 +01:00
Joy Nelson
1d0192b85c Bug 7221: C4/Biblio.pm documentation is incorrect.
$dbh is not a valid first parameter.  Removed $dbh from line 392 to show correct syntax.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
2011-11-17 16:47:28 +01:00
7ee0565f5c 7146 (Update timestamps when deleting a biblio)
Currently, when you delete an item, the timestamp column in deleteditems is
updated with current time. (This comes from an [unintentional] additional
update statement in DelItem.) It makes deletion time visible.
In the past, the marcxml was updated too at that moment, resulting in an
updated timestamp in biblioitems too. The timestamp in biblio was not touched.

If you delete a biblio however, the timestamps in deletedbiblio and
deletedbiblioitems do not reflect time of deletion. They still show the time of
last update before the record was deleted. This last update can be extracted
from MARC field 005 too.

This behavior is not consistent nor logical. I would suggest to add a statement
in DelBiblio to force updating the timestamp in deletedbiblio(items) too. It
makes the time of deletion visible in the record too. The time of deletion of a
biblio can be very useful for e.g. synchronizing purposes.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-05 05:50:02 +01:00
Christophe Croullebois
4d67e69107 Bug 5680: Order cancelling improvement : delete attached items & biblio if avalaible
- all items attached to the order are deleted
- if there is no more items, and if the biblio is not in other orders and no subscriptions and no holds then the biblio is proposed to deletion
Now whe have 2 links : "delete order" and "delete order and catalog record", the second one appears only if the deletion is possible.
Note that if an hold is related to the item or if the item is unique for the biblio the link "Delete order" is canceled due to hold remaining.
On mouse over explanations are shown with count.
More lines of warnings with count are shown depending of the case.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Configuration:
AcqCreateItem = on order

Test cases and results:

1) Order new record with 2 items
a) From basket
- delete order: only deletes items, OK!
- delete order and catalog record: deletes record and items, OK
b) From shipment/receive
- delete order: only deletes items, OK!

2) Order 1 additional item for existing record with 1 item
a) From basket:
- delete order: works, existing item and record remain, OK
- Can't delete order and catalog record, 1 item left, OK!

3) Order new record with 1 item, title level hold on record
a) From basket:
- delete order: not possible, OK!
- delete orer and catalog record: not possible, OK!
b) From shipment/receive page
- Cancel: Deletes order, record and hold silently.
NO WARNING. NOT OK. See note below.

4) Order 1 additional item for existing record with 1 item,
item level hold on existing item
a) From basket:
- delete order: works, hold and existing item remain, OK!
- delete order and catalog record: not possible, OK!
b) From shipment/receive page
- Cancel: on order item is deleted, other item and hold remain.

5) Order new serial record, create subscription
a) From basket:
- delete order: works, record and subscription remain, OK!
- delete order and catalog record: not possible, OK!
b) From shipment/receive page:
- Cancel: Subscription and record are silently deleted. NOT OK.

6) Order additional item for existing record with other on order items
a) From basket:
- delete order: works, existing on order items remain, OK!
- delete order and catalog record: not possible, OK!
b) From shipment:
- Cancel: deletes order and ordered item. OK.

Changes made:
I changed the wording of the error messages a bit in the template.
I changed the message 'Can't delete order and catalog record' to not be
shown as a link, as the link does nothing. Tooltip still appears.
I attached a screenshot to the bug showing some of my changes.

Hope that's ok.

Necessary  enhancements:
Cancelling orders when receiving items should work the same as from the
basket summary page. We need the same checks and messages there before
deleting records and items automatically.
I am signing off on this, but to go into Koha it  needs a follow-up for the
order receive page.
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 16:58:46 +13:00
Ian Walls
4e95e94727 Bug 6789: biblios with many items can result in broken search results link
This patch fixes an issue whereby biblios with many items (often > 500) would index,
but not the biblionumber itself, resulting in search results with a) inaccurate item counts
and b) no biblionumber to use in the link to the details page.  This is due to Net::Z3950::ZOOM  not providing
a mechanism for specifying different connection attributes; the maximumRecordSize ZOOM connection attribute,
if not specified, defaults to 1MB, which is less than the size of a MARC record with many, many 952 fields.  Since
it is unlikely we can fix Net::Z3950::ZOOM in a timely fashion, this patch aims to build a workaround on the Koha end.

This patch changes EmbedItemsInMarcBiblio to use append_fields instead of insert_ordered_fields,
so the 999$c will come before the item records.  It's VERY unlikely we will encounter more than 1MB of biblio-level MARC
content, as this would break the ISO-2709 standard by a large factor.

To this end, it also moves the fix_biblio_ids portion of get_corrected_marc_record out of rebuild_zebra.pl,
and makes it a part of GetMarcBiblio (right before EmbedItemsInMarcBiblio, so the 952s still come last).  fix_biblio_ids
is kept as a subroutine for the deletion portion of rebuild_zebra.pl, which still uses it.

It also uses the subroutine parameter in GetMarcBiblio to do the EmbedItemsInMarcBiblio action, rather than having
rebuild_zebra.pl perform it on the itemless record returned from GetMarcBiblio.  Simpler and cleaner that way.

To verify bug issue:
1. Find a biblio with over 700 items (or enough that the resulting MARCXML is greater than 1MB)
2. search for this biblio (in a search that would return multiple results, not just this title).  You should get the title in
the results list
3. attempt to click the link to this biblio's details page; the biblionumber should be blank, leading to a 404

To test solution:
1. Apply patch
2. modify the biblio slightly (click the 005 for example) and save
   OR manually add the biblio to zebraqueue for reindexing
3. after rebuild_zebra.pl -z -b -x runs, use the same search as above. The title should still appear.
4. click the link, and find yourself on the biblio detail page as desired

Signed-off-by: D Ruth Bavousett <ruth@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-15 13:47:24 +13:00
7621591ae6 Bug 6912 Test 008 presence in get CoinS function
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 15:57:18 +13:00
Jared Camins-Esakov
f09e2ca27e Bug 5528: Analytic records support
Display links to parent biblios, show linked items in holdings, allow holds on
linked items. This uses MARC to maintain relationships.

Sponsored by the Mississippi Department of Archives and History and RapidRadio
Solution. Originally developed by Savitra Sirohi and Amit Gupta at OSSLabs, with
UNIMARC support added by Zeno Tajoli. Commits squashed and merge conflicts
resolved by Chris Cormack from Catalyst. Respect for NORMARC and some small
framework portability fixes made by Jared Camins-Esakov of C & P Bibliography
Services.

IMPORTANT NOTE: A bug in the 773 coding for MARC21 was corrected from the
original OSS Labs code. The 773s generated by the pre-release code did not have
the first indicator set to '0', which means that they were not supposed to
display. Going forward, the first indicator will be set correctly, but existing
records created with this code will no longer appear (they appeared before only
due to another bug). To correct this, you could globally (or, to make sure you
only modify records created with the Analytics tool, for records with 773$0)
change the first indicator of the 773 from blank to '0'.

== Background ==
An analytic record for an item is a more detailed, monographic biblio for an
item attached to a serial record .  This is often used for special issues of a
journal that are released as books on their own (assigned an ISBN, as well as an
ISSN/volume/issue).  It is important for researchers to be able to search for
these items both as issues of the serial, and as monographs.  It is equally
important for the library to not have duplicate item records for the item in
question to have to keep synchronized.

== Establishing relationships ==
Analytical records are connected to items belonging to parent or host
bibliographic records. This can be accomplished by:
* From an analytical bibliographic record linking to an host item by providing
  the item barcode as input
* From a host item by using option "analyze", this creates a new empty
  bibliographic record with field 773 (MARC21) populated
* Running a new CLI script that establishes a relationship between the
  analytical record and the host item identified by the barcode in the
  analytical record's 773$o (MARC21)

== Connecting Records ==
The relationships are maintained in the MARC records, we have not used database
tables at all.

== MARC Representation ==
In MARC21/NORMARC we have used:
* 773$9 to store the Koha item number of the host item
* 773$0 to store the Koha biblio number of the host bibliographic record

The above fields are used to display the relationships in various screens in the
OPAC and the staff interface. Additionally, when populating field 773 with host
item's details, we have used following MARC 21 mapping:
* 'a' <= 100/110/111 $a (author main)
* 'b' <= 250$a (edition)
* 'd' <= 260$a, 260$b, 260$c (place, publisher, year)
* 'o' <= barcode
* 't' <= 245$a (title)
* 'w' <= (003)001 --> if no 001 is available, we can populate biblionumber
* 'x' <= 022$a (issn)
* 'z' <= 020$a (isbn)

In UNIMARC, this code uses:
* 461$9 to store the Koha item number of the host item
* 461$0 to store the Koha biblio number of the host bibliographic record

When populating field 461 in UNIMARC, the following mapping is used:
* 't' <= 200$a (title)

== Treatment of Holds ==
A key requirement was to allow holds to be placed on host items from the
analytical record. We have accomplished this by allowing holds on specific
copies only. Biblio level holds are not allowed. This ensures that holds are
placed on specific items that are relevant to the analytical record.

== Deleting host items with linked analytical records ==
As we have not used database tables to maintain relationships, we had to use
search to find out if any linked analytical records are present. If 1 or more
analytical are present, we do not allow deletion of items. This is similar to
what we see when we try to delete authority records.

== Importing analytical records ==
Analytical records can be imported using bulkmarcimport or the GUI tools. The
new CLI script can be executed after the import to establish relationships with
host items. The script will establish relationships using the host item's
barcode, the barcode must be present in 773$o of the analytical record.

== What if there are two or more copies of the host item? ==
The current design will require that there be two host (773) fields, one for
each copy.

== What if there is no barcode available for the host item? ==
It is still possible to establish a relationship, by populating 773$9 with the
host's item number. However the CLI script uses barcode in 773$o to establish
relationships so it won't work where barcodes are unavailable. Also from an
analytical record, it is possible to establish a relationship to a host item by
providing the barcode as input, this option will not be available as well.

Commits that added the following features were squashed by Chris Cormack (this
is not a list of every commit):
* Display links to host records from biblio detail screens
* Support for UNIMARC, respecting the system preference 'marcflavor'
* Support holds from the OPAC
* Ability to link to items belong to host records from a analytical record
* Display items belonging to host records in the moredetail page
* Ability to edit items belonging to host records, also ability to delink from
  them
* Move get host items code into a C4 routine, also calling the new routine in
  related perl scripts
* Move host field population to a C4 routine, all changes in pl files to call
  new routine
* Allow only specific copy holds for analytical records plus changes to use new
  C4 routines
* Support for holds on items linked via host records
* Storing bibnumber and itemnumber in subfields 0 and 9, plus other mapping
  changes
* New command line script that establishes relationships between analytical
  records and host items and bibs. The script looks for host field (MARC21 773)
  in records, and based on barcode in subfield 'o' populates host bibnumber in
  subfield '0' and host itemnumber in subfield '9'. The script can be run after
  an import of analytical records, it can also be run in the crontab to maintain
  the relationships
* Ability to create analytical records from items, to view linked analytics, and
  prevent deletion of items that have linked analytics
* New template for catalogue/detail.pl (NOTE: not a new template file, just a
  new way of displaying analytics), template displays linked analytics and
  allows creation of analytical records
* New zebra index for item number in host fields. This index will be used to
  display links to analytical records from host records
* Display title of host record instead of the phrase host record
* Using detail.tmpl for analytics tab instead of a new template file
* Improved qualification info prepration in Prephostmarcfield
* Check for linked analytics before deleting item
* Display link to host record and more meaningful anchor text for edit item link
* Analytical record: Unimarc index in record.abs and help in
  create_analytical_rel.pl
* Adding a sys pref that controls display of options to create analytical
  relationships
* Add host entry in XSLT stylesheet in staff item detail
* Added host record support to OPAC detail XSLT
* Adding 773$0 and 773$9 to all frameworks
* Adding 773 subfields 0 and 9 to default marc framework via updatedatabase.pl
* Display create analytics and used in links in catalog detail
* Fixed problem where analytical records not showing in OPAC search results
  because GetMarcBiblio now needs a flag to add item records
* Fixed problem where analytics count was set to 1 for all records, not just
  those with analytics
* Fixed catalogue detail page not to show analytics counts if count is 0

Conflicts:
	installer/data/mysql/updatedatabase.pl
	koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt
	kohaversion.pl

Co-author: Savitra Sirohi <savitra.sirohi@osslabs.biz>
Co-author: Zeno Tajoli <tajoli@cilea.it>

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 10:03:39 +13:00
Srdjan Jankovic
c453a45f38 bug_6576: Submit when changing framework rather then reloading
TransformHtmlToMarc(): changed interface - no point passing params when
they can be accessed from $cgi

Signed-off-by: Liz Rea <lrea@nekls.org>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-22 09:05:44 +12:00
Stéphane Delaune
97964bc3e9 Bug 6135: insert fields ordered in C4::biblio:ModBiblioMarc
Fixing order subfields for biblionumber and biblioitemnumber

BibLibre MT5951

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-01 15:23:37 +12:00
Janusz Kaczmarek
f16abec68a Bug 6480 - Koha produces a lot of apache logs for UNIMARC
For Koha with UNIMARC a lot of entries in apache log lines are produced.

In the patch, corrections to the GetCOinSBiblio function has been introduces,
in the UNIMARC section: (i.e. || '' at the end of lines that can create this
problem) -- analogous as it is in the MARC21 section.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-07-16 20:25:31 +12:00
Colin Campbell
306dc79217 Bug 5453 : Move declarations out of conditionals
Patched for C4 Modules

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-07-15 15:50:24 +12:00
Srdjan Janković
5829cef6d8 bug_6433: exception handling
Signed-off-by: Magnus Enger <magnus@enger.priv.no>
2011-06-10 11:27:25 +12:00
Chris Cormack
2468bab611 Fixing permissions, no need for this file to be executable 2011-06-02 09:05:37 +12:00
Jared Camins-Esakov
5bbfb94f43 Bug 5683 follow-up: calls to ModBiblio can still fail
Because C4::Charset directly manipulates the MARC::Record object, bad data has
to be cleaned in ModBiblio before the call into C4::Charset. The corrupted
records can also break the Zebra index. After this fix has been applied, it
would probably be a good idea to run the misc/maintenance/touch_all_biblios.pl
script to ensure that this problem has been cleared up.

Signed-off-by: Jared Camins-Esakov <jcamins@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-06-02 09:04:48 +12:00
Chris Cormack
b4d6ad26dc Merge branch 'new/enh/bug_5579' into kcmaster
Conflicts:
	C4/Biblio.pm
2011-04-21 11:48:11 +12:00
ce849240ad bug 5579: tweaks to bulkmarcimport.pl
Fixes bug where a bib record imported by bulkmarcimport.pl
could become unindexable by ensuring that ModBiblioMarc()
is always called by bulkmarcimport.pl to finalize saving the
bib record (as it was initially created by AddBiblio with the
defer_marc_save option).

Also introduces a utility routine, C4::Biblio::_strip_item_fields.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-21 10:05:02 +12:00
0a27e64a5b bug 5579: remove a now-unecessary vestigal variable
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-21 10:05:00 +12:00
36e3bed7b1 Bug 5791 - Robust handling of deleted/non-existent biblios and authority records
Patch reworked for master using Template::Toolkit.

To+

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-20 12:03:59 +12:00
Matthias Meusburger
2650446d26 bug 5579 : Fixes ISBD display
Signed-off-by: Claire Hernandez <claire.hernandez@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-19 22:35:15 +12:00
Matthias Meusburger
a3ff0bb5cb bug 5579 : Fixes several exports to embed items
- The following export pages used to embed items when exporting,
    this was no longer the case, so they were fixed :
      Intranet :
        - basket/downloadcart.pl,
        - virtualshelves/downloadshelf.pl
        - catalogue/export.pl
      Opac :
        - opac/opac-downloadcart.pl
        - opac/opac-downloadshelf.pl
        - opac/opac-export.pl

  - Notes :
     - GetMarcBiblio used to embed items data, this was no longer the case,
       so an optional parameter was added to choose if items should be embedded or not.
       This way, previous work on this bug is not broken, and this is a pretty usefull
       feature, imho.
     - An optional parameter has been added to SetUTF8Flag, to be able to use NFD during
       normalization. This was required to make Unicode/UTF-8 export work again.

Signed-off-by: Claire Hernandez <claire.hernandez@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-19 22:35:15 +12:00
e96315556b bug 5579: new routine to embed items in bib
Adds a new routine, C4::Biblio::EmbedItemsInMarcBiblio, to
embed the items in the bib record when necessary:

* cataloging/additem.pl
* rebuild_zebra.pl

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Claire Hernandez <claire.hernandez@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-19 22:34:21 +12:00
Henri-Damien LAURENT
3584c4426b Bug 5579: remove items from MARC bib
This is a squash of four patches by Henri-Damien Laurent
starting work on removing the copy of item record information
in the 9XX field of bibliographic records.  The reason
for doing this is primarily to improve performance, in particular,
the expense of having to add/modify the bib record whenever an
item changes.  Now, whenever an item changes, the bib record is
put in the queue to be reindexed; when the bib is indexed, the 9XX
fields are inserted into the version of the bib that Zebra indexes.
Since rebuild_zebra.pl runs in a separate process, the processing of the
bib record will not delay (e.g.) circulation.

As part of upgrading to 3.4, the following batch script should be run:

misc/maintenance/remove_items_from_biblioitems.pl --run

This should be followed by a complete reindexing of the bib records, e.g.,

misc/migration_tools/rebuild_zebra.pl -b -r

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Claire Hernandez <claire.hernandez@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-19 22:33:56 +12:00
Paul Poulain
7e1077b51b Bug 5961: Filling a basket from the reservoir
creating a form order to import all records from a staged file at once.
All lines of the choosen staged file will be created with the same budget
and item (if applicable depending on AcqCreateItem syspref)

BibLibre bug #4007

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

Bug 5961: follow-up : use matchingrules selected in manage-stage-import instead of FindDuplicate

Now, bulk importing the iso2709 result in adding biblio or connecting to an existing one

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

BZ5961: follow-up, save currency

Cait noticed that currency was not saved properly in the aqorders table.

note a surprise, as the 3.2 had no currency feature and 5961 had been written against 3.2
anyway, this patch fixes the problem

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-09 21:45:50 +12:00
Chris Cormack
c1181b780b Merge remote branch 'kc/new/pending_qa/enh/bug_3644' into kcmaster 2011-04-09 19:16:45 +12:00
Paul Poulain
e5ff05857e Bug 6106: add item not respecting framework in acq The PrepareItemrecordDisplay sub builds an item framework for later use in ACQ Some cases were missing : item subfield connected to a plugin, hidden subfield, long size subfield.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-04-08 10:34:09 +12:00
Magnus Enger
edf8ad5d5d Bug 3644 Add support for NORMARC
- XSLT for the OPAC
- Value_builders for lesder, 007 and 008
- Default NORMARC framework
- Reverse MARC logic of some subs, so MARC21 is default (and works for NORMARC)
- Add NORMARC as an option to the syspref marcflavour
- Add record.abs for NORMARC
- Add NORMARC and nb as options to Makefile.PL
- Add etc/zebradb/lang_defs/nb/sort-string-utf.chr
- Copy MARC21slim2OAIDC.xsl to NORMARCslim2OAIDC.xsl

Some things are still missing, e.g.:

- XSLT for Intranet
- More MARC21slim2*.xsl transformations
2011-03-30 10:13:37 +02:00
Jared CAMINS-ESAKOV
8958f152e7 Bug 4366: Improve COinS support for MARC21
This patch begins the process of improving the COinS support in Koha to take
advantage of all the metadata available in the MARC format. COinS still doesn't
work quite right, but at least it seems to be following the standard now. The
COinS exported by C4::Biblio::GetCOinSBiblio now correctly identifies articles
from journals and books as such.

Signed-off-by: Jared Camins-Esakov <jcamins@bywatersolutions.com>
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-03-29 12:16:46 +13:00
Frédérick Capovilla
cce98a2914 Bug 5883 : Prevent re-encoding the items if they are already in UTF-8 in ModBiblio.
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-03-24 13:20:15 +13:00
Henri-Damien LAURENT
6b4512d5c4 Bug 5909 : SetUTF8Flag on any incoming data
This prompts NFC normalization on adding record
Therefore, any saved record will be NFC normalized

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-03-23 19:55:16 +13:00
Paul Poulain
ddbedbfc2f Bug 4330 : Adding some copyright BibLibre statements 2011-03-21 10:57:20 +13:00
Paul Poulain
620ae78f84 Bug 5879 : Biblio.pm : fix isbd syspref and default location
- the systempreference is isbd, not ISBD
- when preparing the ItemRecord (for acq or serials recieving), there was no default value calculated for location. Fixing that

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-03-18 10:35:02 +13:00
Jared Camins-Esakov
4bc293c3aa Bug 5810: Subject tracings search complete subfields
This patch adds the syspref TraceCompleteSubfields. When TraceCompleteSubfields
is set to "force," clicking on links in non-authority controlled subject
tracings will only find other records where the entire subfields match. Leaving
it at "don't force" keeps the current behavior of doing a keyword search of the
subject indexes.

This patch implements complete-subfield subject tracings in MARC21 XSLTs (OPAC
and Staff) and all Normal mode interfaces. UNIMARC XSLTs have not been updated.

This patch also adds the syspref UseAuthoritiesForTracings. When set to "Do not"
tracings in the XSLT detail displays will never generate links using authority
numbers, but rather use the heading strings (NB: the tracings currently use only
subfield 'a' for generating links).

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Jane Wagner <jwagner@ptfs.com>
Signed-off-by: Jared Camins-Esakov <jcamins@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-03-13 15:02:59 +13:00
Frédérick Capovilla
b39466c965 Bug 5703: Hide the $9 subfield (linked authid) when showing series for a MARC record in normal view.
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-03-12 08:22:15 +13:00
Chris Cormack
e29aca325d Fixing a syntax error, that snuck in with a merge 2011-02-03 22:52:36 +13:00
f1f36a0c94 Bug 3212 Force leader 9 position to 'a' for new biblios
When Creating a new biblio record, if the cataloguer doesn't use the leader
plugin, a biblio record can be saved with a leader not containing a 'a' in 9
position. If the biblio contains UTF-8 characters, its decoding can fail.

This issue applies to MARC-21 not UNIMARC.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-02-03 22:15:25 +13:00
Chris Cormack
aa398ed055 Bug: 4263 - Repeatable subfields in items
Squashed commit of the following:

commit f441094d5095d165eab18340c983a831cce8f6e0
Author: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Date:   Mon Jul 5 20:33:23 2010 +0200

    bug4263 followup : Can't blank subfields

    Previous bug4263 reintroduced bug 2466: fix clearing item field
    This keeps bug4263 followup to be assigned (donot blank dateaccessioned)
    But also allow to blank item subfields.

commit 92889b766c41b48bdd0e3a33ca4b183b1e259805
Author: Nahuel ANGELINETTI <nahuel.angelinetti@biblibre.com>
Date:   Fri Apr 23 13:54:30 2010 +0200

    (bug #4263) dateaccessionned is cleaned on item modification

    Every item modification, date accessionned is cleaned, if there is no modification made, we must'nt reset to "undef" the value.

commit 5abb2db16b2564d32e84b7cc680acbc301d73179
Author: Nahuel ANGELINETTI <nahuel.angelinetti@biblibre.com>
Date:   Tue Mar 2 09:57:33 2010 +0100

    (bug #4263) fix the edition of items with repeatable subfields

    The subfield management in item level is broken, fields are concatenated in one field, and if the librarian edit it, the values are not selected.
    This big patch fix three things:
     1) saving fields that are stocked in SQL(using koha2marc mapping) are now well cut and separated in _REAL_ subfields
     2) loading records with repeatable subfields are now well returned
     3) Editing items with repeatable fields works well

Signed-off-by: Chris Nighswonger <cnighswonger@foundations.edu>

Bug 4263 Removing extranious block of code
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-02-03 16:08:08 +13:00
Jared Camins-Esakov
428556cd13 Bug 5683 - it is possible to save corrupt records
This patch makes it impossible to save records with variables fields that don't
contain any subfields. Prior to this patch, link_bibs_to_authorities.pl would
sometimes corrupt records.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-02-03 09:34:51 +13:00
Colin Campbell
a61db4986d Bug 5403 Remove DisplayISBN and GetPublisherNameFromIsbn
These two subroutines were no longer being used by any other code
removed them from their respective modules
If we need any ISBN in future we should use Business::ISBN directly

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-01-17 19:40:08 +13:00
a660b25aa0 Fix for Bug 4885 - Only 1 ISBN shows in non-XSL detail view
Fixed by doing a pretty dumb copy of GetMarcNotes. Functional,
but it could be there is a more efficient way to do it given
we want one repeating tag rather than a range of tags?

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
- fixed small typo in opac-detail
- corrected isbd punctuation in opac-detail
- tested with 0, 1, 2, 3 isbns in 020, MARC21
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-01-14 10:48:47 +13:00
76338220dd Bug 5374 (update transaction date when saving biblio) RESENT with small fix
Currently, the plugin marc21_field_005 and its unimarc opponent fill field 005
when this field gets focus. This implies that updating a record without
touching this field does not update 005.
At the same time, a user could accidentally delete a character in the 005 when
having focus. This mutilated field value will be saved however.

I would suggest to add a few lines to ModBiblioMarc in Biblio.pm to ascertain
that adding or updating a record always updates 005 in marc21 as well as
unimarc.

Signed-off-by: Nicole Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-01-05 08:42:47 +13:00
Katrin Fischer
f90f92f80f Bug 5430: Follow-up, fixes error message when no 001 exists
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-11-30 07:01:17 +13:00
Katrin Fischer
703156daee Bug 5430: Add Control number as option to OPACSearchForTitleIn
Makes {CONTROLNUMBER} available as new placeholder in
system preference OPACSearchForTitleIn.

{CONTROLNUMBER} will be replaced by the number in tag 001.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-11-25 08:26:33 +13:00
d13d96614b Bug 5412 double quotes break coins and thus search results in some scenarios
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2010-11-18 14:22:56 +13:00
64afbf1416 bug 3902: item class source can now be set during serials receiving
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-07-02 15:15:12 -04:00
7c0e441d50 replace references to defunct info email address
Now links to Koha project website.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-06-25 05:18:44 -04:00
Andrew Elwell
8480f56370 Another batch of POD cleanups
Signed-off-by: Andrew Elwell <Andrew.Elwell@gmail.com>
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-06-09 08:38:56 -04:00
64daee5495 fix a common "developement" typo
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-05-25 14:38:38 -04:00
Matthias Meusburger
4dd2086deb MT 2269 : Do not display all the items if there is a large amount of items
Also fix the barcode not found problem (due to empty lines)

Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-04-29 21:52:15 -04:00
Lars Wirzenius
4523a2df0d Fix file permissions: if it is not a script, it should not be executable.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-04-16 00:40:34 -04:00
8e2cb03097 Bug 4368 - Avoid reseting UNIMARC 100 tag when importing biblio records
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-04-16 00:28:44 -04:00
Chris Cormack
1a1d50fb44 Trapping fatal error that occurs if you call GetCOinsBiblio with a biblionumber that doesn't exist in the Koha database
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-04-07 08:43:29 -04:00
Lars Wirzenius
7279f55b60 Fix FSF address in directory C4/
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-03-16 20:17:56 -04:00
8b4501f7c7 Revert "Populated MARC 952$2 field for serials-edit.pl"
This reverts commit 708b4797e3.

Had introduced following error:

Global symbol "$value" requires explicit package name at C4/Biblio.pm line 2381.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-02-02 19:26:33 -05:00
David Birmingham
708b4797e3 Populated MARC 952$2 field for serials-edit.pl
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2010-02-02 18:37:54 -05:00
Paul Poulain
d17a72ed5b (MT 2671): Serial management in koha_add_biblio
serial management in koha_add_biblio is only relying on presence of
$biblio->{seriestitle} It is not correct, $biblio->{serial} definition
should prevail over this test
2010-01-28 15:11:56 +01:00
Paul Poulain
01ba63a84f #4003 default value in PrepareItemrecordDisplay
The default value you can define in cataloguing framework was not used for item created from acq or serial recieve
2010-01-28 15:11:50 +01:00
Nahuel ANGELINETTI
8f292e4e50 (bug #3783) fix marcurls
this permit to have multiples urls in one field
2009-11-18 19:04:52 +01:00
Henri-Damien LAURENT
c71acb2a1f C4/Biblio.pm Perltidy 2009-10-27 23:50:05 +01:00
Henri-Damien LAURENT
02415cb0a2 Followup bfffa5 TransformHTMLToXML bug fix
_default_ind_to_space had problems
2009-10-26 18:24:30 +01:00
Nahuel ANGELINETTI
c0ee76d486 (bug #3726) fix ISBD url translation 2009-10-26 15:34:23 +01:00
Matthias Meusburger
790b7cc1b9 MT 2037 : Update ISBD 2009-10-22 11:45:38 +02:00
Henri-Damien LAURENT
bfffa5361b TransformHTMLToXML bug default_ind_to_space
default_ind_to_space made the assumption that indicator string by default was a string containing 2 characters.
This was not true, causing an Internal server error.
This patch Fixes that.
2009-10-07 10:58:25 +02:00
Henri-Damien LAURENT
fd75507a55 (bug #3370) add keyword to MARC field mapping
This add the support of keyword => MARC field mapping, ton abstract the relation between human readable fields like subtitle, title, authors, location, ... and MARC fields in each framework.
This will allow to koha developper to be more flexible with each framework and don't care about the MARC flavour, just require some "keywords" to the user.

Conflicts solved :
	C4/Biblio.pm
	installer/data/mysql/kohastructure.sql
	installer/data/mysql/updatedatabase30.pl
	kohaversion.pl

Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
2009-09-30 11:30:42 +02:00
Paul Poulain
937e0d73df fix for #3620: basket management
- basket.pl: updating display, formatting dates,
- neworderempty: updating display, removing useless code, using ACQ framework if it exist. The ACQ framework will be used for creating items record during acquisitions. If it does not exist, default is used instead (which has many more informations, lot of them being irrelevant during acquisition, like the barcode)
- new order from imported batch: rewrite of the workflow. Now uses neworderempty and changing status of import_record to 'imported'
- s/copyrightdate/publicationyear/ as it's what libraries uses when ordering
- fixing some warnings
-
2009-09-30 11:30:34 +02:00
Matthias Meusburger
96fc46e2e1 MT 1717 : Opac descriptions for authorised values 2009-09-30 11:30:28 +02:00
Paul Poulain
abbdc4a63c Fixing API of ModBiblioMarc
no need to retrieve $biblionumber, as we already know it
2009-09-30 11:30:14 +02:00
Nahuel ANGELINETTI
8262082fa2 (bug #3370) export function and fix return
this add GetRecordValue in exported functions, and made it to return a ref.
2009-09-30 11:30:11 +02:00
Henri-Damien LAURENT
0a50277f80 Adding management for multiple $9 in MARCSubjects
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-09-30 11:22:21 +02:00
4e5fe41a59 bug 3614 followup
* renamed default_ind_to_space to _default_ind_to_space
  as it is an internal function
* added calls to _default_ind_to_space in other places

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-09-15 09:21:58 -04:00
Colin Campbell
dab68f884f bug 3614 Fix incorrect setting of indicator
Pull the code into its own subr so that the dangers of
inaccurate copy & paste are avoided in future

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-09-15 09:03:33 -04:00
Sébastien Hinderer
2a8df0bc2f Get rid of a few warnings in the bulkmarcimport script: C4/Biblio.pm, hunks #1, #2: a warning occurring in NoZebra configurations. C4/Biblio.pm hunk #3: warning occurring in Unimarc MARC flavour. misc/migration_tools/bulkmarcimport.pl hunk #1: warning occurring when no default format is specified on command-line with -m switch.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-09-06 09:54:11 -04:00
7df9800672 Adding some caching to C4::Biblio, to GetMarcStructure
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-25 20:23:22 -04:00
7f7dfa0a11 bug 3520: fix crash when adding or editing items
Fix the following crash when adding or editing an
item record in the staff interface:

Can't call method "append_fields" on an undefined value at
/usr/local/share/perl/5.10.0/MARC/File/SAX.pm line 92.
 at /usr/local/share/perl/5.10.0/MARC/File/SAX.pm line 92

This crash appears only if a version of MARC::File::XML
greater than 0.88 is installed, and was triggered by
C4::Biblio::TransformHtmlToXml() failing to create a valid
MARCXML blob, which must include a <record> element.

This patch also fixes the indicator values generated by
TransformHtmlToXml(), setting them to " " instead of
"" when no indicator value is supplied.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-11 10:51:03 -04:00
Joe Atzberger
e18de9d605 Cleanup docs, typos, style etc.
Unused variable removed.  Weirdness with empty position in
assignment list also removed.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
2009-08-09 13:23:16 -04:00
Kyle M Hall
38b356da8b Bugfix 2339 - Place hold button display with AllowOnShelfHolds OFF
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-07-29 21:15:13 -04:00
Colin Campbell
68a8b49bf2 Explicitly set _find_value's return to a string if not defined
Avoids generating a slew of warnings in the log when the undefined
 value was concatenated or used in regexps

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-07-22 10:17:58 -04:00
a073d84092 Bug 3423 - In Cataloging, fields are not ordered by tag number
In cataloging, depending on installation and how biblio framework has been
created/modified, fields are not displayed ordered by tag number. For example,
in UNIMARC you can have in tab '2':

  225
  200
  210

This patch order fields in tabs by tag and letter in the tag.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-07-20 21:29:57 -04:00
Galen Charlton
dfdbb91fcb fix permissions error introduced in prior patch 2009-05-28 18:47:01 -05:00
Paul Poulain
4ce1f9c4da Fixing API of ModBiblioMarc
no need to retrieve $biblionumber, as we already know it

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-28 17:31:57 -05:00
Paul Poulain
6924e7d6b4 fix for 2997 : superlibrarian's ability to edit item/patron home branch affected if all other privileges are selected
Before this patch, we used to test for flags == 1, which was wrong when patron had all privileges.
This patch just adds a %2 to check that patron has superlibrarian privilege, and maybe something else we don't care.

I think I fixed it everywhere except in acquisition, that will be addressed by BibLibre new acquisition module.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-28 17:06:46 -05:00
Galen Charlton
53b944b5f5 fix uninitialized value warnings during COinS generation
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-27 09:02:14 -05:00
Galen Charlton
a6c339aa69 add subtitle to COinS for MARC21
Preserves change added in the LTFL integration
while also switching to Nahuel's COinS implementation.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-11 19:05:32 -05:00
Nahuel ANGELINETTI
efaa4bb82c (bug #1578) fix a little error in code
This one, fix the use of "or" instead of "||", else a warning is raised.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-11 19:05:32 -05:00
Nahuel ANGELINETTI
6b8992ef0f (bug #1578) Add the (quasi)full COinS(Zotero) support
this patch do a lot of things :
 * Add the function GetCOinSBiblio in C4::Biblio, return the COinS value that must be put in a span title
   This will be usefull for OpenURL support.

 * Replace the span in opac-detail, and put the var get from GetCOinSBiblio
 * Fix an <img> tag that wasn't autoclosed
 * Add the COinS in search result
 * Full COinS support of UNIMARC, the MARC21 support should be improved to provide all kind of document types

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-05-11 19:05:32 -05:00
Galen Charlton
a2b1922b66 bug 2915 followup - small efficiency improvement
Following up on a suggestion by Joe Atzberger, save
a database query by not counting the subscriptions
to delete; instead, simply fetch a list of them.

No user-visible change.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-27 18:03:24 -05:00
Joe Atzberger
248e0392e2 Multi-bug fix - SetMarcUnicodeFlag for records coming from Koha
This has bearing on bugs 2905, 2665, 2514 and other "wide character" crashes
related to diacritics and Unicode.  This should help open the door for reliable
input of diacriticals via acquisitions.

MARC21_utf8_flag_fix.pl diagnoses and fixes existing problems with MARC data
affected by the bug.

Adding SetMarcUnicodeFlag to TransformKohaToMarc prevents the bug from corrupting
further data.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-18 09:14:43 -05:00
Galen Charlton
6a2a4e146e fix various warnings
* Use of uninitialized value in pattern match (m//) at C4/Biblio.pm line 1305
  (displaying MARC21 856s that don't have $3)
* Use of uninitialized value in multiplication (*) at catalogue/detail.pl line 243.
  (attemping to calculate average Amazon rating if no Amazon info
   is available)
* opac-detail.pl: Use of uninitialized value in length at C4/External/Amazon.pm line 90
  (attempting to calculate length of $isbn if it happens to be undef)

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-08 15:54:19 -05:00
Nahuel ANGELINETTI
43bb27b8da (bug #2915) C4::Biblio::DelBiblio delete the serials
This patch add the serials deletion in DelBiblio function, so now when a record is deleted all attached serials will be too.

Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-08 14:51:30 -05:00
Nahuel ANGELINETTI
89c062c44b (bug #3053) extract ISBD view generator, and permit to display valuecode in ISBD view
this patch extract the generator of ISBD view in a C4 function, because it's used in intranet AND in OPAC but with 2 separate codes.
Now it's more reusable.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-06 11:16:34 -05:00
Mason James
eb62fd74c1 fix to ignore 600$2 'Source of heading' fields for MARC21 subject display
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-04-01 10:49:28 -05:00
Galen Charlton
e68c85db0e bug 2904: fix display of URLs in UNIMARC
This based on a patch by Nahuel ANGELINETTI; done to
merge changes with Mason's patch for 2951.  The original
patch description is:

in the previous patch the field used for link "name" was 856$z, but the unimarc doesn't specify this, it say to use the 856$2 fi
This patch make koha to use the 856$2."

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-06 12:18:12 -06:00
Mason James
6b6c8e1dea corrected patch for bug 2951
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-06 11:59:12 -06:00
Daniel Sweeney
ab28085949 Added a require C4::Heading to resolve a circular dependency.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-03-04 16:58:18 -06:00
Galen Charlton
4c55cc220f reduce bib fetches during search and OPAC display
Speed up bib search and OPAC bib display, especially
when the XSLT OPAC results and details display sysprefs are
ON, by passing an existing MARC::Record object to three
functions:

C4::Biblio::get_biblio_authorised_values()
C4::XSLT::XSLTParse4Display()
C4::XSLT::transformMARCXML4XSLT (internal)

These functions previously fetched the bib from the
database, incurring the cost of DB retrieval and MARCXML
parsing even though client code already had a
MARC::Record object available.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-12 14:31:55 -06:00
Joe Atzberger
6b9b778b1b GetMarcFromKohaField needs 2 args, or there's no point.
GetMarcFromKohaField returns (0,0) without the $frameworkcode argument.
Note the argument can be "", but it must not be undefined.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-02-09 14:15:03 -06:00
Nahuel ANGELINETTI
796f626b5b (bug #2904) support of 856$u and 856$z in UNIMARC
This patch change the linktext as the label of the link(in 856$z), and set the url from the 856$u.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-09 13:22:01 -06:00
Galen Charlton
2dcca73ae0 fix permission error introduced in a previous patch
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-06 21:04:42 -06:00
Galen Charlton
dfa0f6ea24 bug 2505: more warnings fixes to C4/Biblio.pm
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-06 18:54:55 -06:00
Andrew Moore
0b1c856e4b Bug 2505: adding warnings to C4/Biblio.pm
I added 'use warnings' to C4::Biblio and made a handful of changes to
reduce the number of warnings emitted.

One notable spot is the change in the regex in
C4::Biblio::GetNoZebraIndexes. I have replaced the parens with a character
class. The parens change the way 'split' works, making it return elements
for each delimiter. We did not want those elements returned, and they
only resulted in "'' => undef" being added to the final hash. They also
resulted in two "undefined" warnings for each pass through the loop. I've
included a simple test for this function.

There may be a few warnings still emitted in spots, but either I haven't
seen them yet, or I have chosen to not fix them yet because they require
too much change.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-05 16:16:38 -06:00
Henri-Damien LAURENT
80781eedeb Using Warns would cause problems with NoZebra
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2009-01-05 16:04:52 -06:00
Henri-Damien LAURENT
29995accf1 Adding some fixing for NoZebra
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-11 09:34:14 -06:00
Galen Charlton
324958669a fix permissions error introduced by previous patch
Modules in C4 should not be executable.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-01 10:39:05 -06:00
Nahuel Angelinetti
e0bbb9d7e7 Delete all calls to thesaurus_popup.pl, and no more used plugins.
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-12-01 10:31:46 -06:00
Michael Hafen
c1c49472f4 bug: bookcount.pl pulls wrong title. Problem is sql joins on wrong columns
the sql seems to assume that biblionumber and biblioitemnumber are always the same, which in my case they aren't.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
2008-08-25 11:51:40 -05:00
Galen Charlton
a670f1817e bug 2509: fix file permissions
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>
2008-08-21 18:55:02 -05:00
Henri-Damien LAURENT
ca8d24546e Bug Fixing merge_authority.pl
merge works on the fly now.
But for an obscure reason, merge_authority.pl fails to update database when lanched on command line.
Adding one table to LOCK for noZebra UPDATE in Biblio.pm
You should remove C4::Search from merg_authority.pl

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-08-09 11:05:53 -05:00
5794bde204 Reformatting serials item edit screen to eliminate label truncation and give it additem-like layout. Also correcting some markup errors, both in the template and in markup generated by Biblio.pm. HDL: I assume this will be superceded at some point by an include, but wasn't sure if that would be in time for 3.0.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-08-06 10:49:06 -05:00
Henri-Damien LAURENT
d7a56c856e Bug fixing : 2470 Serials forgetting library
Using default values for PrepareItemrecordDisplay
It changes Biblio.pm
Adding a hash with default values to PrepareItemrecordDisplay
Usunf that API in Serials.pm and serials-edit.pl

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-08-06 09:35:44 -05:00
Galen Charlton
ed1cadcd3d bug 2297: improve ModBiblio() to avoid duplicate item fields
Prior to this patch, ModBiblio() would append
item tags from the previous version of the bib record
to the incoming bib record before saving the results,
even if the incoming bib record already has embedded
item tags.

For example, if a bib is retrieved using GetMarcBiblio() then
saved using ModBiblio(), the caller was obliged
to delete any item tags first to avoid duplication.

ModBiblio() now deletes item tags supplied in the
incoming MARC record.  This eliminates the possibility
of duplication, and removes any implication that
ModBiblio() can or should be used to modify item
records - ModItem() should be used for that.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-04 09:22:13 -05:00
Paul POULAIN
c50265d238 commenting warn
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-02 13:29:22 -05:00
Galen Charlton
ee49d6d372 kohabug 2207 - improve indicator input in MARC editor
Instead of having one input field for both indicators
of a variable field, the bib and authority MARC editor
now has an input field for each indicator.  This has
two main advantages:

* it is easier to tell what the indicator values are,
  even when the first indicator is a space
* it is easier to set the first indicator to blank
  and the second indicator to non-blank.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-12 11:17:35 -05:00
Galen Charlton
e71cff9a92 bug 2235: fix various data-corrupting bugs in MARC editor
1. Non-ASCII characters in the 942$h (biblioitems.cn_class)
   would cause an edit to fail and lead to a corrupt MARC record in
   biblioitems.marc and biblioitems.marcxml.  Fixed by
   turning on Perl's UTF-8 flag for MARC tag parameters
   processed by C4::Biblio::TransformHtmlToMarc

2. Do not add empty 006 and 007 fields if the corresponding
   input fields are blank.

3. Make it possible to save '0' as a valid subfield
   value.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-10 12:59:44 -05:00
Ryan Higgins
d8c4a8190e Remove a couple of warns.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-06-02 00:50:31 -05:00
Paul POULAIN
c01d0d65a1 small (UNIMARC) fix, error in regexp writing
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-30 11:49:37 -05:00
Paul POULAIN
c07939757f BUGFIXING authority link in detail.pl
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-27 07:37:20 -05:00
Ryan Higgins
f924ff5fe7 add URLLinkText syspref to opac detail, and add some extra handling for MARC 21 urls.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-27 07:33:21 -05:00
Galen Charlton
35ff682f6f minor POD improvement
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-19 16:07:07 -05:00
Andrew Moore
c6068880ab Bug 2047: another fix for error during search when there is no MARC::Record
This is another fix for a bug that was introduced while adding this feature.
I believe that either this patch or the one at:
http://lists.koha.org/pipermail/koha-patches/2008-May/000309.html
should be applied.

In the case that GetMarcBiblio or GetMarcStructure does not return a true value,
this returns without further processing.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:48:42 -05:00
Andrew Moore
57b3b951c1 Bug 2047: adding images to arbitrary authorized values
I've refactored the subs I added in the previous commit so that they make a little
more sense and are in better places in the code base. I was really hoping to make use
of existing subs, but they all seemed so specific to particular uses.

The icons now show up on the OPAC item details page.

TODO: The icons still don't show up in the OPAC search results page.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-30 20:10:43 -05:00
Galen Charlton
257af617f6 fix crash when saving MARC21 bib with NoZebra and BiblioAddsAuthority ON
Needed to identify correct subfield for retrieving
the authority type.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-21 11:18:00 -05:00
Galen Charlton
6a0a4e3900 avoid croak on latest CVS version of MARC::Record
The semantics of MARC::Record->delete_field() changed
slightly in the latest CVS version of MARC::Record.
delete_field() will now croak if passed an undef
scalar, while the version of MARC::Record from CPAN
accepts that input.  Since some packages of MARC::Record
in the wild appear to be based on the CVS version, not
the CPAN version, added a check where needed to avoid
the croak.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-01 06:44:07 -05:00
Galen Charlton
afb36c429e refactor C4::Log::logaction
This fix should resolve in whole or in part several bugs
characterized by the error message 'Can't use string ("0")
as a HASH ref while "strict refs" in use', including
bugs 1101, 1899, and 1910.

There are some possibilities for future work:

[1] Dealing with an operator override, e.g., where
    a circ operator needs to get a supervisor
    to enter a login and password and escalate
    the original operator's privileges for a
    transaction, e.g., to forgive a fine.  This
    is an enhancement, of course.
[2] Creating a dummy operator to represent
    batch job runs; or alternatively, give
    each batch job an option to log its work
    under a specified user ID.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-19 06:34:10 -05:00
Joshua Ferraro
8e156e4312 fixing a typo s/tab/tag/
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-05 00:02:28 -06:00
Joshua Ferraro
c2e65e06c6 fix for warning in logs: Argument "\x{61}" isn't numeric in numeric eq (==) at /home/jmf/kohaclone/C4/Biblio.pm line 1008.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-05 00:02:11 -06:00
Galen Charlton
216fa8d8c0 updated POD for ModZebra sub
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-03 10:46:11 -06:00
Galen Charlton
77b1420026 indexing - explicitly pass previous record to ModZebra
Because NoZebra indexing requires having both
the old and new versions of a record when processing
an updated, I adjusted the ModZebra sub to require
that the old version be explicitly passed to it.
That way, the zebraqueue row (for Zebra mode) can
now be added *after* the biblio and biblioitems
updates have been completed.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-03 10:46:10 -06:00
Paul POULAIN
cf81242cae NoZebra fixes : removing \r and \n when indexing
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-27 09:02:21 -06:00
Paul POULAIN
0e2b065219 NoZebra : removing . and : before indexing
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-19 20:27:36 -06:00
Paul POULAIN
0ee54a7bc2 BUGFIX (critical) return instead of next
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-18 20:05:47 -06:00
Galen Charlton
c5a360ce87 bug 1834: add entries to zebraqueue only when necessary
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-18 19:32:02 -06:00
Galen Charlton
7bb7135388 added back use of C4::Charset
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-11 16:35:21 -06:00
Galen Charlton
7e39e108f1 moved use of C4::Heading to avoid symbol export problem
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-11 06:02:42 -06:00
Galen Charlton
e5fba3650f authorities: added LinkBibHeadingsToAuthorities
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-11 06:02:41 -06:00
Galen Charlton
b549d7e1f1 added StripNonXmlChars to C4::Charset
Added invocations of StripNonXmlChars to uses
of new_from_xml() that involve records
saved to Koha fields via MARC::Record->as_xml();
for batch jobs that work on MARC XML files
coming from external sources, StripNonXmlChars
should not necessarily be used, as it may
be better to reject a file or record if it
contains that kind of encoding error.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-08 20:22:42 -06:00
Galen Charlton
450f5f9cce keep biblioitems.cn_sort in sync with MARC record
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-08 20:22:40 -06:00
Galen Charlton
b27aaef73b moved use of C4::Heading to avoid symbol export problem
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-08 06:01:42 -06:00
Galen Charlton
62ef942468 authorities: added LinkBibHeadingsToAuthorities
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-08 06:01:42 -06:00
Henri-Damien LAURENT
4cc49c9914 Displaying functions for UNIMARC authors instead of function code
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-25 16:52:16 -06:00
Galen Charlton
a6bd90c48c added caching of results of GetMarcStructure
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-22 07:23:35 -06:00
Mason James
0308eaad84 Escaping the $title in the regexes with \Q and \E to handle nested quantifiers, cheers chris :)
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-10 08:33:13 -06:00
Henri-Damien LAURENT
b5a1060788 Improving encoding Support for z3950 clients.
Adding encoding for z3950 server information.
Uses Text::Iconv for conversion (ISO6937 and ISO_5428 and ISO5427)
For ISO 5426 (ANSEL or MARC-8) new char_decode5426 based on marc4j tool.

Not Tested on LOC or any USMARC z3950 source. But tested OK on BNF and SUDOC.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-08 19:23:30 -06:00
Henri-Damien LAURENT
b60c689434 more logs for MARC::Charset problems
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-08 19:22:44 -06:00
Henri-Damien LAURENT
e7b1232250 Adding feature : multiple returns via moremember page.
Adding Connection for renewScript
Adding javascript functions to moremeber.tmpl
Adding error management for returns.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-08 14:07:03 -06:00
Ryan Higgins
3de59aba27 Serials updates to link item record to serial table.
This commit makes db changes to subscription, serials tables:
  allow subscriptions larger than 127 issues
  link serial to item uniquely.
MARC Framework:
  Adding MARC tag 942$s (990$s unimarc) to map biblio.serial
Udate biblio.serial on new-subscription.
Use biblio.serial to check if Items.pm should return
  pubdate and enumeration text string from serials table with items.
Update opac-detail so serial items are sorted most recent first.
Adding link from items table to serial table.

Allows sorting of serials in details pages, and removes
enum data from itemnotes field.
Also fixes  visibility in serials item editor

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-08 11:11:45 -06:00
Joe Atzberger
5eae563b25 Biblio.pm - BEGIN block VERSION and vars related to export.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-07 20:02:22 -06:00
Galen Charlton
c2a0ed8077 item rework: replaced AddBiblioAndItems
Replace C4::Biblio::AddBiblioAndItems with two
things:

* An option to C4::Biblio::AddBiblio to defer writing
  biblioitems.marc and biblioitems.marcxml.  This
  option was created to give a significant
  speed boost to bulkmarcimport.pl, but is *not*
  recommended for general use.
* C4::Items::AddItemBatchFromMarc

This refactoring removes the need to have functions
in C4::Biblio and C4::Items that call each other's
private functions.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:26:16 -06:00
Galen Charlton
9d4d8897b2 item rework: various changes
* Move CheckItemPreSave to C4::Items (from C4::Biblio)
* Modified C4::Biblio::AddBiblioAndItems to use appropriate
   internal routines from C4::Items
* Moved GetItemnumberFromBarcode to C4::Items
* Removed duplicate C4::Biblio::_koha_new_items
* Removed disused C4::Biblio::MARCitemchange

Currently AddBiblioAndItems is a special routine that
uses private subs from both C4::Biblio and C4::Items.
This needs to be refactored.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:25:42 -06:00
Galen Charlton
95cfd76815 removed duplicate call to C4::Context->marcfromkohafield
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:25:10 -06:00
Galen Charlton
3b43e43e49 item rework: moved DelItem
Moved from C4::Biblio to C4::Items

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:25:07 -06:00
Galen Charlton
8e41022b0d item rework: moved various accessor functions
Moved following functions from C4::Biblio to
C4::Items:

    GetItemStatus
    GetItemLocation
    GetLostItems
    GetItemsForInventory
    GetItemsCount
    GetItemInfosOf
    GetItemsByBiblioitemnumber
    GetItemsInfo
    get_itemnumbers_of

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:25:05 -06:00
Galen Charlton
9e7c94bf96 item rework: moved GetItem
Moved from C4::Biblio to C4::Items.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:24:04 -06:00
Galen Charlton
7ed543b8a7 item rework: moved GetMarcItem
Moved this function from an exported function in
C4::Biblio to a public but unexported function
in C4::Items.  Added comment noting that this
is used only by additem.pl.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:56 -06:00
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
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
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
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
Chris Cormack
3ae2edde0a Getting rid of noisy warn
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-27 17:21:56 -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
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
31f45434e3 fixing additional authors links on detail pages in opac and staff catalogs
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-18 19:34:45 -06:00
Mason James
e7c05a9c3c mod to GetAuthorisedValueDesc() to simply take $category and $value args, and get a desc. back.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-14 23:06:17 -06:00
Joe Atzberger
377db43117 C4 and misc: permissions fixes
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-13 19:00:34 -06:00
Galen Charlton
d46581b8f0 bugfix: do not try to set items.cn_sort twice
The way this API is used by additem.pl, the $item hasref
already contains a 'items.cn_sort' key whose value is
undef.  Setting $item->{'cn_sort'} instead of $item->{'items.cn_sort'}
ends putting with items.cn_sort and cn_sort in the UPDATE
items statement, making the final value of cn_sort in the DB
dependent on the order produced by Perl's keys function.

Also added a comment explaining a subtle (perhaps too subtle)
point in the code.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-13 17:30:25 -06:00
Ryan Higgins
0734f8fca0 Clean up moredetail.pl and updateitem.pl
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-12 08:03:10 -06:00
Mason James
33349093cb fix for ModZebra() trying to delete an existing bib - that doesnt exist, during an add.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-06 11:34:32 -06:00
Galen Charlton
6bb4eb130d bug 1615: AddItem() now sets issues, renewals, and reserves
When an item was created,  the renewals, issues, and reserves columns
were not set from the MARC data.  This was noticed particularly
in the context of batch loads, where a user might supply
data for those fields.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-02 15:06:23 -06:00
Galen Charlton
1854ad60a3 bug 1614: revise GetMarcItem so that info dervies from items table
This should help make the items table more authoritative, and ensures
that the items editor does not blank circulation fields such as
issues.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-27 17:05:56 -06:00
Galen Charlton
fe9106af0b bugfix: handle subfield $0 in MARC for an item
Note: C4::Biblio::GetMarcFromKohaField returns (0, 0) if
the kohafield is not defined in the MARC framework, but
in may places the return value is not checked correctly
and does not recognize a subfield $0 (zero).  It
would be better if GetMarcFromKohaField returned (undef, undef)
in that circumstance, but because of the number of places
where that function is used, the changed is deferred for
post 3.0.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-27 15:52:41 -06:00
Galen Charlton
eb52fe26c3 bug 1616: update bib MARC and zebraqueue on item update
Fixed so that when using updateitem.pl to change an
item's lost, damaged, or withdrawn status, the
bib's MARC XML is updated and an entry is added
to zebraqueue.

As part of the fix, C4::Biblio::ModItemInMarconefield
now works correctly.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-27 15:51:47 -06:00
Paul POULAIN
327ae4ff84 include 700 (author) in authority author list
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-25 17:06:42 -06:00
Mason James
0d610f5427 GetNoZebraIndexes() regex now handles naughty whitespace (read: tabs)
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-20 16:29:33 -06:00
Paul POULAIN
3253372339 changing the way subjects are build in detail.pl
If you have a $9 as authority, then you can directly search on an=<koha-auth-number>

For example, if you have :
600$912045$aEurope$xFrance$xMarseille (Europe--France--Marseille as subject of the biblio)

The link must be "an=12045"

The link is not changed in case there is no $9 (still apply on each term, one by one)

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-17 11:37:25 -06:00
Chris Cormack
24ba695b2b Fix so with independent branches a staff member cant see who has items out if the borrower is from another library/branch
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-13 17:33:10 -06:00
Ryan Higgins
9c2d58a470 update item-at-wrong-branch error message to show homebranch.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-13 12:46:45 -06:00
Galen Charlton
5c882558a4 bugfixes for reindexing problems
* now properly deletes deleted authorities from index
* now actually ignores duplicate work
* standardized on recordDelete instead of delete_record
  for bibs and recordDelete for authorities

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-12 18:32:33 -06:00
Ryan Higgins
805d8c8f4d changes to item-level itype reintroduce items.itype (had been removed by updatedatabase but still in kohastructure) populate itype with bi.itemtype. fix error in getbiblio
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-11 18:40:04 -06:00
Galen Charlton
0863abf07b Revert "leader must be 25 and not 24 char long"
This reverts commit 991ae79bb6.

Note: the MARC21 (and UNIMARC) leader length is *24* characters,
not 25.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-08 17:14:48 -06:00
Ryan Higgins
bb8aa23730 fix typos on syspref
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-08 17:14:32 -06:00
Ryan Higgins
5a65c60683 further item-level itype changes
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-08 17:12:55 -06:00
Ryan Higgins
e44b409b16 notforloan from items.ccode->itemtypes.notforloan instead of bi.itemtype
(by syspref)

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-08 17:12:01 -06:00
Joshua Ferraro
8e01ae8e18 fixing subject link on detail pages and searching API
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-07 08:24:06 -06:00
Paul POULAIN
991ae79bb6 leader must be 25 and not 24 char long
The test was wrong, thus any leader defined by the library was discarded
(chris/kados : check for MARC21 that size should be 25 as in UNIMARC)

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-07 08:16:40 -06:00
Galen Charlton
5fabddfe38 made several PKs be auto_increment columns
* biblio.biblionumber
* biblioitems.biblioitemnumber
* items.itemnumber

These IDs are no longer increment by the Perl code, thus
allowing better concurrency during bib/item editing.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-01 17:31:33 -05:00
Galen Charlton
e90115293a bugfix: deletedbiblioitems row now added upon delete of a biblio
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-31 19:44:00 -05:00
Paul POULAIN
973adba104 dealing with empty XML : return an empty string, and not an empty MARC::Record
(Useful for zebraque_start)

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-31 19:39:21 -05:00
Galen Charlton
5f972e33ab quelled perl -w variable masking warnings
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-31 05:56:31 -05:00
Galen Charlton
b5e18fe431 Biblio.pm - restored after duplicate application of
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-31 05:54:38 -05:00
Chris Cormack
0483e34162 Fix for broken Biblio.pm
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-29 17:11:42 -05:00
Chris Cormack
031dc49098 Tidying up TransformMarctoKoha
Still some work to do, but people can see the idea and decide if its good

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-29 16:12:21 -05:00
Galen Charlton
960db4e458 Biblio.pm bugfixes
- uses new C4::Dates instead of C4::Date
- start work on TransformMarcToKoha
  * handle ambiguities in certain column names
  * part of patch inspired by Chris Cormack
- fix bugs preventing biblioitems and items
  from being properly updated
- ensure that biblionumber and biblioitemnumber
  always get mapped to MARC

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-24 17:00:00 -05:00
Galen Charlton
af9dfd9cda bib and item editing bugfixes
- bugfix: update items.cn_sort upon edit of item
- bugfix: make failure of a value_builder plugin non-fatal
- bugfix: remove references to non-existent plugins
          from optional MARC21 frameworks
             bookseller.pl
             marc21_callnumber.pl
             marc21_classcodes.pl
             marc21_locationqualifier.pl
- bugfix: corrected trying to enter 'u*' fields twice in the 'CF'
          format in the optional MARC21 frameworks; resulted in
          most of the framework not being loaded

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-22 19:56:53 -05:00
Paul POULAIN
10eb85455b bugfix (security flaw) : the additem template was open AFTER doing actions
when Logguing was ON, this resulted in an internal server error, thus the discovery of this bug.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-22 07:24:49 -05:00
Paul POULAIN
b25ace0be4 bugfix : handling biblionumber in a field < 010
the bug occur only if we have a malformed biblio, so it should "never" happend, but i've seen it once ;-)

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-22 07:20:22 -05:00
Galen Charlton
fc8b44a967 call number work part 3 -- now using new routines to generate call number sort keys
C4/Biblio.pm - removed following functions:

_biblioitem_cn_sort
_items_cn_sort

TODO: add a new call number filing routine to emulate logic of
_biblioitem_cn_sort for compatibility purposes

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-21 22:11:40 -05:00
Galen Charlton
af466ca41a start of reworking call number handling and other Biblio changes
Most of this commit by Joshua Ferraro.
updatedatabase changes by Galen Charlton.

Major changes:

This commit includes a lot of fairly major changes
to Koha's Biblio handling, largest is the addition
and deletion of several columns in the biblioitems,
items tables, as well as cleanup of deletedbiblioitems,
deleteditems tables. Some of the changes are simple
cleanup, but most have to do with improvements to
storage of call numbers in Koha.

Also, I had to clean up the _koha_* routines quite a
lot to make them work -- there was lots of data just
being lost because columns weren't being updated.

I'm still not completely convinced that the items
table is being treated as authoritative for items
data, investigating further.

DB Changes (updated in kohastructure.sql and in
updatedatabases):

ADDED:
biblioitems.cn_source   ( auth value, CN_SOURCE, stores the source of the
                          call number: DDC, LCC, NLM, etc.)
biblioitems.cn_class    ( plugin, marc21_callnumber.pl, helps fill in
                          the rest of the biblio-level fields)
biblioitems.cn_item
biblioitems.cn_suffix
biblioitems.cn_sort     ( for zebra sorting, stored as a decimal number)
biblioitems.totalissues ( for counting the total times issued )

items.cn_source         ( auth value, CN_SOURCE, stores DDC, LCC, NLM, etc.)
items.itemcallnumber    ( plugin, marc21_itemcallnumber.pl, helps fill in
                          the itemcallnumber based on the record data )
items.cn_sort           ( for zebra sorting, stored as a decimal number)
items.ccode             ( auth value, CCODE, stores the Collection Code
                          of the item, can be used as call number prefix
                          by some libraries )
items.uri
items.materials
items.damaged

DELETED:
items.itype
items.cutterextra
biblioitems.classification
biblioitems.subclass
biblioitems.dewey
biblioitems.lcsort
biblioitems.lccn
biblioitems.ccode

DB version now 3.00.00.009.

Minor changes:

* Drop revision history from C4/Biblio.pm
* GetMarcAuthors now returns additional authors (7XX), not
  main authors (1XX)
* Debug warnings in C4/Search.pm commented out

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-18 20:19:56 -05:00
Paul POULAIN
b426ecb4f2 BUGfixes in availability management
- the availability status was not available on result list. This patch reintroduces that
- notforloan as itemtype was not properly managed : an itemtype that was notforloan resulted in nothing in detail. Not, the user can't place a reserve anymore, and the status is correctly displayed

the fix is for OPAC as well as staff

(owen, pls, validate cat-toolbar.inc & catalogue/detail.tmpl)

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-14 19:10:53 -05:00
Ryan Higgins
1c2adfe7ff adding GetMarcUrls() fcn to display 856's - adding also output to opac-detail.
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-12 07:24:53 -05:00
Chris Cormack
e8528be8cb Delbiblio no longer deletes items.
It will only delete biblios that have no items attached.
You must delete the items first then delete the biblio

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-12 07:23:45 -05:00
Chris Cormack
eb8878b854 Working on a fix for 1176
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-12 07:22:59 -05:00
Paul POULAIN
e378fb11e6 Bumping to 3.00.00.008 : adding biblio.datecreated
The top issue was based on a timestamp field, that was updated everytime a biblio is modified

This commit add a datecreated field, that is filled only when a biblio is ADDED
it is used by opac-topissues & can be useful at other places i'm sure

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-09 19:09:42 -05:00
Joshua Ferraro
e494fadf0a partial 1481: adding to templates, fixing non-display of data
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-06 16:34:56 -05:00
Joshua Ferraro
3dcc72ad91 removing multivolume,multivolumepart,binding
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-10-06 01:38:27 -05:00
Henri-Damien LAURENT
04a108482d BUG FIXING : Using LEFT JOIN in replacement of implicit inner joins. WARN NOT FULLY TESTED
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-10-03 14:58:35 -05:00
Chris Cormack
b989b83264 Fix for bug 1437, items not showing on moredetail.pl
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-30 17:58:02 -05:00
Ryan Higgins
cdb0b859fe fix column spelling errors and inconsistency btwn kohastructure and Biblio.pm (editionreponsability).
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-30 16:03:49 -05:00
Joshua Ferraro
6a3f4bf219 missing ) caused install to fail! We need to test changes before
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-29 16:00:51 -05:00
Henri-Damien LAURENT
b0e77eb844 Bug Fixing: verifying that biblionumber is not already stored in marcrecord before storing it
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-28 16:42:33 -05:00
Paul POULAIN
0d7a4aafd0 BUGFIX : NoZebra indexing was wrong for accented words
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-26 05:28:37 -05:00
Paul POULAIN
b67d77e211 BUGFIX : repeated fields where merged on biblio update
When updating a biblio, all repeated fields had the same input name.
Thus, when retrieving them through cgi->param resulted in a single line
Thus all subfields where merged in a single MARC field.
Adding a random() part to the name solves the problem

+ removing some warn lines

Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-12 20:54:31 -05:00
Paul POULAIN
14301333cc BUGFIX : adding management of the 5 new biblioitems columns for biblio adding
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-12 20:54:18 -05:00
Paul POULAIN
7ed10cb920 BUGFIX & improvement : new biblioitems fields saving and GetMarcAuthors improvement
hdl defined 5 new fields in biblioitems, to handle collections.
The _koha_modify_biblioitem didn't deal with those fields. it's fixed now.

GetMarcAuthor in UNIMARC have a $4 field that is related to the responsability the author has
it is connected to an authorised value.
The improvement expand the numeric value to the expanded one.

Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-12 20:54:13 -05:00
Paul POULAIN
a201aac3c8 BUGFIX (major) : when editing an existing biblio, biblionumber was lost
In Koha 2.2 the biblionumber was an hidden field in the form,
exactly as any other subfield.
As we also stored biblionumber as specific field, it was useless to have it
twice.

with this commit, we restore the biblionumber in the MARC:Record in TransformHtml2Marc

Signed-off-by: Chris Cormack <crc@liblime.com>
2007-09-04 16:35:22 -05:00
Henri-Damien LAURENT
56e38fa2f9 Modifying AddBiblio in order to fix some encoding bugs we had when modifying or adding a biblio.
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-08-20 15:16:40 -05:00
Paul POULAIN
92f2909d57 reintroducing an important line in TransformeMarcToKoha
Signed-off-by: Chris Cormack <crc@liblime.com>
2007-08-14 21:32:52 -05:00
Paul POULAIN
7612dacc6f show username instead of cardnumber
Signed-off-by: Chris Cormack <crc@liblime.com>

Note from Chris, this should probably be a system preference, some libraries want the cardnumber there.
2007-08-14 21:30:38 -05:00
Paul POULAIN
9a32fe85c2 This commit fixes a bug in biblio encoding. things were mixed up when reporting item(s) into the biblio, to UPDATE biblioitems.marcxml, after a biblio modif (in MARC editor).
So, deal carefully with this commit pls, and check it for your setups, because the patch works for me, but I'm not sure to understand well why :\

Signed-off-by: Chris Cormack <crc@liblime.com>
2007-08-14 21:28:28 -05:00
toins
7f3265ccae Some new functions.
TransformHTMLtoMarc rewrited.
2007-07-31 16:01:11 +00:00
hdl
92adf782de Bug Fixing GetMarcSubjects.
Links parameters were mixed.
2007-07-20 15:43:16 +00:00
hdl
046f54eab5 Adding biblio.biblionumber to GetItemsfor Inventory 2007-07-20 14:02:57 +00:00
hdl
fbec734d57 Adding selection by location for inventory 2007-07-19 07:40:08 +00:00
tipaul
96386e6568 fixing some display bugs (itemtype not properly returned and a html table bug that makes items appear strangely 2007-07-03 13:47:44 +00:00
tipaul
83545f8449 return itemtype description properly 2007-07-03 09:40:58 +00:00
tipaul
a9403a8bba if you just replace su by a space in subjects, you'll replace jesus by je s, which is strange for users. this fix solves the problem and introduces authoritysep systempref as separator of subfields, for a better identification of where the authority starts and end 2007-07-03 09:33:05 +00:00
tipaul
43e23a2ca9 unimarc bugfix : the encoding is in field 100 in UNIMARC. when TransformHTMLtoXML on an item, you must not automatically add a 100 field in items, otherwise there will be 2 100 fields in the biblio, which is wrong 2007-07-02 09:13:22 +00:00
tipaul
014350b476 bugfixes on unimarc 100 handling (the field used for encoding) 2007-06-25 15:01:45 +00:00
tipaul
23427c51b9 some fixes (and only fixes) 2007-06-15 13:44:44 +00:00
toins
95f4785d58 do not get $3 $4 and $5 on GetMarcSubjects GetMarcAuthors on unimarc flavour. 2007-06-15 09:40:06 +00:00
toins
38f7d2148a removing warn compilation. 2007-06-13 13:03:34 +00:00
tipaul
67d1dcf1f7 various bugfixes (minor) and french translation updated 2007-05-23 16:19:40 +00:00
tipaul
5ff7fcffa4 Bugfixes & improvements (various and minor) :
- updating templates to have tmpl_process3.pl running without any errors
- adding a drupal-like css for prog templates (with 3 small images)
- fixing some bugs in circulation & other scripts
- updating french translation
- fixing some typos in templates
2007-05-22 09:13:54 +00:00
hdl
286930bdc7 Changing GetMarcStructure signature.
Deleting first parameter $dbh
2007-05-22 08:50:47 +00:00
btoumi
1e21ba6968 add security when u delete biblio :
u must delete linked items before delete biblio
2007-05-21 08:44:17 +00:00
btoumi
100385ab29 bug fix:
problem in  displayed label link  with subject in detail.tmpl
ex: label random => rdom
2007-05-11 16:04:03 +00:00
tipaul
ca201e36af Koha NoZebra :
- support for authorities
- some bugfixes in ordering and "CCL" parsing
- support for authorities <=> biblios walking

Seems I can do what I want now, so I consider its done, except for bugfixes that will be needed i m sure !
2007-05-10 14:45:15 +00:00
tipaul
03e2d1f969 BUGFIX for : NoZebra
- NoZebra features : seems they work fine now (adding, modifying, deleting)
- Biblio edition major bugfix : before this commit editing a biblio resulted in an item removal in marcxml field
2007-05-03 15:16:02 +00:00
tipaul
3e85c9e97f NoZebra SQL index management :
* adding 3 subs in Biblio.pm
- GetNoZebraIndexes, that get the index structure in a new systempreference (added with this commit)
- _DelBiblioNoZebra, that retrieve all index entries for a biblio and remove in a variable the biblio reference
- _AddBiblioNoZebra, that add index entries for a biblio.
Note that the 2 _Add and _Del subs work only in a hash variable, to speed up things in case of a modif (ie : delete+add). The effective SQL update is done in the ModZebra sub (that existed before, and dealed with zebra index).
I think the code has to be more deeply tested, but it works at least partially.
2007-05-02 16:44:31 +00:00
hdl
097fef712a Removing $dbh from GetMarcFromKohaField (dbh is not used in this function.) 2007-04-27 14:00:48 +00:00
tipaul
b53be9cdaf Koha 3.0 nozebra 1st commit : the script misc/migration_tools/rebuild_nozebra.pl build the nozebra table, and, if you set NoZebra to Yes, queries will be done through zebra. TODO :
- add nozebra table management on biblio editing
- the index table content is hardcoded. I still have to add some specific systempref to let the library update it
- manage pagination (next/previous)
- manage facets
WHAT works :
- NZgetRecords : has exactly the same API & returns as zebra getQuery, except that some parameters are unused
- search & sort works quite good
- CQL parser is better that what I thought I could do : title="harry and sally" and publicationyear>2000 not itemtype=LIVR should work fine
2007-04-25 16:26:42 +00:00
tipaul
4dea4d29b3 moving dotransfer to Biblio.pm::ModItemTransfer + some CheckReserves fixes 2007-04-24 09:07:53 +00:00
tipaul
9f42b8ad49 renaming currenttransfers to transferstoreceive 2007-04-23 15:21:17 +00:00
tipaul
7bd99ef365 removing all useless %env / $env 2007-04-18 17:00:14 +00:00
tipaul
b71839d85c circulation cleaning continued: bufixing 2007-04-17 08:44:49 +00:00
tipaul
c596d55374 HUGE COMMIT : code cleaning circulation.
some stuff to do, i'll write a mail on koha-devel NOW !
2007-04-04 16:46:22 +00:00
tipaul
23f86854e0 why the hell do we need to explicitly utf8 decode this string ? I really don't know, but it seems it's mandatory, otherwise, tag descriptions are not properly encoded... 2007-03-30 12:00:42 +00:00
tipaul
eba2552086 Code cleaning of Biblio.pm (continued)
All subs have be cleaned :
- removed useless
- merged some
- reordering Biblio.pm completly
- using only naming conventions

Seems to have broken nothing, but it still has to be heavily tested.
Note that Biblio.pm is now much more efficient than previously & probably more reliable as well.
2007-03-29 16:45:53 +00:00
tipaul
a481fad4b7 Code cleaning :
== Biblio.pm cleaning (useless) ==
* some sub declaration dropped
* removed modbiblio sub
* removed moditem sub
* removed newitems. It was used only in finishrecieve. Replaced by a Koha2Marc+AddItem, that is better.
* removed MARCkoha2marcItem
* removed MARCdelsubfield declaration
* removed MARCkoha2marcBiblio

== Biblio.pm cleaning (naming conventions) ==
* MARCgettagslib renamed to GetMarcStructure
* MARCgetitems renamed to GetMarcItem
* MARCfind_frameworkcode renamed to GetFrameworkCode
* MARCmarc2koha renamed to TransformMarcToKoha
* MARChtml2marc renamed to TransformHtmlToMarc
* MARChtml2xml renamed to TranformeHtmlToXml
* zebraop renamed to ModZebra

== MARC=OFF ==
* removing MARC=OFF related scripts (in cataloguing directory)
* removed checkitems (function related to MARC=off feature, that is completly broken in head. If someone want to reintroduce it, hard work coming...)
* removed getitemsbybiblioitem (used only by MARC=OFF scripts, that is removed as well)
2007-03-29 13:30:31 +00:00
tipaul
56c4a32119 adding default value new feature into cataloguing. The system (definition) part has already been added by toins 2007-03-29 09:42:13 +00:00
hdl
6ddde71599 Deleting ignore_errors(1) pour MARC::Charset 2007-03-29 08:45:19 +00:00
hdl
1ab5cdfd44 removing $dbh as a parameter in AuthoritiesMarc functions
And reporting all differences into the scripts taht relies on those functions.
2007-03-28 10:39:16 +00:00
tipaul
2ffd5b7228 rel_3_0 moved to HEAD 2007-03-09 14:28:54 +00:00
tgarip1957
41e4a9c4ad Savannah seems out of sync. reloading.Mainly code cleaning and removing of Date::Manip 2006-11-15 01:36:00 +00:00
tgarip1957
ab45e7aaab Bug fixing and complete removal of Date::Manip 2006-11-06 21:01:43 +00:00
tgarip1957
c5627d23ec A new Date.pm to use for all date calculations. Mysql date calculations removed from Circ2.pm, all modules free of DateManip, a new get_today function to call in allscripts, and some bug cleaning in authorities.pm 2006-10-20 01:20:56 +00:00
tgarip1957
9b266b13ee Finalizing main components. All koha modules are now working with the new XML API 2006-09-27 19:53:52 +00:00
tgarip1957
9be398961d Some bug fixing, new acquisitions handling 2006-09-20 21:48:44 +00:00
tgarip1957
57d5b19dca Fixes bug with MARChtml2xml in Biblio.pm
synching with dev_week
2006-09-11 17:09:59 +00:00
tgarip1957
7e52a5665c Clean up before final commits 2006-09-06 16:21:03 +00:00
tgarip1957
99d79a6f7f No more MARC Records - everything is MARC XML
we read - write only XML
2006-09-01 15:33:46 +00:00
tgarip1957
0451359813 New set of routines for HEAD.
Uses a complete new ZEBRA Indexing.
ZEBRA is now XML and comprises of a KOHA meta record. Explanatory notes will be on koha-devel
Fixes UTF8 problems
Fixes bug with authorities
SQL database major changes.
Separate biblioograaphic and holdings records. Biblioitems table depreceated
etc. etc.
Wait for explanatory document on koha-devel
2006-08-25 21:07:08 +00:00
toins
b364247586 Add a forgetted function : getbibliofromitemnumber 2006-08-21 09:51:15 +00:00
toins
2ca5f288f4 re-input an old function. 2006-08-11 16:04:07 +00:00
toins
32e0d66afa sync with dev_week. 2006-08-10 12:41:04 +00:00
toins
3fafdf7492 1 Sub renamed. 2006-07-27 13:46:30 +00:00
btoumi
d81cd891ce bug fixing:
Biblio.pm: add in export line  getbibliofromitemnumber function
fines2.pl:call to biblio.pm for use of getbibliofromitemnumber function
2006-07-12 13:43:42 +00:00
toins
cc9524a875 Head & rel_2_2 merged 2006-07-04 14:36:51 +00:00
bob_lyon
0f568852a8 Merging katipo changes...
altering subject search to stop returning blank rows
2006-06-06 23:13:14 +00:00
plg
68924c5e6b New feature from SAN Ouest Provence: ability to reserve a specific item in
the intranet. The development was made on branch 2.2 by Arnaud Laurin from
Ouest Provence and integrated on HEAD by Pierrick Le Gall from INEO media
system.

New page reserve/request.pl taking a biblionumber as entry point.

New functions:

- C4::Biblio::get_iteminfos_of retrieves item informations for a list of
  itemnumbers

- C4::Biblio::get_biblioiteminfos_of retrieves biblioitem informations for a
  list of biblioitemnumbers

- C4::Biblio::get_itemnumbers_of retrieve the list of itemnumbers related to
  each biblionumber given in argument.

- C4::Circulation::Circ2::get_return_date_of retrieves return date for a
  list of itemnumbers.

- C4::Koha::get_itemtypeinfos_of retrieves the informations related to a
  list of itemtypes.

- C4::Koha::get_branchinfos_of retrieves the informations related to a list
  of branchcodes.

- C4::Koha::get_notforloan_label_of retrives the list of status/label for
  the authorised_values related to notforloan.

- C4::Koha::get_infos_of is the generic function used by all get_*infos_of.

- C4::Reserves2::GetNumberReservesFromBorrower

- C4::Reserves2::GetFirstReserveDateFromItem

Modified functions:

- C4::Reserves2::FindReserves was simplified to be more readable.

The reservation page is reserve/request.pl and is linked from nowhere as
long as zebra is not stable yet on HEAD.
2006-05-17 16:06:23 +00:00
tgarip1957
347f00fede Change the MARC Leader to UTF-8 incase user did not set it. Important for Zebra.
The new M::F::XML is sensitive to leader settings
2006-04-15 02:47:47 +00:00
tgarip1957
64e4a87e49 New sub to use by Circ2.pm . Allows one subfield of MARC holdings fields to be updated to use with branch transfer(holdingbranch) and onloan flag when set 2006-04-10 20:39:49 +00:00
rangi
4f210d4556 Modify item now works
BUT only if there is only one item, if there is more than one item, it gets messed up.
They get combined into the form, ill work on this next
2006-04-03 04:00:02 +00:00
kados
04126d61f6 some modifs to improve plugin support 2006-04-03 02:12:49 +00:00
rangi
10b2315eb3 Fixing the problem that all items were getting biblioitem=1 set 2006-04-01 22:10:50 +00:00
rangi
c450bfcdf5 Adding a little fake subroutine that a few scripts in the opac depend on, can be removed once the opac scripts are rewritten 2006-04-01 21:22:05 +00:00
rangi
1e70782e79 Delete isnt working using the extended services method 2006-03-29 01:56:25 +00:00
rangi
eeb654d21d Delete working now 2006-03-28 23:05:08 +00:00
rangi
71ed3a21f1 Adding commits, so that changes stick 2006-03-13 23:12:44 +00:00
kados
5a2aa51d38 syncing MARChtml2xml wtih rel_2_2, removing unused MARChtml2marc 2006-03-10 02:40:38 +00:00
kados
c720216a89 adding support for 'delete' function 2006-03-07 22:00:18 +00:00
rangi
7748a1cc02 Starting work on deletes 2006-03-07 21:54:47 +00:00
kados
531fb1fdcd Adding fixes to MARC editor to HEAD 2006-03-06 02:45:41 +00:00
kados
ee4e844ec0 rollback ... by accident I committed a rel_2_2 Biblio.pm 2006-03-01 03:07:54 +00:00
kados
1ceb74126e MARChtml2xml for improved MARC editor 2006-03-01 02:13:00 +00:00
kados
ea3034363c Removing 'our Zconn' from top... 2006-02-27 01:08:31 +00:00
kados
b9abeb3516 moving all $Zconn s to z3950_extended_services (currently, nothing
works).
2006-02-26 00:08:20 +00:00