2 Commits
Author SHA1 Message Date
Dave Mc Nicoll c0b750d63c - WIP on attributes 2023-01-26 18:47:06 +00:00
mcndave c0f54ef12f - WIP on attributes ; on testing phase 2023-01-26 13:35:06 +00:00
2 changed files with 22 additions and 52 deletions

No files matched your search

+20 -48
View File
@@ -4,88 +4,60 @@ namespace Ulmus\User\Entity;
use Ulmus\Entity\Field\Datetime;
use Ulmus\Attribute\Property\Field;
class User {
/**
* @Id('readonly' => true)
*/
#[Field\Id(readonly: true)]
public int $id;
/**
* @Field("length" => 35, "name" => "first_name")
*/
#[Field(length: 35, name: "first_name")]
public ? string $firstName;
/**
* @Field("length" => 35, "name" => "last_name")
*/
#[Field(length: 35, name: "last_name")]
public ? string $lastName;
/**
* @Field("length" => 255)
*/
#[Field(length: 150)]
public string $email;
/**
* @Field("length" => 150)
*/
#[Field(length: 150)]
public ? string $address;
/**
* @Field("length" => 15, 'name' => "zip_code")
*/
#[Field(length: 15, name: "zip_code")]
public ? string $zipCode;
/**
* @Field("length" => 45)
*/
#[Field(length: 45)]
public ? string $province;
/**
* @Field("length" => 3)
*/
#[Field(length: 3)]
public ? string $country;
/**
* @Field("length" => 15)
*/
#[Field(length: 15)]
public ? string $phone;
/**
* @Field("length" => 15)
*/
#[Field(length: 15)]
public ? string $ext;
/**
* @Field("length" => 15)
*/
#[Field(length: 15)]
public ? string $mobile;
/**
* @Field("length" => 255)
*/
#[Field(length: 255)]
public ? string $username;
/**
* @Field
*/
#[Field]
public string $password;
/**
* @UpdatedAt('readonly' => true, 'name' => "updated_at")
*/
#[Field\UpdatedAt(readonly: true, name: "updated_at")]
public ? Datetime $updatedAt;
/**
* @CreatedAt('readonly' => true, 'name' => "created_at")
*/
#[Field\CreatedAt(readonly: true, name: "created_at")]
public Datetime $createdAt;
public bool $logged = false;
public function __toString() : string
{
return "{$this->firstName} {$this->lastName}";
return $this->fullname();
}
public function setPassword($password) : self
@@ -95,9 +67,9 @@ class User {
return $this->hashPassword();
}
public function hashPassword(? string $password = null) : self
public function hashPassword() : self
{
$this->password = password_hash($password ?: $this->password, PASSWORD_DEFAULT);
$this->password = password_hash($this->password, PASSWORD_DEFAULT);
return $this;
}
+2 -4
View File
@@ -35,8 +35,8 @@ class Authenticate {
public function rememberMe(\Ulmus\Repository $repository) : ? User
{
$logUser = function(? int $id) use ($repository) {
if ( $id === null || null === ( $user = $repository->loadFromPk($id) ) ) {
$logUser = function(int $id) use ($repository) {
if ( null === ( $user = $repository->loadFromPk($id) ) ) {
throw new \Exception("User not found.");
}
@@ -123,9 +123,7 @@ class Authenticate {
$this->cookie->delete('user.id');
}
if (isset($this->user)) {
$this->user->logged = false;
}
return $this;
}