Galen Charlton [Thu, 7 Feb 2008 06:11:37 +0000 (00:11 -0600)]
authorities - new module - C4::Heading
Objects of type C4::Heading represent
headings and are (currently) initialized
from bib MARC::Field objects. A C4::Heading
has the ability via SimpleSearch to locate
the authority records that are either authorizing
the heading itself or contained more preferred
terms for the heading via See links.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Galen Charlton [Thu, 7 Feb 2008 06:11:33 +0000 (00:11 -0600)]
authorities indexing - MAJOR changes
For DOM indexing, added index_matching_heading option
to create indexes for matching an entire authority
heading -- the index works by indexing a heading
such
150 $aCars$xElectric$zEngland$vScience fiction
as something like
"cars generalsubdiv electric geographicsubdiv england
formsubdiv science fiction"
Also started adjust names of some indexes to conform
to languaged used in the MARC21 and UNIMARC standards, e.g.,
Modified viewlog.pl to discern where it was called from and display the appropriate menu.
If viewlog.pl is called from the circulation menu, then the circulation menu is displayed.
If viewlog.pl is called otherwise, the tools menu is displayed.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Added GetPatronImage function to Members.pm
Added code to circulation.pl, boraccount.pl, readingrec.pl, and moremember.pl to grab patron image and pass it off to the template
Corrected code in circ-menu.inc to properly display patron image.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Bug Fixing : Could not add new undefined tag if searchfield>0
For instance, search for tag 290
cannot find.
Click on addTag
Save
Then wouldnot add tag 290 because used UPDATE.
Now, if tag is not found then Add tag is done.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Galen Charlton [Fri, 1 Feb 2008 00:27:05 +0000 (18:27 -0600)]
temp bugfix -- restore file upload functionality
CGI->new() should not be used in any C4 module -
it has a side-effect that breaks the AJAX
file upload script. Specifically, any file upload
field is slurped when a new CGI object is created, and
is not available to a second object created by CGI->new().
Consequently, C4::Debug should not be instantiating
a CGI object in its BEGIN block. It can use other CGI::* modules
to parse QUERY_STRING to get the value of the debug
parameter (note that this means that the debug param
can be reliably set only in a GET, not as part of a
form submission).
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Galen Charlton [Fri, 1 Feb 2008 00:27:04 +0000 (18:27 -0600)]
IMPORTANT - refactor MARC character set handling
* IsStringUTF8ish - determine if scalar contains a string in UTF8
* MarcToUTF8Record - convert MARC blob or MARC::Record to UTF8
* SetMarcUnicodeFlag - set appropriate MARC21 or UNIMARC field to
indicate that record is in UTF-8.
Design points of this module include:
* No dependencies on other C4 modules, making it easier to add
more test cases
* All character conversion code in one place
* Single entry point for doing a character conversion on a
MARC record
* Capture of errors and warnings produced by Text::Iconv
and MARC::Charset
* Start of support for guessing the source character set of
a MARC record.
Several functions were moved from other scripts
or modules to C4::Charset:
* C4::Koha->FixEncoding (expanded and renamed
MarcToUTF8Record)
* C4::Koha->char_decode5426
* fMARC8ToUTF8 from bulkmarcimport.pl (renamed
_marc_marc8_to_utf8)
Several batch jobs were adjusted to use MarcToUTF8Record instead of
FixEncoding.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Owen Leonard [Thu, 31 Jan 2008 19:43:22 +0000 (13:43 -0600)]
Removing some unused include files; Correcting nomenclature for cart; hiding quick search form on advanced search page; Styling user menu links as sidebar tabs.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Galen Charlton [Thu, 31 Jan 2008 19:43:17 +0000 (13:43 -0600)]
staged MARC import: handle non-ASCII characters in items
The problem occured during the population of
import_items.marcxml -- the MARC::Record object
created to store the item did not have the Leader/09
set to 'a', which means that MARC::File::XML
tried to transcode code the item from MARC-8 to UTF-8, which
breaks since the MARC data is already in UTF-8 at that point.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Galen Charlton [Thu, 31 Jan 2008 19:43:15 +0000 (13:43 -0600)]
authorities: start of work on reindexing
Currently, MARC authorities are indexed (assuming Zebra
is used) with Zebra's GRS-1 module. However, it does
not appear to be possible to index phrases that cross
subfield boundaries using the GRS-1 module's records.abs
config file's melm, elm, and xelm directives.
Since it is necessary to be able to efficiently search
an entire authority heading (e.g., to see if a given
bib heading is authorized), I'm proposing a switch
to Zebra's DOM XML filter module, which uses XSLT
to generate the words and phrases to be indexed from the
original MARC XML (or ISO2709) record.
The file authority-zebra-indexdefs.xml is an XSLT stylesheet
to implement the new indexing regime. It is based on the
MARC21 authority record.abs with the following changes:
* addition of 148/448/548
* changed name of "see" indexes to "see-from"
* changed name of "see-also" indexes to "see-also-from"
* added index on the subject thesaurus based on
the 008/11 and 040$f
* added indexes on the full heading
authority-zebra-indexdefs.xml was generated from
authority-koha-indexdefs.xml via the XSL transform
koha-indexdefs-to-zebra.xsl. authority-koha-indexdefs.xml
is the actual master version of the indexing definitions,
and was created to provide a much more compact syntax
over the raw XSLT that is to be passed to Zebra.
An experimental schema for Koha indexing definitions is
under way; my aim is to propose a simple format that can
be readily worked with, and perhaps even generated as
a serialization of indexing definitions that are set up
via administration settings in the Koha database itself.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Owen Leonard [Wed, 30 Jan 2008 07:20:55 +0000 (01:20 -0600)]
Working version of cart and lists buttons, with some style changes to cart and lists popups. Bug: cart contents indicator conflicts with button-style js. Also adding new default button style.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Owen Leonard [Tue, 29 Jan 2008 06:13:38 +0000 (00:13 -0600)]
Changing the way items are added to the cart and and lists from the searchresults page: Users now check items and choose from an 'add to...' dropdown which is populated with the logged-in user's lists. The add-to-shelf popup has been modified to accept a shelfnumber so that a users can add straight to the selected list.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Owen Leonard [Sun, 27 Jan 2008 19:17:32 +0000 (13:17 -0600)]
Fixing "check all" function in search results; Using javascript to generate book bag and list buttons, since those functions depend on javascript being enabled.Also adding help.css, missing from yesterday's help file commits.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Owen Leonard [Fri, 25 Jan 2008 21:04:28 +0000 (15:04 -0600)]
Button styling in masthead.inc is still conflicting with the js load() functions and the menu popup, so buttons are unstyled at the moment. Still need to integrate cart (basket/bookbag) functions.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Owen Leonard [Fri, 25 Jan 2008 21:04:25 +0000 (15:04 -0600)]
Styling facets; correcting markup error in search results; removing language picker from opac-main (is now in the footer); continuing unfinished work on cart/lists buttons
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Owen Leonard [Fri, 25 Jan 2008 21:04:19 +0000 (15:04 -0600)]
Beginning some design changes to the OPAC: put login info at the top, move cart and list buttons alongside main search form. Putting alternate search methods below the search form. These changes will eliminate the left-hand column from most OPAC screens.
Signed-off-by: Chris Cormack <crc@liblime.com> Signed-off-by: Joshua Ferraro <jmf@liblime.com>
Galen Charlton [Mon, 21 Jan 2008 20:14:42 +0000 (14:14 -0600)]
more items work; handle unlinked subfields (DB rev => 048)
As a consequence, the items table now remains authoritative
for all item information: any subfields not explicitly mapped
in the framework are still stored.
In addition, the additional unlinked subfields are now retained
during a call to ModItem.
Two additional points of note:
* an upgrade script from 2.2 and earlier 3.0 instllations is needed
to populate items.marc_subfields_xml; I am working on this.
* A behavour of bulkmarcimport.pl has now changed; any item subfields
not explicitly mapped to a Koha items field were dropped; they are
now retained and are stored in items.more_subfields_xml. This can
affect data migrations.