src/Entity/SchoolTeacherMapping.php line 9

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use Doctrine\Common\Collections\ArrayCollection;
  4. use Doctrine\Common\Collections\Collection;
  5. use Doctrine\ORM\Mapping as ORM;
  6. use App\Entity\SchoolRole;
  7. class SchoolTeacherMapping {
  8.     /**
  9.      * @var integer
  10.      */
  11.     private $id;
  12.     /**
  13.      * @var \App\Entity\School
  14.      */
  15.     private $school;
  16.     /**
  17.      * @var \App\Entity\User
  18.      */
  19.     private $user;
  20.     /**
  21.      * @var \Doctrine\Common\Collections\Collection
  22.      */
  23.     private $roles;
  24.     /**
  25.      * @var boolean
  26.      */
  27.     private $isActive true;
  28.     /**
  29.      * @var \DateTime
  30.      */
  31.     private $createdAt;
  32.     /**
  33.      * Constructor
  34.      */
  35.     public function __construct() {
  36.         $this->roles = new \Doctrine\Common\Collections\ArrayCollection();
  37.     }
  38.     /**
  39.      * Get id
  40.      *
  41.      * @return integer
  42.      */
  43.     public function getId() {
  44.         return $this->id;
  45.     }
  46.     /**
  47.      * Set isActive
  48.      *
  49.      * @param boolean $isActive
  50.      *
  51.      * @return SchoolTeacherMapping
  52.      */
  53.     public function setIsActive($isActive) {
  54.         $this->isActive $isActive;
  55.         return $this;
  56.     }
  57.     /**
  58.      * Get isActive
  59.      *
  60.      * @return boolean
  61.      */
  62.     public function getIsActive() {
  63.         return $this->isActive;
  64.     }
  65.     /**
  66.      * Set createdAt
  67.      *
  68.      * @param \DateTime $createdAt
  69.      *
  70.      * @return SchoolTeacherMapping
  71.      */
  72.     public function setCreatedAt($createdAt) {
  73.         $this->createdAt $createdAt;
  74.         return $this;
  75.     }
  76.     /**
  77.      * Get createdAt
  78.      *
  79.      * @return \DateTime
  80.      */
  81.     public function getCreatedAt() {
  82.         return $this->createdAt;
  83.     }
  84.     /**
  85.      * Set school
  86.      *
  87.      * @param \App\Entity\School $school
  88.      *
  89.      * @return SchoolTeacherMapping
  90.      */
  91.     public function setSchool(\App\Entity\School $school null) {
  92.         $this->school $school;
  93.         return $this;
  94.     }
  95.     /**
  96.      * Get school
  97.      *
  98.      * @return \App\Entity\School
  99.      */
  100.     public function getSchool() {
  101.         return $this->school;
  102.     }
  103.     /**
  104.      * Set user.
  105.      *
  106.      * @param \App\Entity\User|null $user
  107.      *
  108.      * @return SchoolTeacherMapping
  109.      */
  110.     public function setUser(\App\Entity\User $user null) {
  111.         $this->user $user;
  112.         return $this;
  113.     }
  114.     /**
  115.      * Get user.
  116.      *
  117.      * @return \App\Entity\User|null
  118.      */
  119.     public function getUser() {
  120.         return $this->user;
  121.     }
  122.     /**
  123.      * Add role.
  124.      *
  125.      * @param \App\Entity\SchoolRole $role
  126.      *
  127.      * @return SchoolTeacherMapping
  128.      */
  129.     public function addRole(\App\Entity\SchoolRole $role) {
  130.         $this->roles[] = $role;
  131.         return $this;
  132.     }
  133.     /**
  134.      * Remove role.
  135.      *
  136.      * @param \App\Entity\SchoolRole $role
  137.      *
  138.      * @return boolean TRUE if this collection contained the specified element, FALSE otherwise.
  139.      */
  140.     public function removeRole(\App\Entity\SchoolRole $role) {
  141.         return $this->roles->removeElement($role);
  142.     }
  143.     /**
  144.      * Get roles.
  145.      *
  146.      * @return \Doctrine\Common\Collections\Collection
  147.      */
  148.     public function getRoles() {
  149.         return $this->roles;
  150.     }
  151.     public function hasRoleBO() {
  152.         /* @var $role SchoolRole */
  153.         foreach ($this->roles as $role) {
  154.             if ($role->getId() == 2) {
  155.                 return true;
  156.             }
  157.         }
  158.         return false;
  159.     }
  160.     public function getRoleShortNames() {
  161.         $text '';
  162.         if (count($this->roles) > 0) {
  163.             $rolesText '';
  164.             /* @var $role SchoolRole */
  165.             foreach ($this->roles as $role) {
  166.                 $rolesText .= $role->getShortName() . ', ';
  167.             }
  168.             $shortNames substr($rolesText0, -2);
  169.             $text " ($shortNames)";
  170.         }
  171.         return $text;
  172.     }
  173.     public function getRoleDescriptions() {
  174.         $text '';
  175.         /* @var $role SchoolRole */
  176.         foreach ($this->roles as $role) {
  177.             $text .= $role->getDescription() . ', ';
  178.         }
  179.         if (strlen($text) >= 2) {
  180.             return substr($text0, -2);
  181.         }
  182.         return $text;
  183.     }
  184.     public function __toString() {
  185.         $data = array();
  186.         $data['id'] = $this->id;
  187.         $data['user'] = $this->user->getName();
  188.         $data['roles'] = $this->getRoleShortNames();
  189.         return implode(", "$data);
  190.     }
  191. }