<?php
// src//App/Entity/People.php
namespace App\Entity;
use DateTime;
use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;
use App\Entity\User as User;
use Doctrine\Common\Collections\ArrayCollection;
/**
* People
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Gedmo\Sortable\Entity\Repository\SortableRepository")
* @ORM\Entity(repositoryClass="App\Repository\PeopleRepository")
*/
class People
{
public function __construct()
{
$this->reports = new ArrayCollection();
}
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\OneToOne(targetEntity="User", inversedBy="person", cascade={"persist"})
* @ORM\JoinColumn(name="user_id", referencedColumnName="id")
*/
private $user;
/**
* @var string
*
* @ORM\Column(name="firstName", type="string", length=100)
*/
private $firstName;
/**
* @var string
*
* @ORM\Column(name="lastName", type="string", length=100)
*/
private $lastName;
/**
* @var string
* @Gedmo\Slug(fields={"firstName", "lastName"}, updatable=false)
* @ORM\Column(name="slug", type="string", length=255, unique=true)
*/
private $slug;
/**
* @var string
*
* @ORM\Column(name="roleTitle", type="string", length=255, nullable=true)
*/
private $roleTitle;
/**
* @var string
*
* @ORM\Column(name="team", type="string", length=255, nullable=true)
*/
private $team;
/**
* @ORM\ManyToOne(targetEntity="People", inversedBy="reports")
* @ORM\JoinColumn(name="manager_id", referencedColumnName="id")
**/
private $manager;
/**
* @ORM\OneToMany(targetEntity="People", mappedBy="manager")
*/
private $reports;
/**
* @var string
*
* @ORM\Column(name="email", type="string", length=255, nullable=true)
*/
private $email;
/**
* @var string
*
* @ORM\Column(name="phoneNumber", type="string", length=25, nullable=true)
*/
private $phoneNumber;
/**
* @var string
*
* @ORM\Column(name="phoneExtension", type="string", length=10, nullable=true)
*/
private $phoneExtension;
/**
* @var string
*
* @ORM\Column(name="mobileNumber", type="string", length=25, nullable=true)
*/
private $mobileNumber;
/**
* @var string
*
* @ORM\Column(name="faxNumber", type="string", length=25, nullable=true)
*/
private $faxNumber;
/**
* @var string
*
* @ORM\Column(name="skypeName", type="string", length=255, nullable=true)
*/
private $skypeName;
/**
* @var string
*
* @ORM\Column(name="twitterName", type="string", length=255, nullable=true)
*/
private $twitterName;
/**
* @var string
*
* @ORM\Column(name="facebookLink", type="string", length=255, nullable=true)
*/
private $facebookLink;
/**
* @var string
*
* @ORM\Column(name="linkedInLink", type="string", length=255, nullable=true)
*/
private $linkedInLink;
/**
* @var string
*
* @ORM\Column(name="googlePlusLink", type="string", length=255, nullable=true)
*/
private $googlePlusLink;
/**
* @var string
*
* @ORM\Column(name="specialities", type="text", nullable=true)
*/
private $specialities;
/**
* @var string
*
* @ORM\Column(name="bio", type="text", nullable=true)
*/
private $bio;
/**
* @var string
*
* @ORM\Column(name="interests", type="text", nullable=true)
*/
private $interests;
/**
* @var string
*
* @ORM\Column(name="recommendations", type="text", nullable=true)
*/
private $recommendations;
/**
* @var string
*
* @ORM\Column(name="companyQuote", type="text", nullable=true)
*/
private $companyQuote;
/**
* @var string
*
* @ORM\Column(name="thumbnailName", type="string", length=255, nullable=true)
*/
private $thumbnailName;
/**
* @var string
*
* @ORM\Column(name="photoName", type="string", length=255, nullable=true)
*/
private $photoName;
/**
* @var string
*
* @ORM\Column(name="backgroundName", type="string", length=255, nullable=true)
*/
private $backgroundName;
/**
* @var string
*
* @ORM\Column(name="crmID", type="string", length=255, nullable=true)
*/
private $crmID;
public function __toString()
{
return "{$this->getCrmID()}";
}
/**
* @var boolean
*
* @ORM\Column(name="publish", type="boolean", nullable=true)
*/
private $publish = false;
/**
* @Gedmo\SortablePosition
* @ORM\Column(name="position", type="integer")
*/
private $position;
/**
* @var DateTime $dateStarted
*
* @ORM\Column(name="datePublished", type="datetime", nullable=true)
*/
private $dateStarted;
/**
* @Gedmo\Timestampable(on="create")
* @ORM\Column(type="datetime")
*/
private $created;
/**
* @Gedmo\Timestampable(on="update")
* @ORM\Column(type="datetime")
*/
private $updated;
/**
* @var User $createdBy
*
* @Gedmo\Blameable(on="create")
* @ORM\ManyToOne(targetEntity="User")
* @ORM\JoinColumn(name="created_by", referencedColumnName="id")
*/
private $createdBy;
/**
* @var User $updatedBy
*
* @Gedmo\Blameable(on="update")
* @ORM\ManyToOne(targetEntity="User")
* @ORM\JoinColumn(name="updated_by", referencedColumnName="id")
*/
private $updatedBy;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set firstName
*
* @param string $firstName
* @return People
*/
public function setFirstName($firstName)
{
$this->firstName = $firstName;
return $this;
}
/**
* Get firstName
*
* @return string
*/
public function getFirstName()
{
return $this->firstName;
}
/**
* Set lastName
*
* @param string $lastName
* @return People
*/
public function setLastName($lastName)
{
$this->lastName = $lastName;
return $this;
}
/**
* Get lastName
*
* @return string
*/
public function getLastName()
{
return $this->lastName;
}
/**
* Set roleTitle
*
* @param string $roleTitle
* @return People
*/
public function setRoleTitle($roleTitle)
{
$this->roleTitle = $roleTitle;
return $this;
}
/**
* Get roleTitle
*
* @return string
*/
public function getRoleTitle()
{
return $this->roleTitle;
}
/**
* Set team
*
* @param string $team
* @return People
*/
public function setTeam($team)
{
$this->team = $team;
return $this;
}
/**
* Get team
*
* @return string
*/
public function getTeam()
{
return $this->team;
}
/**
* Set manager
*
* @param People $manager
* @return People
*/
public function setManager(People $manager = null)
{
$this->manager = $manager;
return $this;
}
/**
* Get manager
*
* @return People
*/
public function getManager()
{
return $this->manager;
}
/**
* Set email
*
* @param string $email
* @return People
*/
public function setEmail($email)
{
$this->email = $email;
return $this;
}
/**
* Get email
*
* @return string
*/
public function getEmail()
{
return $this->email;
}
/**
* Set phoneNumber
*
* @param string $phoneNumber
* @return People
*/
public function setPhoneNumber($phoneNumber)
{
$this->phoneNumber = $phoneNumber;
return $this;
}
/**
* Get phoneNumber
*
* @return string
*/
public function getPhoneNumber()
{
return $this->phoneNumber;
}
/**
* Set mobileNumber
*
* @param string $mobileNumber
* @return People
*/
public function setMobileNumber($mobileNumber)
{
$this->mobileNumber = $mobileNumber;
return $this;
}
/**
* Get mobileNumber
*
* @return string
*/
public function getMobileNumber()
{
return $this->mobileNumber;
}
/**
* Set faxNumber
*
* @param string $faxNumber
* @return People
*/
public function setFaxNumber($faxNumber)
{
$this->faxNumber = $faxNumber;
return $this;
}
/**
* Get faxNumber
*
* @return string
*/
public function getFaxNumber()
{
return $this->faxNumber;
}
/**
* Set skypeName
*
* @param string $skypeName
* @return People
*/
public function setSkypeName($skypeName)
{
$this->skypeName = $skypeName;
return $this;
}
/**
* Get skypeName
*
* @return string
*/
public function getSkypeName()
{
return $this->skypeName;
}
/**
* Set twitterName
*
* @param string $twitterName
* @return People
*/
public function setTwitterName($twitterName)
{
$this->twitterName = $twitterName;
return $this;
}
/**
* Get twitterName
*
* @return string
*/
public function getTwitterName()
{
return $this->twitterName;
}
/**
* Set facebookLink
*
* @param string $facebookLink
* @return People
*/
public function setFacebookLink($facebookLink)
{
$this->facebookLink = $facebookLink;
return $this;
}
/**
* Get facebookLink
*
* @return string
*/
public function getFacebookLink()
{
return $this->facebookLink;
}
/**
* Set linkedInLink
*
* @param string $linkedInLink
* @return People
*/
public function setLinkedInLink($linkedInLink)
{
$this->linkedInLink = $linkedInLink;
return $this;
}
/**
* Get linkedInLink
*
* @return string
*/
public function getLinkedInLink()
{
return $this->linkedInLink;
}
/**
* Set googlePlusLink
*
* @param string $googlePlusLink
* @return People
*/
public function setGooglePlusLink($googlePlusLink)
{
$this->googlePlusLink = $googlePlusLink;
return $this;
}
/**
* Get googlePlusLink
*
* @return string
*/
public function getGooglePlusLink()
{
return $this->googlePlusLink;
}
/**
* Set specialities
*
* @param string $specialities
* @return People
*/
public function setSpecialities($specialities)
{
$this->specialities = $specialities;
return $this;
}
/**
* Get specialities
*
* @return string
*/
public function getSpecialities()
{
return $this->specialities;
}
/**
* Set bio
*
* @param string $bio
* @return People
*/
public function setBio($bio)
{
$this->bio = $bio;
return $this;
}
/**
* Get bio
*
* @return string
*/
public function getBio()
{
return $this->bio;
}
/**
* Set interests
*
* @param string $interests
* @return People
*/
public function setInterests($interests)
{
$this->interests = $interests;
return $this;
}
/**
* Get recommendations
*
* @return string
*/
public function getRecommendations()
{
return $this->recommendations;
}
/**
* Set recommendations
*
* @param string $recommendations
* @return People
*/
public function setRecommendations($recommendations)
{
$this->recommendations = $recommendations;
return $this;
}
/**
* Get interests
*
* @return string
*/
public function getInterests()
{
return $this->interests;
}
/**
* Set thumbnailName
*
* @param string $thumbnailName
* @return People
*/
public function setThumbnailName($thumbnailName)
{
$this->thumbnailName = $thumbnailName;
return $this;
}
/**
* Get thumbnailName
*
* @return string
*/
public function getThumbnailName()
{
return $this->thumbnailName;
}
/**
* Set photoName
*
* @param string $photoName
* @return People
*/
public function setPhotoName($photoName)
{
$this->photoName = $photoName;
return $this;
}
/**
* Get photoName
*
* @return string
*/
public function getPhotoName()
{
return $this->photoName;
}
/**
* Set backgroundName
*
* @param string $backgroundName
* @return People
*/
public function setBackgroundName($backgroundName)
{
$this->backgroundName = $backgroundName;
return $this;
}
/**
* Get backgroundName
*
* @return string
*/
public function getBackgroundName()
{
return $this->backgroundName;
}
public function setSlug($slug)
{
$this->slug = $slug;
}
/**
* Get slug
*
* @return string
*/
public function getSlug()
{
return $this->slug;
}
/**
* Set created
*
* @param DateTime $created
* @return People
*/
public function setCreated($created)
{
$this->created = $created;
return $this;
}
/**
* Get created
*
* @return DateTime
*/
public function getCreated()
{
return $this->created;
}
/**
* Set updated
*
* @param DateTime $updated
* @return People
*/
public function setUpdated($updated)
{
$this->updated = $updated;
return $this;
}
/**
* Get updated
*
* @return DateTime
*/
public function getUpdated()
{
return $this->updated;
}
/**
* Get createdBy
*
* @return \App\Entity\User
*/
public function getCreatedBy()
{
return $this->createdBy;
}
/**
* Get updatedBy
*
* @return \App\Entity\User
*/
public function getUpdatedBy()
{
return $this->updatedBy;
}
/**
* Set createdBy
*
* @param \App\Entity\User $createdBy
*
* @return People
*/
public function setCreatedBy(\App\Entity\User $createdBy = null)
{
$this->createdBy = $createdBy;
return $this;
}
/**
* Set updatedBy
*
* @param \App\Entity\User $updatedBy
*
* @return People
*/
public function setUpdatedBy(\App\Entity\User $updatedBy = null)
{
$this->updatedBy = $updatedBy;
return $this;
}
function getFullName()
{
return sprintf('%s %s', $this->firstName, $this->lastName);
}
/**
* Set user
*
* @param \App\Entity\User $user
*
* @return People
*/
public function setUser(\App\Entity\User $user = null)
{
$this->user = $user;
return $this;
}
/**
* Get user
*
* @return \App\Entity\User
*/
public function getUser()
{
return $this->user;
}
/**
* Add reports
*
* @param People $reports
* @return People
*/
public function addReport(People $reports)
{
$this->reports[] = $reports;
return $this;
}
/**
* Remove reports
*
* @param People $reports
*/
public function removeReport(People $reports)
{
$this->reports->removeElement($reports);
}
/**
* Get reports
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getReports()
{
return $this->reports;
}
/**
* Set crmID
*
* @param string $crmID
* @return People
*/
public function setCrmID($crmID)
{
$this->crmID = $crmID;
return $this;
}
/**
* Get crmID
*
* @return string
*/
public function getCrmID()
{
return $this->crmID;
}
/**
* Set publish
*
* @param boolean $publish
* @return People
*/
public function setPublish($publish)
{
$this->publish = $publish;
return $this;
}
/**
* Get publish
*
* @return boolean
*/
public function getPublish()
{
return $this->publish;
}
public function setPosition($position)
{
$this->position = $position;
}
public function getPosition()
{
return $this->position;
}
/**
* Set companyQuote
*
* @param string $companyQuote
* @return People
*/
public function setCompanyQuote($companyQuote)
{
$this->companyQuote = $companyQuote;
return $this;
}
/**
* Get companyQuote
*
* @return string
*/
public function getCompanyQuote()
{
return $this->companyQuote;
}
/**
* Set dateStarted
*
* @param DateTime $dateStarted
* @return People
*/
public function setDateStarted($dateStarted)
{
$this->dateStarted = $dateStarted;
return $this;
}
/**
* Get dateStarted
*
* @return datetime
*/
public function getDateStarted()
{
return $this->dateStarted;
}
/**
* Set phoneExtension
*
* @param string $phoneExtension
* @return People
*/
public function setPhoneExtension($phoneExtension)
{
$this->phoneExtension = $phoneExtension;
return $this;
}
/**
* Get phoneExtension
*
* @return string
*/
public function getPhoneExtension()
{
return $this->phoneExtension;
}
}