Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0392187299 | ||
|
|
edcc65df3e | ||
|
|
5dde52a309 | ||
|
|
5f223fb50d | ||
|
|
2eaf80b1bd | ||
|
|
b5d601aec0 |
@@ -1 +1 @@
|
||||
9.2.0
|
||||
9.3.2
|
||||
|
||||
@@ -164,6 +164,10 @@ class Backend
|
||||
);
|
||||
}
|
||||
$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
|
||||
if (preg_match("/^(add|save|delete|remove|move|up|down|push_live)$/", $this->action)) {
|
||||
|
||||
@@ -452,6 +452,31 @@ class DateTime
|
||||
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__
|
||||
|
||||
@@ -309,7 +309,7 @@ class IO
|
||||
// basic vars
|
||||
// the dbh handler, if disconnected by command is null, bool:false on error,
|
||||
/** @var \PgSql\Connection|false|null */
|
||||
private \PgSql\Connection|false|null $dbh;
|
||||
private \PgSql\Connection|false|null $dbh = null;
|
||||
/** @var bool DB_DEBUG ... (if set prints out debug msgs) */
|
||||
private bool $db_debug = false;
|
||||
/** @var string the DB connected to */
|
||||
@@ -814,13 +814,13 @@ class IO
|
||||
switch ($id) {
|
||||
case 'DB_ERROR':
|
||||
$this->log->error(
|
||||
$debug_id . ' :' . $prefix . $error_string,
|
||||
$prefix . $error_string,
|
||||
$context
|
||||
);
|
||||
break;
|
||||
case 'DB_WARNING':
|
||||
$this->log->warning(
|
||||
$debug_id . ' :' . $prefix . $error_string,
|
||||
$prefix . $error_string,
|
||||
$context
|
||||
);
|
||||
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
|
||||
*
|
||||
@@ -780,6 +821,29 @@ final class CoreLibsCombinedDateTimeTest extends TestCase
|
||||
$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__
|
||||
|
||||
Reference in New Issue
Block a user