my $issuedate = dt_from_string();
my $itype = $item_object->effective_itemtype;
- my $useDaysMode_value = Koha::CirculationRules->get_useDaysMode_effective_value(
+ my $daysmode = Koha::CirculationRules->get_effective_daysmode(
{
categorycode => $borrower->{categorycode},
itemtype => $itype,
branchcode => $branchcode,
}
);
- my $calendar = Koha::Calendar->new( branchcode => $branchcode, days_mode => $useDaysMode_value );
+ my $calendar = Koha::Calendar->new( branchcode => $branchcode, days_mode => $daysmode );
my $orig_due = C4::Circulation::CalcDateDue( $issuedate, $itype, $branchcode, $borrower );
$newdatedue = CalcDateDue($startdate,$itemtype,$branchcode,$borrower);
this function calculates the due date given the start date and configured circulation rules,
-checking against the holidays calendar as per the useDaysMode circulation rule.
+checking against the holidays calendar as per the daysmode circulation rule.
C<$startdate> = DateTime object representing start date of loan period (assumed to be today)
C<$itemtype> = itemtype code of item in question
C<$branch> = location whose calendar to use
}
- my $useDaysMode_value = Koha::CirculationRules->get_useDaysMode_effective_value(
+ my $daysmode = Koha::CirculationRules->get_effective_daysmode(
{
categorycode => $borrower->{categorycode},
itemtype => $itemtype,
);
# calculate the datedue as normal
- if ( $useDaysMode_value eq 'Days' )
+ if ( $daysmode eq 'Days' )
{ # ignoring calendar
if ( $loanlength->{lengthunit} eq 'hours' ) {
$datedue->add( hours => $loanlength->{$length_key} );
else { # days
$dur = DateTime::Duration->new( days => $loanlength->{$length_key});
}
- my $calendar = Koha::Calendar->new( branchcode => $branch, days_mode => $useDaysMode_value );
+ my $calendar = Koha::Calendar->new( branchcode => $branch, days_mode => $daysmode );
$datedue = $calendar->addDate( $datedue, $dur, $loanlength->{lengthunit} );
if ($loanlength->{lengthunit} eq 'days') {
$datedue->set_hour(23);
$datedue = $expiry_dt->clone->set_time_zone( C4::Context->tz );
}
}
- if ( $useDaysMode_value ne 'Days' ) {
- my $calendar = Koha::Calendar->new( branchcode => $branch, days_mode => $useDaysMode_value );
+ if ( $daysmode ne 'Days' ) {
+ my $calendar = Koha::Calendar->new( branchcode => $branch, days_mode => $daysmode );
if ( $calendar->is_holiday($datedue) ) {
# Don't return on a closed day
$datedue = $calendar->prev_open_days( $datedue, 1 );
my $userenv = C4::Context->userenv;
my $branchcode = $userenv->{branch} // q{};
- my $useDaysMode_value = Koha::CirculationRules->get_useDaysMode_effective_value(
+ my $daysmode = Koha::CirculationRules->get_effective_daysmode(
{
categorycode => undef,
itemtype => undef,
branchcode => $branchcode,
}
);
- my $calendar = Koha::Calendar->new( branchcode => $branchcode, days_mode => $useDaysMode_value );
+ my $calendar = Koha::Calendar->new( branchcode => $branchcode, days_mode => $daysmode );
my $today = dt_from_string;
my $dropbox_date = $calendar->addDate( $today, -1 );
issuelength => {
scope => [ 'branchcode', 'categorycode', 'itemtype' ],
},
- useDaysMode => {
+ daysmode => {
scope => [ 'branchcode', 'categorycode', 'itemtype' ],
},
lengthunit => {
return $res;
}
-=head3 get_useDaysMode_effective_value
+=head3 get_daysmode_effective_value
-Return the value for useDaysMode defined in the circulation rules.
+Return the value for daysmode defined in the circulation rules.
If not defined (or empty string), the value of the system preference useDaysMode is returned
=cut
-sub get_useDaysMode_effective_value {
+sub get_effective_daysmode {
my ( $class, $params ) = @_;
my $categorycode = $params->{categorycode};
my $itemtype = $params->{itemtype};
my $branchcode = $params->{branchcode};
- my $useDaysMode_rule = $class->get_effective_rule(
+ my $daysmode_rule = $class->get_effective_rule(
{
categorycode => $categorycode,
itemtype => $itemtype,
branchcode => $branchcode,
- rule_name => 'useDaysMode',
+ rule_name => 'daysmode',
}
);
- return ( defined($useDaysMode_rule)
- and $useDaysMode_rule->rule_value ne '' )
- ? $useDaysMode_rule->rule_value
+ return ( defined($daysmode_rule)
+ and $daysmode_rule->rule_value ne '' )
+ ? $daysmode_rule->rule_value
: C4::Context->preference('useDaysMode');
}
if ( C4::Context->preference("ExcludeHolidaysFromMaxPickUpDelay") ) {
my $itemtype = $self->item ? $self->item->effective_itemtype : $self->biblio->itemtype;
- my $useDaysMode_value = Koha::CirculationRules->get_useDaysMode_effective_value(
+ my $daysmode = Koha::CirculationRules->get_effective_daysmode(
{
categorycode => $self->borrower->categorycode,
itemtype => $itemtype,
branchcode => $self->branchcode,
}
);
- my $calendar = Koha::Calendar->new( branchcode => $self->branchcode, days_mode => $useDaysMode_value );
+ my $calendar = Koha::Calendar->new( branchcode => $self->branchcode, days_mode => $daysmode );
$expirationdate = $calendar->days_forward( dt_from_string(), $max_pickup_delay );
}
chargeperiod => undef,
chargeperiod_charge_at => undef,
issuelength => undef,
- useDaysMode => undef,
+ daysmode => undef,
lengthunit => undef,
hardduedate => undef,
hardduedatecompare => undef,
my $onshelfholds = $input->param('onshelfholds') || 0;
my $issuelength = $input->param('issuelength');
$issuelength = $issuelength eq q{} ? undef : $issuelength;
- my $useDaysMode = $input->param('useDaysMode');
+ my $daysmode = $input->param('daysmode');
my $lengthunit = $input->param('lengthunit');
my $hardduedate = $input->param('hardduedate') || undef;
$hardduedate = eval { dt_from_string( $input->param('hardduedate') ) } if ( $hardduedate );
chargeperiod => $chargeperiod,
chargeperiod_charge_at => $chargeperiod_charge_at,
issuelength => $issuelength,
- useDaysMode => $useDaysMode,
+ daysmode => $daysmode,
lengthunit => $lengthunit,
hardduedate => $hardduedate,
hardduedatecompare => $hardduedatecompare,
[% SET maxissueqty = all_rules.$c.$i.maxissueqty %]
[% SET maxonsiteissueqty = all_rules.$c.$i.maxonsiteissueqty %]
[% SET issuelength = all_rules.$c.$i.issuelength %]
- [% SET useDaysMode = all_rules.$c.$i.useDaysMode %]
+ [% SET daysmode = all_rules.$c.$i.daysmode %]
[% SET lengthunit = all_rules.$c.$i.lengthunit %]
[% SET hardduedate = all_rules.$c.$i.hardduedate %]
[% SET hardduedatecompare = all_rules.$c.$i.hardduedatecompare %]
[% SET article_requests = all_rules.$c.$i.article_requests %]
[% SET rentaldiscount = all_rules.$c.$i.rentaldiscount %]
- [% SET show_rule = maxissueqty || maxonsiteissueqty || issuelength || useDaysMode || lengthunit || hardduedate || hardduedatebefore || hardduedateexact || fine || chargeperiod || chargeperiod_charge_at || firstremind || overduefinescap || cap_fine_to_replacement_price || finedays || maxsuspensiondays || suspension_chargeperiod || renewalsallowed || renewalsallowed || norenewalbefore || auto_renew || no_auto_renewal_after || no_auto_renewal_after_hard_limit || reservesallowed || holds_per_day || holds_per_record || onshelfholds || opacitemholds || article_requests || article_requests %]
+ [% SET show_rule = maxissueqty || maxonsiteissueqty || issuelength || daysmode || lengthunit || hardduedate || hardduedatebefore || hardduedateexact || fine || chargeperiod || chargeperiod_charge_at || firstremind || overduefinescap || cap_fine_to_replacement_price || finedays || maxsuspensiondays || suspension_chargeperiod || renewalsallowed || renewalsallowed || norenewalbefore || auto_renew || no_auto_renewal_after || no_auto_renewal_after_hard_limit || reservesallowed || holds_per_day || holds_per_record || onshelfholds || opacitemholds || article_requests || article_requests %]
[% IF show_rule %]
[% SET row_count = row_count + 1 %]
<tr row_countd="row_[% row_count | html %]">
</td>
<td>[% issuelength | html %]</td>
<td>
- [% SWITCH useDaysMode %]
+ [% SWITCH daysmode %]
[% CASE 'Calendar' %]<span title="Use the calendar to skip days the library is closed">Calendar</span>
[% CASE 'Datedue' %]<span title="Use the calendar to push the due date to the next open day">Datedue</span>
[% CASE 'Days' %]<span title="Ignore the calendar">Days</span>
<td><input type="text" name="maxonsiteissueqty" id="maxonsiteissueqty" size="3" /></td>
<td><input type="text" name="issuelength" id="issuelength" size="3" /> </td>
<td>
- <select name="useDaysMode" id="useDaysMode">
+ <select name="daysmode" id="daysmode">
<option value="">Default</option>
<option value="Calendar">Calendar</option>
<option value="Datedue">Datedue</option>
my @results;
while ( my $issue = $sth->fetchrow_hashref() ) {
my $item = Koha::Items->find({ barcode => $issue->{barcode} });
- my $useDaysMode_value = Koha::CirculationRules->get_useDaysMode_effective_value(
+ my $daysmode = Koha::CirculationRules->get_effective_daysmode(
{
categorycode => $issue->{categorycode},
itemtype => $item->effective_itemtype,
}
);
- my $calendar = Koha::Calendar->new( branchcode => $issue->{'site'}, days_mode => $useDaysMode_value );
+ my $calendar = Koha::Calendar->new( branchcode => $issue->{'site'}, days_mode => $daysmode );
my $waiting_date = dt_from_string( $issue->{waitingdate}, 'sql' );
my $pickup_date = $waiting_date->clone->add( days => $pickupdelay );
$schema->storage->txn_rollback;
};
-subtest 'get_useDaysMode_effective_value' => sub {
+subtest 'get_effective_daysmode' => sub {
plan tests => 4;
$schema->storage->txn_begin;
my $item_2 = $builder->build_sample_item();
my $circ_rules =
- Koha::CirculationRules->search( { rule_name => 'useDaysMode' } )->delete;
+ Koha::CirculationRules->search( { rule_name => 'daysmode' } )->delete;
# Default value 'Datedue' at pref level
t::lib::Mocks::mock_preference( 'useDaysMode', 'Datedue' );
is(
- Koha::CirculationRules->get_useDaysMode_effective_value(
+ Koha::CirculationRules->get_effective_daysmode(
{
categorycode => undef,
itemtype => $item_1->effective_itemtype,
}
),
'Datedue',
- 'useDaysMode default to pref value if the rule does not exist'
+ 'daysmode default to pref value if the rule does not exist'
);
Koha::CirculationRules->set_rule(
branchcode => '*',
categorycode => '*',
itemtype => '*',
- rule_name => 'useDaysMode',
+ rule_name => 'daysmode',
rule_value => 'Calendar',
}
);
branchcode => '*',
categorycode => '*',
itemtype => $item_1->effective_itemtype,
- rule_name => 'useDaysMode',
+ rule_name => 'daysmode',
rule_value => 'Days',
}
);
is(
- Koha::CirculationRules->get_useDaysMode_effective_value(
+ Koha::CirculationRules->get_effective_daysmode(
{
categorycode => undef,
itemtype => $item_1->effective_itemtype,
}
),
'Days',
- "useDaysMode for item_1 is the specific rule"
+ "daysmode for item_1 is the specific rule"
);
is(
- Koha::CirculationRules->get_useDaysMode_effective_value(
+ Koha::CirculationRules->get_effective_daysmode(
{
categorycode => undef,
itemtype => $item_2->effective_itemtype,
}
),
'Calendar',
- "useDaysMode for item_2 is the one defined for the default circ rule"
+ "daysmode for item_2 is the one defined for the default circ rule"
);
Koha::CirculationRules->set_rule(
branchcode => '*',
categorycode => '*',
itemtype => $item_2->effective_itemtype,
- rule_name => 'useDaysMode',
+ rule_name => 'daysmode',
rule_value => '',
}
);
is(
- Koha::CirculationRules->get_useDaysMode_effective_value(
+ Koha::CirculationRules->get_effective_daysmode(
{
categorycode => undef,
itemtype => $item_2->effective_itemtype,
}
),
'Datedue',
- 'useDaysMode default to pref value if the rule exists but set to""'
+ 'daysmode default to pref value if the rule exists but set to""'
);
$schema->storage->txn_rollback;