Commit graph

79 commits

Author SHA1 Message Date
Joshua Ferraro
3a699f97d0 Incrementing DB revision 081 2008-05-12 09:36:13 -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
a76a65110c 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-11 05:40:35 -05:00
Galen Charlton
af716ed56c kohabug 2076 - add browser if necessary (DB rev 078)
Ensure that the browser table is added during an upgrade
from 2.2.9.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-01 18:59:30 -05:00
Galen Charlton
22aa16e87f kohabug 2076 - remove three tables (DB rev 077)
Removed the categorytable, mediatypetable, and subcategorytable
tables.  These three tables appear to be from an incomplete
patch from pre-git that defined these tables to implement
additional search limits, and are not present in the 2.2.9
package.  In 3.0, these tables did nothing - the only code that
referred to them are incomplete admin editors that lack HTML
templates and are not referred to anywhere.

The updatedatabase.pl logic to remove these tables is conservative;
the tables are dropped only if they exist and are all empty.  Effectively,
this means that they'll be dropped if you've been running a fresh install
of 3.0 from git or the alphas or betas; if you've upgraded your database
from 2.2.9, these tables likely weren't in your database to begin with.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-05-01 18:59:28 -05:00
Galen Charlton
438ed23337 staging import - enhance record overlay behavior
Enhanced the ability of catalogers to specify how
bib and item records should be added, replaced, or
ignored during a staging import.

When an import batch of bib records is staged and commit,
the user can now explicitly specify what should occur
when an incoming bib record has, or does not have, a match
with a record already in the database.  The options are:

if match found (overlay_action):
  create_new (just add the incoming record)
  replace (replace the matched record with the incoming one)
  use_template (option not implemented)
  ignore (do nothing with the incoming bib; however, the
          items attached to it may still be processed
           based on the item action)

if no match is found (nomatch_action):
  create_new (just add the incoming record)
  ignore (do nothing with the incoming bib; in this
          case, any items attached to it will be
          ignored since there will be nothing to
          attach them to)

The following options for handling items embedded in the
bib record are now available:

  always_add (add the items to the new or replaced bib)
  add_only_if_match (add the items only if the incoming bib
                     matches an existing bib)
  add_only_if_add (add the items only if the incoming bib
                   does *not* match an existing bib)
  ignore (ignore the items entirely)

With these changes, it is now possible to support the following use cases:

[1] A library joining an existing Koha database wishes to add their
    items to existing bib records if they match, but does not want
    to overlay the bib records themselves.
[2] A library wants to load a file of records, but only handle
    the new ones, not ones that are already in the database.
[3] A library wants to load a file of records, but only
    handle the ones that match existing records (e.g., if
    the records are coming back from an authority control vendor).

Documentation changes:

* See description above; also, screenshots of the 'stage MARC records
for import' and 'manage staged MARC records' should be updated.

Test cases:

* Added test cases to exercise staging and committing import batches.

UI changes:

* The pages for staging and managing import batches now have
  controls for setting the overlay action, action if no match,
  and item action separately.
* in the manage import batch tool, user is notified when they
  change overlay action, no-match action, and item action
* HTML for manage import batch tool now uses fieldsets

Database changes (DB rev 076):

* added import_batches.item_action
* added import_batches.nomatch_action
* added 'ignore' as a valid value for import_batches.overlay_action
* added 'ignored' as a valid value for import_records.status
* added 'status' as a valid value for import_items.status

API changes:

* new accessor routines for C4::ImportBatch

    GetImportBatchNoMatchAction
    SetImportBatchNoMatchAction
    GetImportBatchItemAction
    SetImportBatchItemAction

* new internal functions for C4::ImportBatch to
  determine how a given bib and item are to be
  processed, based on overlay_action, nomatch_action,
  and item_action:

    _get_commit_action
    _get_revert_action

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-30 21:58:46 -05:00
Andrew Moore
5b5596a69d bug 2047: adding icons to authorized values
This patch adds the ability to associate icon images with authorized values.
They're not displayed anywhere yet, though. There's also a database update
in here. I took version "3.00.00.075", but I can change that later if it gets
taken before I commit these patches.

DOCUMENTATION CHANGES: When you add or edit authorized values, you can now
associate image icons with them. These icons come from the same icon sets
that you can have with your itemtypes, such as media type. They don't show
up anywhere yet, but that's coming. Keep an eye on
http://bugs.koha.org/cgi-bin/bugzilla/show_bug.cgi?id=2047
for more updates.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-30 20:10:31 -05:00
Andrew Moore
1f92dbafdf bug 2044: adding database change for itemtype icon change
This is the database update change to take into account the rearrangement of the
itemtype icons directory.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-24 11:54:20 -05:00
Joe Atzberger
83b7624e13 DB and syspref update for Tags and BakerTaylor
Feel free to apply this before the other related Tags/B&T patches.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-22 18:02:46 -05:00
Joshua Ferraro
57dda254d7 fixing version numbering from 71 to 72 2008-04-22 17:55:31 -05:00
paul
7be6d1f12b IMPROVEMENT : serialsadditems at subscription level (bump 071)
The patch update the DB by adding a row in the subscription table (serialsadditems), that is filled with the value of the syspref.
then, the syspref is deleted.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-22 17:34:33 -05:00
f47bebfeb6 Update yuipath syspref
If syspref points to online 2.3.1 YUI version, edit it to 2.5.1.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-21 11:17:33 -05:00
Chris Nighswonger
f6f01deca5 Correcting class.labels_conf to be classification.labels_conf
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-11 16:56:31 -05:00
Galen Charlton
cafaa26b45 granular permissions - created DB tables
First big commit in a project to add more granular
staff user permissions to Koha.

* Created two new database tables

permissions:
  stores a list of defined permissions; each
  permission is to be interpreted as a child
  of a top-level permission defined in the
  existing user flags.  For example, Tools (bit 13)
  now has a separate sub-permission for each
  individual tool.

  The columns are
    module_bit  = FK referencing userflags.bit
    code        = code, e.g., import_patrons
    description = e.g., "Import patron data"

user_permissions:
  stores a list of the specific permissions that
  a staff user actually has.   For example, if
  staff user 123 has only the 'import_patrons' subpermission
  of 'Tools' (module_bit = 13), that would be represented
  by having (123, 13, 'import_patrons' in user_permissions.

  user_permissions and borrowers.flags are now interpreted
  as follows (assuming the CheckSpecificUserPermissions syspref
  is ON):
    * If the appropriate bit (e.g., bit 13 for Tools) is set
      in borrowers.flags, the staff user can access all
      Tools functions.  There should be no rows in user_permissions
      for that staff user and userflag bit combination.
    * If the bit is not set in borrowers.flags, but one or
      more rows are present in user_permissions for that
      staff user and bit combination, the staff user can
      access the specified sub-functions.
    * If the bit is not set in borrower.flags and there are
      no rows in user_permissions for that staff user and
      bit combination, the user cannot access any of the functions.

  Note that this means that if a staff user can access all
  functions for a module (because the bit is set in borrowers.flags),
  the user will automatically be able access any new subfunctions
  added to permissions by a database update.

  The columns are:
    borrowernumber = FK referencing borrowers.borrowernumber
    module_bit, code = FK referencing permissions

* Added a new system preference, CheckSpecificUserPermissions

If this system preference is ON, staff users can be assigned
specific permissions which will be respected during
authorization checks.  If this system preference is OFF, the
current userflags semantics will continue to apply.

* Defined sub-permissions for Tools.  The list of specific
  tools permissions is now:

  edit_news          Write news for the OPAC and staff interfaces
  label_creator      Create printable labels and barcodes from catalog and patron data
  edit_calendar      Define days when the library is closed
  moderate_comments  Moderate patron comments
  edit_notices       Define notices
  edit_notice_status_triggers     Set notice/status triggers for overdue items
  view_system_logs   Browse the system logs
  inventory          Perform inventory (stocktaking) of your catalogue
  stage_marc_import  Stage MARC records into the reservoir
  manage_staged_marc Manage staged MARC records, including completing and reversing imports
  export_catalog     Export bibliographic and holdings data
  import_patrons     Import patron data
  delete_anonymize_patrons    Delete old borrowers and anonymize circulation history (deletes borrower reading history)
  batch_upload_patron_images  Upload patron images in batch or one at a time
  schedule_tasks     Schedule tasks to run

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-04-10 15:53:08 -05:00
Chris Nighswonger
b28d306a94 Updating patronimages syspref to reflect current sysprefs.sql
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-19 11:14:20 -05:00
Joshua Ferraro
5d4b0048ac partial fix for bug 1873: virtualshelfcontents dateadded column empty
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-17 23:40:40 -05:00
Chris Nighswonger
dca8e1fdb7 Bumping DB ver to 065
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-17 20:43:11 -05:00
Joshua Ferraro
4c92790fc0 IMPORTANT: Upgrading to Amazon.com Associates Web Service 4.0
As announced this past February, Amazon.com will no longer be
accepting web services requests to Amazon E-Commerce Service
(Amazon ECS) version 3.0 beginning on March 31, 2008.

This patch upgrades to Amazon.com's Associates Web Service 4.0
for the following components:

1. Amazon.com Locale support for: Canada, Germany, France, Japan,
   UK, and US (see the new syspref called AmazonLocale)
2. Jacket Covers
3. Editorial Reviews
4. Customer Reviews
5. Amazon.com Similar Items

The following changes MUST be made to continue using Amazon.com
content:

1. Delete the system preference: AmazonDevKey (AmazonDevKeys used
   with AmazonECS 3.0 are no longer valid)
2. Add the system preferences: AmazonLocale, AWSAccessKeyID
   NOTE: steps 1, 2 are done by the web installer
3. Verify your AWSAccessKeyID:
   You may already have an Access Key ID. You can access your Access
   Key ID by going to http://aws.amazon.com, pointing to Your Web
   Services Account, then clicking View Access Key Identifiers.
   Depending on when you signed up for ECS 3.0, you may need to
   re-register for an AWS account, which includes an Access Key ID.
4. Enter your AWSAccessKeyID in the Koha syspref called
AWSAccessKeyID

For complete details on the changes in Amazon.com Associates Web
Service 4.0, and the migration process, please see: http://tinyurl.com/ysorqy

Other changes with this patch:
 * added $tabsysprefs{PatronsPerPage}="Patrons";
 * Moved OPAC Features to OPAC in sysprefs
 * removed experimental OPACXISBNAmazonSimilarItems and XISBNAmazonSimilarItems features

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-16 12:27:55 -05:00
Galen Charlton
e140508092 bump DB rev to 063
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-15 08:36:36 -05:00
Galen Charlton
9222f7a6ca created old_issues and old_reserves tables
The new tables have the same structure and constraints
as the tables they archive with the following exceptions:

* borrowernumber and biblionumber in old_reserves can be
  NULL
* the FK constraints (e.g., for itemnumber) on old_reserves
  set the child column to NULL if the parent row is deleted
  instead of deleting the child row.
* there is no FK constraint on old_issues.branchcode, allowing
  a branch to be deleted without changing archived requests.

Some miscellaneous cleanup was done as part of this patch:

* GetMemberIssuesAndFines (C4::Members) now uses bind variables
* fixed POD for GetMemberIssuesAndFines

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-15 08:36:31 -05:00
Chris Nighswonger
075a89fe4c Bumping to 061 for real this time
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-08 11:19:35 -06:00
b3fe04b221 Fixing a little mixup in updatedatabase.pl we had 2 057 versions
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-03-04 04:48:04 -06:00
9a27fc520c Bumping to version .59
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-29 17:30:13 -06:00
Paul POULAIN
eebc452ba9 bumping to 058 : opac_news lang field was too short
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-29 11:59:41 -06:00
Chris Nighswonger
35d89b0e2d Bumping db version to reflect new patronimage table
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-23 10:55:38 -06:00
Mason James
66df5a4052 bump for enumchron column add
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-20 20:12:18 -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
Chris Nighswonger
ff026f1076 Adding another barcode autogeneration sequence to barcode.pl - bumped ver to 054
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-16 11:29:13 -06:00
Chris Nighswonger
bc895d8626 Adding Printer Profiles feature to the Label Creator.
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-16 11:26:38 -06:00
Chris Nighswonger
f560b5dd20 Adding 'more_subfields_xml' column to deleteditems table.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-02-06 23:19:32 -06:00
Chris
c4c2a8d698 Bugfix for Bug 1790 - Correcting sysprefs opacthemes explanation to reflect current functionality
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-30 07:51:44 -06:00
Henri-Damien LAURENT
f91a41970d Adding OpacHighlightedWords system preference
Disable or Enable the display of query terms in the biblio.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-25 16:52:15 -06:00
Galen Charlton
396f998788 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.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-22 07:24:13 -06:00
Paul POULAIN
2f6a24640c Adding OpacRenewalAllowed systempref (bump to 047)
to let the library decide wheter their patrons can or can't renew checked-out items directly from their account.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-14 16:47:52 -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
Joshua Ferraro
8d072519b6 synching deletedborrowers table with borrowers table
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-04 21:30:30 -06:00
Joe Atzberger
0ed71ca7d0 updatedatabase - DB version to 043 for 2 new columns in currency table
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 20:21:52 -06:00
Galen Charlton
6ddf723fe8 DB rev 042: disallow null in aqbooksellers.name
Patch per Ryan Higgins; part of fix for bug 1251.

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:09 -06:00
Galen Charlton
ef7219e411 DB rev 041: disallow NULL in some item status columns
notforloan, damaged, itemlost, wthdrawn

Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-01-03 16:23:08 -06:00
Chris Cormack
bcc60a1117 Fix for bug 1552, fix ordering of issued items
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-30 16:24:27 -06:00
Joshua Ferraro
a4004ade12 Sysprefs Changes
* Fix for Bug 1601: uppercasesurnames system preference needs to be added

* Partial fix for Bug 1711: reinstate the ‘CircControl’ syspref, which is
of type Choice with the following choices: PickupLibrary | PatronLibrary |
ItemHomeLibrary

* reinstate the ‘finesCalendar’ syspref, which is of type Choice with
the following choices: ignoreCalendar | noFinesWhenClosed

* ‘HomeorHoldingbranch’ is deprecated and removed

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-29 08:23:52 -06:00
Galen Charlton
3584922a70 fixed quoting problem in updatedatabase.pl; version now 038
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-28 12:39:40 -06:00
Chris Cormack
dfc5c181bc Big bugfix for bug 1631
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 18:40:28 -06:00
Paul POULAIN
20649b7dc0 Adding OPACItemsResultsDisplay syspref & bumping to version 036
Signed-off-by: Chris Cormack <crc@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-26 14:33:04 -06:00
Galen Charlton
395f4d49ec installer: fixed typo in version number 2007-12-17 09:13:54 -06:00
Galen Charlton
dd7b1da0cf installer: made kohaversion.pl source for package version number
Version now taken from kohaversion.pl instead of
C4/Context.pm, aligning installer with the rest
of Koha's internal version checks.
2007-12-17 09:13:53 -06:00
Galen Charlton
073b8b7a36 bugfix: restore setting classification source by dropdown
Apparently as an inadvertant result of the patches to
move the SQL files to load the MARC frameworks, the
authorised_value of 'cn_source' was dropped for
kohafield = 'items.cn_source' and 'biblioitems.cn_source'.

This patch restores those values, thus making the
classification source set by a dropdown in the bib
and item editors.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-13 17:30:34 -06:00
Ryan Higgins
46d77f4461 Virtual shelves: per shelf sort, multiple add in OPAC, partial bug fixes.
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-12 08:03:13 -06:00
Ryan Higgins
444d01c0a5 adding userflag to allow modification of staff borrowers.
will add Staff category type in subsequent commit

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-12-02 15:17:45 -06:00
Galen Charlton
583baef555 MARC21 framework: changed 'items.withdrawn' to 'items.wthdrawn'
The correct field is 'items.wthdrawn', not 'items.withdrawn'.
Spelling may be corrected in post-3.0 version.

Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2007-11-27 15:51:55 -06:00