Commit f3a456f8 authored by Côme Chilliet's avatar Côme Chilliet
Browse files

:ambulance: fix(simpleplugin) Improve empty Date handling

issue #6152
Showing with 11 additions and 3 deletions
+11 -3
......@@ -64,7 +64,7 @@ class DateAttribute extends Attribute
function inputValue ($value)
{
if (
(($value === '') && !$this->isRequired()) ||
($value === '') ||
($this->isTemplate() && preg_match('/%/', $value))
) {
return $value;
......@@ -75,7 +75,7 @@ class DateAttribute extends Attribute
function getValue ()
{
if ($this->value === "" && !$this->isRequired()) {
if ($this->value === '') {
return $this->value;
} else {
try {
......@@ -112,7 +112,7 @@ class DateAttribute extends Attribute
function computeLdapValue ()
{
if ($this->value === "" && !$this->isRequired()) {
if ($this->value === '') {
return $this->value;
} elseif (!($this->value instanceof DateTime)) {
try {
......@@ -348,6 +348,11 @@ class DateTimeAttribute extends CompositeAttribute
*/
class GeneralizedTimeDisplayAttribute extends GeneralizedTimeDateAttribute
{
function __construct (string $label, string $description, string $ldapName, bool $required, $defaultValue = '', $min = NULL, $max = NULL, string $acl = '')
{
parent::__construct($label, $description, $ldapName, $required, $defaultValue, $min, $max, $acl);
}
function getValue ()
{
return $this->computeLdapValue();
......@@ -355,6 +360,9 @@ class GeneralizedTimeDisplayAttribute extends GeneralizedTimeDateAttribute
function renderFormInput (): string
{
if (empty($this->value)) {
return '';
}
$date = $this->getDateValue();
$date->setTimezone(timezone::getDefaultTimeZone());
return htmlescape($date->format('Y-m-d, H:i:s'));
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment