Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 5dde52a309 | |||
| 5f223fb50d | |||
| 2eaf80b1bd | |||
| b5d601aec0 |
@@ -1 +1 @@
|
|||||||
9.2.0
|
9.3.1
|
||||||
|
|||||||
@@ -164,6 +164,10 @@ class Backend
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
$this->default_acl = $set_default_acl_level ?? DEFAULT_ACL_LEVEL;
|
$this->default_acl = $set_default_acl_level ?? DEFAULT_ACL_LEVEL;
|
||||||
|
// if negative or larger than 100, reset to 0
|
||||||
|
if ($this->default_acl < 0 || $this->default_acl > 100) {
|
||||||
|
$this->default_acl = 0;
|
||||||
|
}
|
||||||
|
|
||||||
// queue key
|
// queue key
|
||||||
if (preg_match("/^(add|save|delete|remove|move|up|down|push_live)$/", $this->action)) {
|
if (preg_match("/^(add|save|delete|remove|move|up|down|push_live)$/", $this->action)) {
|
||||||
|
|||||||
@@ -452,6 +452,31 @@ class DateTime
|
|||||||
return $days;
|
return $days;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* check if a weekend day (sat/sun) is in the given date range
|
||||||
|
* Can have time too, but is not needed
|
||||||
|
*
|
||||||
|
* @param string $start_date Y-m-d
|
||||||
|
* @param string $end_date Y-m-d
|
||||||
|
* @return bool True for has weekend, False for has not
|
||||||
|
*/
|
||||||
|
public static function dateRangeHasWeekend(
|
||||||
|
string $start_date,
|
||||||
|
string $end_date,
|
||||||
|
): bool {
|
||||||
|
$dd_start = new \DateTime($start_date);
|
||||||
|
$dd_end = new \DateTime($end_date);
|
||||||
|
if (
|
||||||
|
// starts with a weekend
|
||||||
|
$dd_start->format('N') >= 6 ||
|
||||||
|
// start day plus diff will be 6 and so fall into a weekend
|
||||||
|
((int)$dd_start->format('w') + $dd_start->diff($dd_end)->days) >= 6
|
||||||
|
) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// __END__
|
// __END__
|
||||||
|
|||||||
@@ -814,13 +814,13 @@ class IO
|
|||||||
switch ($id) {
|
switch ($id) {
|
||||||
case 'DB_ERROR':
|
case 'DB_ERROR':
|
||||||
$this->log->error(
|
$this->log->error(
|
||||||
$debug_id . ' :' . $prefix . $error_string,
|
$prefix . $error_string,
|
||||||
$context
|
$context
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case 'DB_WARNING':
|
case 'DB_WARNING':
|
||||||
$this->log->warning(
|
$this->log->warning(
|
||||||
$debug_id . ' :' . $prefix . $error_string,
|
$prefix . $error_string,
|
||||||
$context
|
$context
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -458,6 +458,47 @@ final class CoreLibsCombinedDateTimeTest extends TestCase
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Undocumented function
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function dateRangeHasWeekendProvider(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'no weekend' => [
|
||||||
|
'2023-07-03',
|
||||||
|
'2023-07-04',
|
||||||
|
false
|
||||||
|
],
|
||||||
|
'start weekend sat' => [
|
||||||
|
'2023-07-01',
|
||||||
|
'2023-07-04',
|
||||||
|
true
|
||||||
|
],
|
||||||
|
'start weekend sun' => [
|
||||||
|
'2023-07-02',
|
||||||
|
'2023-07-04',
|
||||||
|
true
|
||||||
|
],
|
||||||
|
'end weekend sat' => [
|
||||||
|
'2023-07-03',
|
||||||
|
'2023-07-08',
|
||||||
|
true
|
||||||
|
],
|
||||||
|
'end weekend sun' => [
|
||||||
|
'2023-07-03',
|
||||||
|
'2023-07-09',
|
||||||
|
true
|
||||||
|
],
|
||||||
|
'long period > 6 days' => [
|
||||||
|
'2023-07-03',
|
||||||
|
'2023-07-27',
|
||||||
|
true
|
||||||
|
]
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* date string convert test
|
* date string convert test
|
||||||
*
|
*
|
||||||
@@ -780,6 +821,29 @@ final class CoreLibsCombinedDateTimeTest extends TestCase
|
|||||||
$output
|
$output
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Undocumented function
|
||||||
|
*
|
||||||
|
* @covers ::dateRangeHasWeekend
|
||||||
|
* @dataProvider dateRangeHasWeekendProvider
|
||||||
|
* @testdox dateRangeHasWeekend $start_date and $end_date are expected weekend $expected [$_dataName]
|
||||||
|
*
|
||||||
|
* @param string $start_date
|
||||||
|
* @param string $end_date
|
||||||
|
* @param bool $expected
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function testDateRangeHasWeekend(
|
||||||
|
string $start_date,
|
||||||
|
string $end_date,
|
||||||
|
bool $expected
|
||||||
|
): void {
|
||||||
|
$this->assertEquals(
|
||||||
|
$expected,
|
||||||
|
\CoreLibs\Combined\DateTime::dateRangeHasWeekend($start_date, $end_date)
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// __END__
|
// __END__
|
||||||
|
|||||||
Reference in New Issue
Block a user