<?php declare(strict_types=1);
/*
- * this file is part of the rapsys packbundle package.
+ * This file is part of the Rapsys AirBundle package.
*
- * (c) raphaël gertz <symfony@rapsys.eu>
+ * (c) Raphaël Gertz <symfony@rapsys.eu>
*
- * for the full copyright and license information, please view the license
+ * For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Doctrine\Common\Collections\Collection;
use Doctrine\Common\Collections\ArrayCollection;
+use Rapsys\UserBundle\Entity\Civility;
use Rapsys\UserBundle\Entity\User as BaseUser;
+/**
+ * {@inheritdoc}
+ */
class User extends BaseUser {
/**
- * @var ?string
+ * City
*/
- private ?string $city;
+ private ?string $city = null;
/**
- * @var ?string
+ * Country
*/
- private ?string $phone;
+ private ?Country $country = null;
/**
- * @var Country
+ * Phone
*/
- private ?Country $country;
+ private ?string $phone = null;
/**
- * @var ?string
+ * Pseudonym
*/
- private ?string $pseudonym;
+ private ?string $pseudonym = null;
/**
- * @var ?string
+ * Zipcode
*/
- private ?string $zipcode;
+ private ?string $zipcode = null;
/**
- * @var \Doctrine\Common\Collections\Collection
+ * Applications collection
*/
private Collection $applications;
/**
- * @var \Doctrine\Common\Collections\Collection
+ * Dances collection
*/
private Collection $dances;
/**
- * @var \Doctrine\Common\Collections\Collection
+ * Locations collection
*/
private Collection $locations;
/**
- * @var \Doctrine\Common\Collections\Collection
+ * Snippets collection
*/
private Collection $snippets;
/**
- * @var \Doctrine\Common\Collections\Collection
+ * Subscribers collection
*/
private Collection $subscribers;
/**
- * @var \Doctrine\Common\Collections\Collection
+ * Subscriptions collection
*/
private Collection $subscriptions;
/**
- * @var \Doctrine\Common\Collections\Collection
+ * Google tokens collection
*/
private Collection $googleTokens;
* Constructor
*
* @param string $mail The user mail
- */
- public function __construct(string $mail) {
+ * @param string $password The user password
+ * @param ?Civility $civility The user civility
+ * @param ?string $forename The user forename
+ * @param ?string $surname The user surname
+ * @param bool $active The user active
+ * @param bool $enable The user enable
+ */
+ public function __construct(protected string $mail, protected string $password, protected ?Civility $civility = null, protected ?string $forename = null, protected ?string $surname = null, protected bool $active = false, protected bool $enable = true) {
//Call parent constructor
- parent::__construct($mail);
-
- //Set defaults
- $this->city = null;
- $this->country = null;
- $this->phone = null;
- $this->pseudonym = null;
- $this->zipcode = null;
+ parent::__construct($this->mail, $this->password, $this->civility, $this->forename, $this->surname, $this->active, $this->enable);
//Set collections
$this->applications = new ArrayCollection();