diff --git a/src/Method/FormContext.php b/src/Method/FormContext.php index 3e9075e..c9364e3 100644 --- a/src/Method/FormContext.php +++ b/src/Method/FormContext.php @@ -176,7 +176,12 @@ class FormContext implements FormContextInterface public function pushMessage(FormMessage $message) : void { - $this->formContextMessages[] = $message; + if ($message->isError() /* && $message->isSuccess() @TODO next major v. */ ) { + $this->formContextMessages = array_merge([ $message ], $this->formContextMessages); + } + else { + $this->formContextMessages[] = $message; + } } public function messages() : array @@ -184,10 +189,8 @@ class FormContext implements FormContextInterface return $this->formContextMessages; } - protected function fillValues() : void { - foreach($this->formContextValues as $property => $value) { if ($this->canWriteProperty($property)) { $this->$property = $this->castValue($property, $value); diff --git a/src/Method/FormContextInterface.php b/src/Method/FormContextInterface.php index f5cc575..6237ad2 100644 --- a/src/Method/FormContextInterface.php +++ b/src/Method/FormContextInterface.php @@ -12,4 +12,6 @@ interface FormContextInterface { public function requestMethod() : string; public function getRequest() : ServerRequestInterface; + + public function getExecutionStatus() : mixed; } \ No newline at end of file diff --git a/src/Method/FormMessage.php b/src/Method/FormMessage.php index f2066b7..b8e3575 100644 --- a/src/Method/FormMessage.php +++ b/src/Method/FormMessage.php @@ -2,6 +2,7 @@ namespace Picea\Ui\Method; -interface FormMessage { +interface FormMessage { public function isError() : bool; + # public function isSuccess() : bool; # Should be added in next major version }