123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- <?php
-
- namespace Doctrine\Tests\Models\CMS;
-
- use Doctrine\Common\Collections\ArrayCollection;
-
- /**
- * @Entity
- * @Table(name="cms_users")
- * @NamedQueries({
- * @NamedQuery(name="all", query="SELECT u FROM __CLASS__ u")
- * })
- */
- class CmsUser
- {
- /**
- * @Id @Column(type="integer")
- * @GeneratedValue
- */
- public $id;
- /**
- * @Column(type="string", length=50)
- */
- public $status;
- /**
- * @Column(type="string", length=255, unique=true)
- */
- public $username;
- /**
- * @Column(type="string", length=255)
- */
- public $name;
- /**
- * @OneToMany(targetEntity="CmsPhonenumber", mappedBy="user", cascade={"persist", "remove", "merge"}, orphanRemoval=true)
- */
- public $phonenumbers;
- /**
- * @OneToMany(targetEntity="CmsArticle", mappedBy="user")
- */
- public $articles;
- /**
- * @OneToOne(targetEntity="CmsAddress", mappedBy="user", cascade={"persist"}, orphanRemoval=true)
- */
- public $address;
- /**
- * @ManyToMany(targetEntity="CmsGroup", inversedBy="users", cascade={"persist", "merge"})
- * @JoinTable(name="cms_users_groups",
- * joinColumns={@JoinColumn(name="user_id", referencedColumnName="id")},
- * inverseJoinColumns={@JoinColumn(name="group_id", referencedColumnName="id")}
- * )
- */
- public $groups;
-
- public function __construct() {
- $this->phonenumbers = new ArrayCollection;
- $this->articles = new ArrayCollection;
- $this->groups = new ArrayCollection;
- }
-
- public function getId() {
- return $this->id;
- }
-
- public function getStatus() {
- return $this->status;
- }
-
- public function getUsername() {
- return $this->username;
- }
-
- public function getName() {
- return $this->name;
- }
-
- /**
- * Adds a phonenumber to the user.
- *
- * @param CmsPhonenumber $phone
- */
- public function addPhonenumber(CmsPhonenumber $phone) {
- $this->phonenumbers[] = $phone;
- $phone->setUser($this);
- }
-
- public function getPhonenumbers() {
- return $this->phonenumbers;
- }
-
- public function addArticle(CmsArticle $article) {
- $this->articles[] = $article;
- $article->setAuthor($this);
- }
-
- public function addGroup(CmsGroup $group) {
- $this->groups[] = $group;
- $group->addUser($this);
- }
-
- public function getGroups() {
- return $this->groups;
- }
-
- public function removePhonenumber($index) {
- if (isset($this->phonenumbers[$index])) {
- $ph = $this->phonenumbers[$index];
- unset($this->phonenumbers[$index]);
- $ph->user = null;
- return true;
- }
- return false;
- }
-
- public function getAddress() { return $this->address; }
-
- public function setAddress(CmsAddress $address) {
- if ($this->address !== $address) {
- $this->address = $address;
- $address->setUser($this);
- }
- }
- }
|