Added echoareas and fileareas

This commit is contained in:
Deon George
2021-08-11 23:45:30 +10:00
parent c7388c2db6
commit eb0405f019
19 changed files with 773 additions and 48 deletions

View File

@@ -12,6 +12,7 @@ use Illuminate\Validation\Validator as ValidatorResult;
use App\Classes\FTN as FTNBase;
use App\Models\{Address,Domain};
use App\Rules\TwoByteInteger;
use App\Traits\EncodeUTF8;
/**
* Class Message
@@ -21,6 +22,8 @@ use App\Rules\TwoByteInteger;
*/
class Message extends FTNBase
{
use EncodeUTF8;
private const cast_utf8 = [
'message',
'message_src',
@@ -342,43 +345,7 @@ class Message extends FTNBase
*/
public function __serialize(): array
{
$values = [];
$properties = (new \ReflectionClass($this))->getProperties();
$class = get_class($this);
foreach ($properties as $property) {
// Dont serialize the validation error
if ($property->name == 'errors')
continue;
if ($property->isStatic()) {
continue;
}
$property->setAccessible(true);
if (! $property->isInitialized($this)) {
continue;
}
$name = $property->getName();
$encode = in_array($name,self::cast_utf8);
if ($property->isPrivate()) {
$name = "\0{$class}\0{$name}";
} elseif ($property->isProtected()) {
$name = "\0*\0{$name}";
}
$property->setAccessible(true);
$value = $property->getValue($this);
$values[$name] = $encode ? utf8_encode($value) : $value;
}
return $values;
return $this->encode();
}
/**