Commit graph

8113 commits

Author SHA1 Message Date
Paul POULAIN
62ae9fa3ee bugfix : librarian name was libxxx, not lib.xxx
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:07:57 -05:00
Paul POULAIN
dfcdc73be6 bugfix : ship utf-8 encoding in mail header
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:07:55 -05:00
Paul POULAIN
4613c8f701 (bugfix) focusing on barcode for returns
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:07:54 -05:00
9717926644 Hiding empty results table when there are no results (prevents js error from tablesorter). Now links back to search form. Also includes minor CSS tweak for IE/Opera general layout problems.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:06:34 -05:00
d3b72dc919 Adding check all/none controls to opac suggestions, following opac shelves interface.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:06:33 -05:00
157b5a1eb6 Adding checks for dateformat preference so that tablesorter script can be passed an extra parameter for proper sorting of metric dates (Bug 2089, dates & table ordering with jquery)
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:06:32 -05:00
Henri-Damien LAURENT
12a828dd21 Bug Fixing : overduenotices wrote a file on disk before sending to browser
this script had quite serious issues :
- it would not use mindays and maxdays variables
- It would send latin1 where utf8 was expected
- It would send data without text delimiters (; was chosen if title contains ; it would have been a problem " used as delimiters now)
- It would write a file when it was not asked
Now stores the results in a string before printing it.
New option added to store result into a file : -o filename

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:06:31 -05:00
Henri-Damien LAURENT
ac1aec445c Bug fixing on overdues.tmpl : branchnames were not displayed
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:06:28 -05:00
Galen Charlton
1cdfcdf12b close security holes in patron search autocompletion
* Added authorization check - user must have a valid
  session cookie to use this feature; before this change,
  anybody could use circ/ysearch.pl to retrieve the entire
  patron directory without authorization.
* (bug 1953) now uses SQL placeholders

Note: this does, unfortunately, noticeably slow down automcompletion;
this indicates a need for factoring of C4::Auth to make authentication
for AJAX scripts as fast as possible.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 10:02:56 -05:00
Henri-Damien LAURENT
9fb4a72122 Bug Fixing 1782 patch
Adding a new routine GetBorrowercategoryList in C4/Member
Displaying categoryname when listing categories in memberentrygen.pl
using categorytype returned with GetMember wherever it is possible.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:42:25 -05:00
Joshua Ferraro
3a699f97d0 Incrementing DB revision 081 2008-05-12 09:36:13 -05:00
Ryan Higgins
9db5a7b30f DB Update 77 : add lastincrement column to accountlines
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:33:31 -05:00
Ryan Higgins
a9b7e08077 fix error on lastincrement.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:15 -05:00
Ryan Higgins
b54401ac66 C4::Circulation::FixOverduesOnReturn now handles dropbox mode.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:14 -05:00
Ryan Higgins
97f8b3abff Make dropbox mode obey Calendar module according to CircControl branch.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:13 -05:00
Ryan Higgins
a315de5281 Alter Overdues::CalcFine to use Dates objects.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:12 -05:00
Ryan Higgins
977f4bd795 show correct effective checkin date in dropbox mode.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:11 -05:00
Ryan Higgins
b4017ad01a adjust dropboxdate to allow for holidays calendar.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:10 -05:00
Ryan Higgins
f230264b24 C4::Calendar::addDate now handles negative offsets properly.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:09 -05:00
Ryan Higgins
0b92b75ff8 Alter C4::Calendar::daysBetween() to take C4::Dates objects.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:29:07 -05:00
Paul POULAIN
bc11a3bce2 BUGFIX (bloquing) moredetail & item edition
this patch introduce the same behaviour as for additem.pl, ie : edit only own homebranch items, except for superlibrarians

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:24:48 -05:00
Paul POULAIN
feae120738 BUGFIX : script to fix & fill onloan field in items table.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:24:43 -05:00
Galen Charlton
e3826229eb adjusted new C4::Scrubber test cases
Removed reference to override_context_prefs that
Andrew Moore had just factored out.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:23:44 -05:00
Galen Charlton
5cafd551be patron attributes - batch import
When ExtendedPatronAttributes is ON, the batch
patron import tool's behavior changes as follows:

[1] A new (required) column is added to the input CSV
    format.  This column should contain a list of
    attributes to set for the record, each value
    preceded by its type code.  For example, if
    the superlibrarian has defined two types,
    a unique identifier INSTID and a repeatable
    BASEBALL, this field could contain:

    "INSTID:12345,BASEBALL:Cubs"

    This field must be wrapped in quotes if multiple
    values are defined.  Since values can contain
    spaces, additional doubled-quotes may be required:

    "INSTID:12345,BASEBALL:Cubs,""BASEBALL:White Sox"""

    When replacing a patron record, any attributes specified
    in the input file replace all of the attribute values
    of any type that were previously assigned to the patron
    record.

[2] It is possible to specify a field other than the
    cardnumber to use for looking for matching patrons.
    Specifically, any attribute marked as a unique ID
    can be used.  The operator is asked to specify
    which ID type to use; if an input record has an
    attribute value of that type, and exactly one patron
    record in the database has that value, then the
    record will be overlaid or ignored according to the
    overlay setting.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:10 -05:00
Galen Charlton
944063b247 patron attributes - staff search and display
If ExtendedPatronAttributes is ON, patron attributes
can be displayed and edited by staff members.

The patron attributes are displayed and edited
in a new section (step 4) of the patron details page.  Each
attribute is identified by its type (including type code
and type description) and value (included value description
if the attribute is controlled by an authorised value category).

Note: if, for a repeatable attribute type, the staff member
enters multiple copies of that type with the same value, duplicates
are removed when the patron record is saved.  Also, if the type
is repeatable, a JavaScript link allows the staff member to
create new attributes of that type.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:09 -05:00
Galen Charlton
477bbe4d15 template changes for OPAC display of patron attributes
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:08 -05:00
Galen Charlton
8138b6dcac patron attributes - OPAC display
If ExtendedPatronAttributes is ON, any patron attributes
whose type is marked as displayble in the OPAC are now
displayed in the 'my details' page in the OPAC (assuming
that the patron is logged in).  These appear in the
'Library Use' section.

Currently, it is not possible for a patron to suggest
changes to any of their extended attributes using
opac-userupdate.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:07 -05:00
Galen Charlton
6418322bb1 corrected base class of a test
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:05 -05:00
Galen Charlton
5c1d14d822 C4::Members::SearchMember - support attributes
Modified SearchMember() so that if the patron attributes
feature is on (i.e., ExtendedPatronAttributes is ON), it
is possible to search for patrons on any attributes whose
type is set as staff searchable.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:04 -05:00
Galen Charlton
e30c9d00dd new editor for patron attribute types
Added new script under the Administration menu
to create, update, and delete patron attribute types.

Some things to note:

- once an attribute is created, its code cannot be changed
- the repeatibility and unique_id settings of an
  attribute type cannot be changed after creation -
  this is to avoid having to deal with changing
  constraints if an attribute type is already in use
  by patron records
- an attribute type cannot be deleted if it is
  used by any patron records
- this administration page is always displayed regardless
  of the value of the ExtendedPatronAttributes syspref.  If
  the syspref is off, the page will prompt the superlibrarian
  to turn it on if desired.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:03 -05:00
Galen Charlton
7e8ff3f4b8 C4::Koha - added GetAuthorisedValueCategories
New convenience function to get list of authorised
value categories.

No user-visible changes.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:02 -05:00
Galen Charlton
d75cc041f6 new C4 modules for patron attributes
Two new modules to support patron attributes:

- C4::Members::AttributeTypes

  OO-module for managing patron attribute types.

- C4::Members::Attributes

  Procedural module for retrieving and setting
  extended attributes belonging to a patron.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:00 -05:00
Galen Charlton
6fc62bcd32 extended patron attributes tables & syspref (DB rev 081)
Added two tables and system preference to support
a new patron alternate ID and attributes feature.

A patron attribute (or extended patron attribute) is an
additional piece of information associated with a patron
record.  Each attribute has a type that specifies
whether the attribute is repeatable, can serve as
a unique identifier, can take a password, and
whether it can be used to search for patron records
in the staff interface.

The list of attribute types is controlled by the
superlibrarian.  Once an attribute type is defined,
values for that attribute can be added to the patron record
via the staff interface or the batch patron import.

Two uses of extended attributes are:

- defining additional unique identifiers, such as
  a campus student ID number, a library staff
  HR number, and so on.  These IDs can be used
  for searching or matching and overlaying records
  during a batch import.
- additional statistical categories.  For example,
  a library could define an attribute type for
  tracking the academic major of a student patron.
  Any number of attributes of this sort could be
  defined.

The extended attributes feature is completely optional.  If
the new syspref, ExtendPatronAttributes, is OFF, the patron
attributes tables will be ignored; it will not be possible
to display, edit, search for, or match on extended
attributes.

The tables are:

[1] borrower_attribute_types - store attribute types
    defined by the administrator.

    - code
    - description
    - repeatable (whether a patron record can have
      more than value of a given attribute type)
    - unique_id (whether values of this type
      must be unique within the database)
    - opac_display (whether values of this type
      can display in the patron details page in the OPAC)
    - staff_searchable (whether values of this type
      can be used to retrieve patron records in circulation)
    - password_allowed (if set, staff patron editor will
      allow a password to be associated with a value; this
      is mostly a hook for functionality to be implemented
      in the future.
    - authorised_value_category (code of an authorised_value
      category.  If one is specified, the staff patron
      editor will use a dropdown for setting values of this type)
[2] borrower_attributes - the actual attributes.
    - code (attribute type code, FK)
    - borrowernumber (link to patron, FK)
    - attribute (the value)
    - password (password associated with value)

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:03:00 -05:00
Galen Charlton
9ea4ce4286 kohabug 2076: more reconciliation of DB schema (DB rev 080)
Adjustments to updatedatabase.pl to help ensure that a
DB upgraded from 2.2.9, 3.0-alpha, or 3.0-beta has a schema
identical to a fresh installation.

The changes to the following columns and indexes are to
default values, field widths, position relative to other
columns or index names.

virtualshelfcontents.biblionumber
virtualshelfcontents_ibfk_1 (virtualshelfcontents)
shelfcontents_ibfk_2 (virtualshelfcontents)
sessions.id
deletedbiblioitems.marc
branchcategories.categorycode
branchrelations.categorycode
items.damaged
deleteditems.notforloan
deleteditems.damaged
deleteditems.itemlost
deleteditems.wthdrawn
currency.symbol
subscription.numberlength
subscription.weeklength
serialidx (serialitems)
items.more_subfields_xml
z3950servers.type
deleteditems.more_subfields_xml
opac_news.lang
labels_conf.formatstring

The following missing columns were added:

deletedbiblioitems.marcxml
deleteditems.itype

The 080 DB rev is specifically for syncing the schema
for users of 3.0-alpha, 3.0-beta, and 3.0-beta2, and should
be a no-op for anybody who has followed git HEAD for
the past few months:

subscription.monthlength
deleteditems.marc
aqbooksellers.name

NOTE: this patch does not handle the case of syncing
the DB of a developer or user who has been following
git HEAD since before 3.0-alpha.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-12 09:02:58 -05:00
Ryan Higgins
bd30b60a8a Alter itemBarcodeInputFilter T-Prefix.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 07:03:53 -05:00
Ryan HIggins
92ca50980f only pass needsconfirmation to template if issuing is possible
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 07:03:52 -05:00
fc03a2510c Finishing adding additional markup for increased flexibility in stylesheet customization. Patch also includes some markup corrections, but shouldn't result in any visual changes.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:50:23 -05:00
34da7fce23 Changes to enable more flexibility in template customization. Container divs allow for graphical deliniation of logical screen areas.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:50:12 -05:00
Galen Charlton
7a729c2b0a test suite: new tests for installer
Added tests of loading the DB initialization and
sampple data SQL scripts for every language
and MARC flavour combination defined in
installer/data/{dbms}.  Errors that the
new test class should catch include:

* SQL syntax errors in kohastructure.sql
* SQL errors in the sample data

For each language and MARC flavour combination,
all mandatory and optional scripts are loaded.

As of this commit, several errors are reported
by this test class; these will be fixed separately.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:49:20 -05:00
Galen Charlton
339fc5fcab test suite refactoring
Moved routines to clear and create database and manage
zebraqueue_daemon.pl to KohaTest.pm so that they're
available to test classes - needed for installation
and upgrade tests in particular.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:49:04 -05:00
Galen Charlton
dbbeb6525b C4::Installer - new method to get available MARC frameworks
For use by test suite; not a user-visible change.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:48:55 -05:00
Andrew Moore
31ad99e2b5 Bug 2094: fixing two bugs in lost items report
* I guess the limit by item type was never working. I made it look for the right database column
* I fixed the error that was returned with no items were returned.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:48:51 -05:00
Andrew Moore
20fd87d59b Bug 2094: cleanup of lost items report
Just some code cleanup of C4::Items::GetLostItems and reports/itemslist.pl.
Some whitespace changes, perltidy, and documentation improvements.
Also, I rewrote and SQL statement to try to reduce possibilities of SQL injection attacks.

No documentation or functional changes necessary with this patch.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:48:49 -05:00
Andrew Moore
c006950355 Bug 2094: implementing ability to select particular lost status in the lost items report
This patch adds a drop-down to the lost items report to let the user select a
particular lost status to display. Only items with that particluar lost status
will be dispolayed.

The documentation for the lost items report on the staff client will need to be slightly adjusted.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:48:45 -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
db755a4307 bug 2088: test suite refactoring to deal with t/override_context_prefs.pm
Some minor changes to get the test suite working a bit better:
I removed a superfluous method from t/lib/KohaTest.pm.
I made each barcode for the items added in KohaTest.pm unique so that they would actually get inserted.

Then, I removed t/override_context_prefs.pm. If you need that functionality, you're a database
dependent test and should be a module in t/lib.
So, I deleted all of the trivial .t tests that just 'use'd their modules and had no other
tests and replaced them with lib/KohaTest/*pm modules that do a little bit more checking
on those modules.
I removed the references to override_context_prefs.pm in all of the other .t modules.
They all pass now with no override_context_prefs.pm module.

The database_depenedent.pl test script still does not pass entirely. There's a problem with the zebra index
not being reset each time that the tables are truncated. I'll get to that.

no functional or documentation changes here.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:48:40 -05:00
df0fccdcbf Tweaking display of "action" links in search results
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:45:20 -05:00
6b889334fb Fixing a couple of bugs, including Bug 2080, OPAC Lists : No way to remove biblios from list.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:45:15 -05:00
886fdce625 Fix for Bug 2086, Filter Button Misleading. This moves the filter form into the left-hand sidebar.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:45:11 -05:00
1942e430b2 Adding RSS icon to search results (Fix for Bug 2078, RSS Icon on OPAC)
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-11 06:45:10 -05:00