Commit Graph

36 Commits

Author SHA1 Message Date
Tomas Cohen Arazi 184cc7416a Bug 9211 - days_between wrong behaviour
As noted in comments #15, #16 and #17 of bug 8486, and its API,
Koha::Calendar->days_between should always returns a positive number
irrespective of the relative order of the parameters. This is still an
open bug, which arised when rewriting the Calendar.t file (Bug 9209).

Regards
To+

Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Added Paul's sign-off line, as despite it showing up in Bugzilla, it
wasn't on the patch.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-02-01 21:41:34 +13:00
Tomas Cohen Arazi 3d0b417cb0 Bug 9078 - fixing exceptions broke tests
Fixing the holiday exceptions arised a problem with how the test data was constructed.
This made several tests fail.

This patch fixes the add_holiday function. Tests should pass now.

Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passed-QA-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-26 13:27:43 +13:00
Tomas Cohen Arazi bd60418f9d Bug 9078 - is_holiday should honour holiday exceptions
Make is_holiday return 0 for holiday exceptions.

Note: This patch makes several current ok tests fail. My first guess is test data is not
constructed ok. More on this later.

Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passed-QA-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-26 13:27:03 +13:00
Tomas Cohen Arazi 1d69301468 Bug 8800 - useDaysMode=Datedue wrong behaviour (revisited)
useDaysMode=Datedue wasn't used as advertised in the docs. Added
next_open_day and prev_open_day subs to Koha::Calendar and some tests for them.

- Koha::Calendar->addDate was rewritten in a more sane way (also split into
  addHours and addDays for convenience).
- Fixed a bug introduced in Bug 8966 regarding dt truncation and dtSets->contains
- Minor docs typos
- Use the passed Calendar mode or default to 'Calendar' in Koha::Calendar->_mockinit.
- Tests

I'm writing some db-dependent tests for is_holiday, and hopefully for CalcDateDue so any
rewrite/followup doesn't break things.

Regards
To+

Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passed-QA-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Conflicts:
	t/Calendar.t

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-26 13:22:56 +13:00
Maxime Pelletier 6a8bba271e Bug 8966 Koha::Calendar::is_holiday truncates the date
* Create a local copy of the date instead of calling truncate directly on the date
* Add a test to properly test that the issue is fixed

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-31 10:49:36 +13:00
Kyle M Hall f362888e0c Bug 4173: Followup: Document KohaAuthorisedValues plugin
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-09-25 13:22:10 +12:00
Kyle M Hall 98b6189fff Bug 4173 - Statuses not appearing in the OPAC
For the authorised values LOST and DAMAGED, if an OPAC description
is defined for the given value, display that description in the OPAC
rather than the generic description.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-09-25 13:21:12 +12:00
Colin Campbell d19196f670 Bug 8418: load repeating holidays hash correctly
The repeating holidays structure was being loaded in
a different order to how it was tested

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-09-16 07:56:42 +12:00
Colin Campbell 76443305af Bug 8656 Calendar needs to load both exception and nonexception dates
single_holidays and exception_holidays were both being selected
with the same parameter with the result that single holidays were not
being loaded.

Have removed the retrieval of the unused parameters title and
description.

In effect the distinction is not meaningful for these routines and
the two structures could become one. This patch just fixes the
current bug

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-09-16 07:53:26 +12:00
Robin Sheat b5c8aad0f6 Bug 8532 - improve robustness when converting dates
If undef is passed to the date format conversion function, it dies. This
can happen when you have old data in the database. Better to handle it
in some fashion rather than die, so now it just returns undef too.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
I replace "return undef" with just "return" to pass perlcritic

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-08-08 08:52:23 +12:00
Tomas Cohen Arazi 99a70e30a0 Bug 8251 - Follow up, use 'day' instead of 'days' for Datetime::truncate
As noted in comment #4 by Jonathan Druart, this should be fixed in every call
to DateTie::truncate function. This patch does exactly that.

julian_m tested that truncate( to => 'days' ) didn't actually do anything, so
it is understandable that this 'fix' might introduce new bugs as we might have
'fixed' at a higher libs level this issue.

'minutes' is used in truncate function too, so fixing.

Signed-off-by: Dobrica Pavlinusic <dpavlin@rot13.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

Conflicts:

	Koha/DateUtils.pm

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-08-07 08:53:45 +12:00
Robin Sheat 694e6bebfd Bug 8391: prevent error when viewing circ history with bad dates
Sometime the circ history will contain "0000-00-00" as a returndate when
an item was lost rather than returned. This currently causes an error
when attempting to parse the dates, this patch causes an empty string to
be returned instead.

Note: a future enhancement should distinguish between "no date provided"
and "invalid date provided" to allow distinctions to be made.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
2012-08-07 08:44:10 +12:00
Colin Campbell e52ff95d9b Bug 8486 Correct calculation of days_between`
This patch backports the following patches
from master to 3.8.x:

commit d786d7c7b6c2894cca6231cae3deee9c9d43120b
Author: Colin Campbell <colin.campbell@ptfs-europe.com>
Date:   Tue Jul 24 15:16:10 2012 +0100

    Bug 8486 Correct calculation of days_between

    There were errors in the calculation used for days_between
    which caused incorrect values to be returned
    Added tests to validate calculation

    NB Tests still need to be provided for the hourly
    calculations

commit 8379a9781dbf16bcb53b55b20f15dcd55ff948Oc2
Author: Colin Campbell <colin.campbell@ptfs-europe.com>
Date:   Wed Jul 25 10:55:56 2012 +0100

    Bug 8486 Merge Calendar test files

    Moves the tests previously in t/Kalendar.t to t/Calendar.t
    and removes the old file.
    Note the existing minimal test of C4/Calendar still called in
    t/Calendar

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-07-28 14:48:33 +12:00
Chris Cormack af07ec2a6b Bug 5644 : Fixing dropbox mode calculation
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-07-17 17:39:16 +12:00
Galen Charlton c75eefd1ac Bug 7818: utility to generate DOM indexing configs
misc/maintenance/make_zebra_dom_cfg_from_record_abs:
  generate a DOM filter Zebra index config from a GRS-1 config

Given a Zebra record.abs file containing a set of index definitions for
Zebra's GRS-1 filter, write an equivalent DOM filter configuration.

To generate the XSLT that is to be used by Zebra, run something like
the following on the output of this utility:

xsltproc ZEBRA_CFG_DIR/xsl/koha-indexdefs-to-zebra.xsl \
  biblio-koha-indexdefs.xml \
  > ZEBRA_CFG_DIR/marc_defs/marc21/biblios/biblio-zebra-indexdefs.xsl

The above example assumes that the output of the program was named
biblio-koha-indexdefs.xsl.

This commit also introduces Koha::Indexer::Utils, a new package for
misceallenous routines that support Koha's indexing definitions.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-06-26 09:15:28 +12:00
Adrien Saurat 15393d1d8e Bug 8045: fixes "date due" when checking in
Added cloning of object parameters in "days_between" method.

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

Checked in items that were overdue, due in the future and not
checked out and all showed the right info in the check in
table.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-05-15 08:51:46 +12:00
Colin Campbell fab0b80ddb Bug 7562 Add strict & warnings to KohaDates Plugin
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

http://bugs.koha-community.org/show_bug.cgi?id=7814
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-03 18:11:46 +02:00
Colin Campbell 32c5ef613d Use hour or day deltas to calculate overdue durations
If durations are calculated by subtraction they will use units
larger than those we care about and these are not convertable
to the smaller units we are attempting to enumerate
Use the appropriate delta methods to calculate theee fines

Adds a separate hours_between method to calendar
This should strictly be checking opening hours (of which
closed days are a special case) of the relevant branch
These need adding to branches

http://bugs.koha-community.org/show_bug.cgi?id=7852
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>

QA comment: renamed "days_minus_grace" variable to "units_minus_grace"
Also added POD to _get_chargeable_units

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-03 17:59:56 +02:00
Chris Cormack 88efb109e5 Bug 6679 : Fixing perlcritic violation
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-23 10:37:51 +01:00
Elliott Davis da14b2f4ba Bug 5549 : fixed non-cloned date object in Add date for calendar, also removed erounous dumper in moremember.pl that dumped entire issue 2012-03-20 13:41:49 +13:00
Colin Campbell e012957186 Bug 5549 : Koha::Calendar::addDate should not loop on -1
Control variable of loop should be absolute value
to avoid looping when backtracking
2012-03-20 13:26:36 +13:00
Colin Campbell b946d16ec5 Bug 5549 : Format due dates in opac
Further change to ensure that where dates are formatted from the
db form the duedate loses the 23:59
2012-03-20 13:24:51 +13:00
Colin Campbell 372216b9c8 Bug 5549 : Don't confuse the users with an irrelevant time
If the book is due at 23:59 the due time is irrelevant
and potentially confusing to the user add a DateUtils
routine that strips that off the returned display date
2012-03-20 13:24:32 +13:00
Colin Campbell 822f898f66 Bug 5549 : Calendar needed a change array_ref to hash_ref 2012-03-20 13:23:44 +13:00
Colin Campbell 0a2b32675f Bug 5549 : Koha::Calendar needs to accept scalar add_durations 2012-03-20 13:23:26 +13:00
Colin Campbell 40b907bc0b Bug 5549 : Make Koha::Calendar testable
Add a testing option
Add a script with tests
Some simplifications of the logic
2012-03-20 13:23:13 +13:00
Colin Campbell aec123114a Bug 5549 : Add days_between method to Koha::Calendar 2012-03-20 12:37:20 +13:00
Colin Campbell 8cc5b3452e Bug 5549 : DateUtils add subroutine format_sqldatetime
convenience method for a frequent use of the other
methods in the module
2012-03-20 12:35:40 +13:00
Colin Campbell 170508e7a0 Bug 5549 : DateUtils handling odd cases
Really we should not have them but they are in
existing code. They were not handled 100%
added appropriate tests
2012-03-20 12:28:22 +13:00
Colin Campbell 22139db49d Bug 5549 : Add Tests For Koha::DateUtils
Add testscript for DateUtils
Add a parameter to override system pref to output_pref not for
use in calling software (its superfluous) but to enable testing
of call with different settings
2012-03-20 12:24:37 +13:00
Colin Campbell 00bf7cc774 Bug 5549 : Get basic 24 Hr loan working 2012-03-20 12:13:34 +13:00
Colin Campbell 0ce31bfba9 Bug 5549 : Pass time_zone correctly 2012-03-20 12:12:51 +13:00
Colin Campbell 5b2260ae85 Bug 5549 : Koha::Calendar allow negative offset to addDate 2012-03-20 12:12:28 +13:00
Colin Campbell b7b6a8e388 Bug 5549 : Due Date calculation in issue needs to be HH:MM aware 2012-03-20 12:12:09 +13:00
Colin Campbell 894a393950 Bug 5549 : Add DateUtils Module
Wraps DateTime object creation from a string
as a tool to enable move to dt objects for more
flexibility
2012-03-20 12:10:57 +13:00
Chris Cormack 01875b565d Bug 929 : Followup fixing date formatting
This patch introduces a Filter (KohaDates) for use in templates
[% USE KohaDates %]
[% somevariable | $KohaDates %]

This will format the date in the format specified by the systempreference

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-01-06 13:52:08 +01:00