Now, the acqui.simple system...
marcimport.pl has been almost completly rewritten, so LOT OF BUGS TO COME !!! You've been warned. It seems to work, but...
As with my former messages, nothing seems to have been changed... but ...
* marcimport now uses HTML::Template.
* marcimport now uses MARC::Record. that means that when you import a record, the old-DB is populated with the data as in version 1.2, but the MARC-DB part is filled with full MARC::Record.
<IMPORTANT NOTE>
to get correct response times, you MUST add an index on isbn, issn and lccn rows in biblioitem table. Note this should be done in 1.2 too...
</IMPORTANT NOTE>
<IMPORTANT NOTE2>
acqui.simple manage biblio, biblioitems and items tables quite properly. Normal acquisition system manages biblio, biblioitems BUT NOT items. That will be done in the near future...
</IMPORTANT NOTE2>
what's next now ?
* bug tracking, of course... Surely a dozen of dozens...
* LOT of developpments, i'll surely write a mail to koha-devel tomorrow (as it's time for dinner in France, and i plan to play NeverwinterNights after dinner ;-) ...
Now, the API...
Database.pm and Output.pm are almost not modified (var test...)
Biblio.pm is almost completly rewritten.
WHAT DOES IT ??? ==> END of Hitchcock suspens
1st, it does... nothing...
Every old API should be there. So if MARC-stuff is not done, the behaviour is EXACTLY the same (if there is no added bug, of course). So, if you use normal acquisition, you won't find anything new neither on screen or old-DB tables ...
All old-API functions have been cloned. for example, the "newbiblio" sub, now has become :
* a "newbiblio" sub, with the same parameters. It just call a sub named OLDnewbiblio
* a "OLDnewbiblio" sub, which is a copy/paste of the previous newbiblio sub. Then, when you want to add the MARC-DB stuff, you can modify the newbiblio sub without modifying the OLDnewbiblio one. If we correct a bug in 1.2 in newbiblio, we can do the same in main branch by correcting OLDnewbiblio.
* The MARC stuff is usually done through a sub named MARCxxx where xxx is the same as OLDxxx. For example, newbiblio calls MARCnewbiblio. the MARCxxx subs use a MARC::Record as parameter.
The last thing to solve was to manage biblios through real MARC import : they must populate the old-db, but must populate the MARC-DB too, without loosing information (if we go from MARC::Record to old-data then back to MARC::Record, we loose A LOT OF ROWS). To do this, there are subs beginning by "ALLxxx" : they manage datas with MARC::Record datas. they call OLDxxx sub too (to populate old-DB), but MARCxxx subs too, with a complete MARC::Record ;-)
In Biblio.pm, there are some subs that permits to build a old-style record from a MARC::Record, and the opposite. There is also a sub finding a MARC-bibid from a old-biblionumber and the opposite too.
Note we have decided with steve that a old-biblio <=> a MARC-Biblio.
WARNING : YOU MUST DO THE FOLLOWING IF YOU EXPECT THE MAIN-BRANCH TO WORK.
* install MARC::Record package, from cpan or sourceforge
* OVERWRITE File.pm and USMARC.pm. The original misses 1 functionnality we absolutly need in koha (reading a MARC from a variable, not from a file). Thanks to Steve, who modified MARC::Record.
* modify your DB by adding marcschema.sql tables
* populate new tables by launching fill_usmarc.pl
Then, it should work...
What works exactly will come in the next commit, in a few minuts (hitchcock suspens...)
Fixed up the Print module. Added a function printslip that takes a string as an argument. It is easier to prepare the slip and then call the print function.
in circulation.pl I have moved some javascript out to the circulation-top.inc
Auth.pm now caches form submissions and resubmits them if a user logs back in
after being logged out for inactivity. Also switched from crypt passwords to
md5 passwords stored in borrowers table. Used Digest::MD5 module. I ain't
gonna reinvent _that_ wheel. :)
Auth.pm now checks the password againts a new field in the borrowers table
(password). There is also a new "userid" field in the borrowers table. When
a user logs in, the userid will be checked against the userid first and the
cardnumber second, so either method will work.
Checks for a basic authentication userid. If found, it skips the cookie stuff.
Also now supports scripts that do not _require_ authentication, but might
display differently if they get an authenticated userid (might be useful for
opac pages, where pages could be tailored to meet a patron's preferences).
Not related to MARC :
* removed HLT- empty link when no basket for a supplier (should be useful to copy this into rel-1-2 i think)
* fixed some "use of uninitialized value"
related to MARC
* changed use Acquisition to use Catalogue, new package for MARC management
For instance, nothing is done to MARC DB, but structure is modified (see Biblio.pm for details), and everything seems to work : it's still possible to use acqui, and it fills old-DB pretty good.
WARNING : if you work on main trunk, please note Acquisition.pm is NO MORE USED in /acqui/ system. Every sub in Acquisition.pm has been moved to Biblio.pm or Catalogue.pm.
tipaul [Thu, 20 Jun 2002 21:07:30 +0000 (21:07 +0000)]
* Acquisition synchronised with rel-1-2
* Update of biblio.pm and catalogue.pm that continuates MARC stuff. Lot of explanations at the beginning of Biblio.pm
tonnesen [Thu, 20 Jun 2002 17:33:07 +0000 (17:33 +0000)]
More merges in from rel-1-2
All of the changes so far have been minor. I did uncomment delbiblio($biblio)
in delbiblio.pl in the main branch to match delbiblio.pl in rel-1-2
rangi [Wed, 19 Jun 2002 01:04:47 +0000 (01:04 +0000)]
Fixing issues which i broke just before ... perhaps one more commit today.
Issues used to pop up a payment window when a borrower had finished issuing
and had money to pay.
We seem to have lost that, ill try and get it back
tipaul [Fri, 14 Jun 2002 16:47:33 +0000 (16:47 +0000)]
Going to MARC 1.4...
0- Requires MARC::Record from cpan to work
1- divided Catalogue.pm in 2 parts :
Biblio.pm ,that contains biblio management
Catalogue.pm, that contains acquisition management.
When ended, they will replace the Acquisition.pm package
2- Created MARCxxx functions :
* MARCgetbiblio : retrieves a MARC::Record from the bibid passed in parameter (working, see test.pl script)
* MARCaddbiblio : creates a MARC-DB entry, for a MARC::Record given as parameter. (working)
* MARCmodsubfield : modifies a subfield for a given subfieldid
* MARCfingsubfield : retrieves a subfieldvalue from a bibid/tag/subfield
* MARCaddsubfield : adds a subfield to biblio into the DB
* MARCkoha2marc : builds a MARC::Record, given a biblionumber, a biblioitemnumber and/or an itemnumber. (working).
TODO :
A lot ;-))))
For instance, you can create only a MARC-DB entry from a old-DB entry. Note some questions are still to solve around bibid (old-DB/MARC-DB)...
finlayt [Thu, 6 Jun 2002 04:15:18 +0000 (04:15 +0000)]
fixed bug http://bugzilla.katipo.co.nz/show_bug.cgi?id=1284
If an item doesnt have a holdingbranch it just shows blank instead of not appearing at all.