vendor/uvdesk/core-framework/Entity/UserInstance.php line 13

Open in your IDE?
  1. <?php
  2. namespace Webkul\UVDesk\CoreFrameworkBundle\Entity;
  3. use Doctrine\ORM\Mapping as ORM;
  4. /**
  5. * UserInstance
  6. * @ORM\Entity(repositoryClass=null)
  7. * @ORM\HasLifecycleCallbacks()
  8. * @ORM\Table(name="uv_user_instance")
  9. */
  10. class UserInstance
  11. {
  12. /**
  13. * @var integer
  14. * @ORM\Id()
  15. * @ORM\Column(type="integer")
  16. * @ORM\GeneratedValue(strategy="AUTO")
  17. */
  18. private $id;
  19. /**
  20. * @var string
  21. * @ORM\Column(type="string", length=191)
  22. */
  23. private $source;
  24. /**
  25. * @var string
  26. * @ORM\Column(type="string", length=191, nullable=true)
  27. */
  28. private $skypeId;
  29. /**
  30. * @var string
  31. * @ORM\Column(type="string", length=191, nullable=true)
  32. */
  33. private $contactNumber;
  34. /**
  35. * @var string
  36. * @ORM\Column(type="string", length=191, nullable=true)
  37. */
  38. private $designation;
  39. /**
  40. * @var string
  41. * @ORM\Column(type="text", nullable=true)
  42. */
  43. private $signature;
  44. /**
  45. * @var string
  46. * @ORM\Column(type="text", nullable=true)
  47. */
  48. private $profileImagePath;
  49. /**
  50. * @var \DateTime
  51. * @ORM\Column(type="datetime")
  52. */
  53. private $createdAt;
  54. /**
  55. * @var \DateTime
  56. * @ORM\Column(type="datetime")
  57. */
  58. private $updatedAt;
  59. /**
  60. * @var \DateTime
  61. * @ORM\Column(type="datetime", nullable=true)
  62. */
  63. private $lastLogin;
  64. /**
  65. * @var boolean
  66. * @ORM\Column(type="boolean", options={"default": false})
  67. */
  68. private $isActive = false;
  69. /**
  70. * @var boolean
  71. * @ORM\Column(type="boolean", options={"default": false})
  72. */
  73. private $isOnline = false;
  74. /**
  75. * @var boolean
  76. * @ORM\Column(type="boolean", options={"default": false})
  77. */
  78. private $isVerified = false;
  79. /**
  80. * @var boolean
  81. * @ORM\Column(type="boolean", options={"default": false})
  82. */
  83. private $isStarred = false;
  84. /**
  85. * @var string
  86. * @ORM\Column(type="string", length=32, nullable=true)
  87. */
  88. private $ticketAccessLevel;
  89. /**
  90. * @var integer
  91. */
  92. private $defaultFiltering;
  93. /**
  94. * @var \Doctrine\Common\Collections\Collection
  95. * @ORM\OneToMany(targetEntity="EmailTemplates", mappedBy="user", cascade={"remove"}, orphanRemoval=true)
  96. */
  97. private $userSavedReplies;
  98. /**
  99. * @var \Doctrine\Common\Collections\Collection
  100. * @ORM\OneToMany(targetEntity="SavedFilters", mappedBy="user", cascade={"remove"}, orphanRemoval=true)
  101. */
  102. private $userSavedFilters;
  103. /**
  104. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  105. * @ORM\ManyToOne(targetEntity="User", inversedBy="userInstance")
  106. * @ORM\JoinColumn(name="user_id", referencedColumnName="id", onDelete="CASCADE")
  107. */
  108. private $user;
  109. /**
  110. * @var \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole
  111. * @ORM\ManyToOne(targetEntity="SupportRole")
  112. * @ORM\JoinColumn(name="supportRole_id", referencedColumnName="id", onDelete="CASCADE")
  113. */
  114. private $supportRole;
  115. /**
  116. * @var \Doctrine\Common\Collections\Collection
  117. * @ORM\ManyToMany(targetEntity="SupportPrivilege", inversedBy="users")
  118. * @ORM\JoinTable(name="uv_user_support_privileges",
  119. * joinColumns={@ORM\JoinColumn(name="userInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  120. * inverseJoinColumns={@ORM\JoinColumn(name="supportPrivilegeId", referencedColumnName="id", onDelete="CASCADE")}
  121. * )
  122. */
  123. private $supportPrivileges;
  124. /**
  125. * @var \Doctrine\Common\Collections\Collection
  126. * @ORM\ManyToMany(targetEntity="SupportTeam", inversedBy="users")
  127. * @ORM\JoinTable(name="uv_user_support_teams",
  128. * joinColumns={@ORM\JoinColumn(name="userInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  129. * inverseJoinColumns={@ORM\JoinColumn(name="supportTeamId", referencedColumnName="id", onDelete="CASCADE")})
  130. */
  131. private $supportTeams;
  132. /**
  133. * @var \Doctrine\Common\Collections\Collection
  134. * @ORM\ManyToMany(targetEntity="SupportGroup", inversedBy="users")
  135. * @ORM\JoinTable(name="uv_user_support_groups",
  136. * joinColumns={@ORM\JoinColumn(name="userInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  137. * inverseJoinColumns={@ORM\JoinColumn(name="supportGroupId", referencedColumnName="id", onDelete="CASCADE")})
  138. */
  139. private $supportGroups;
  140. /**
  141. * @var \Doctrine\Common\Collections\Collection
  142. * @ORM\ManyToMany(targetEntity="SupportTeam", inversedBy="leads")
  143. * @ORM\JoinTable(name="uv_lead_support_teams",
  144. * joinColumns={@ORM\JoinColumn(name="leadUserInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  145. * inverseJoinColumns={@ORM\JoinColumn(name="supportTeamId", referencedColumnName="id", onDelete="CASCADE")})
  146. */
  147. private $leadSupportTeams;
  148. /**
  149. * @var \Doctrine\Common\Collections\Collection
  150. * @ORM\ManyToMany(targetEntity="SupportGroup", inversedBy="admins")
  151. * @ORM\JoinTable(name="uv_admin_support_groups",
  152. * joinColumns={@ORM\JoinColumn(name="adminUserInstanceId", referencedColumnName="id", onDelete="CASCADE")},
  153. * inverseJoinColumns={@ORM\JoinColumn(name="supportGroupId", referencedColumnName="id", onDelete="CASCADE")})
  154. */
  155. private $adminSupportGroups;
  156. /**
  157. * Constructor
  158. */
  159. public function __construct()
  160. {
  161. $this->userSavedReplies = new \Doctrine\Common\Collections\ArrayCollection();
  162. $this->userSavedFilters = new \Doctrine\Common\Collections\ArrayCollection();
  163. $this->supportPrivileges = new \Doctrine\Common\Collections\ArrayCollection();
  164. $this->supportTeams = new \Doctrine\Common\Collections\ArrayCollection();
  165. $this->supportGroups = new \Doctrine\Common\Collections\ArrayCollection();
  166. $this->leadSupportTeams = new \Doctrine\Common\Collections\ArrayCollection();
  167. $this->adminSupportGroups = new \Doctrine\Common\Collections\ArrayCollection();
  168. }
  169. /**
  170. * Get id
  171. *
  172. * @return integer
  173. */
  174. public function getId()
  175. {
  176. return $this->id;
  177. }
  178. /**
  179. * Set source
  180. *
  181. * @param string $source
  182. *
  183. * @return UserInstance
  184. */
  185. public function setSource($source)
  186. {
  187. $this->source = $source;
  188. return $this;
  189. }
  190. /**
  191. * Get source
  192. *
  193. * @return string
  194. */
  195. public function getSource()
  196. {
  197. return $this->source;
  198. }
  199. /**
  200. * Set skypeId
  201. *
  202. * @param string $skypeId
  203. *
  204. * @return UserInstance
  205. */
  206. public function setSkypeId($skypeId)
  207. {
  208. $this->skypeId = $skypeId;
  209. return $this;
  210. }
  211. /**
  212. * Get skypeId
  213. *
  214. * @return string
  215. */
  216. public function getSkypeId()
  217. {
  218. return $this->skypeId;
  219. }
  220. /**
  221. * Set contactNumber
  222. *
  223. * @param string $contactNumber
  224. *
  225. * @return UserInstance
  226. */
  227. public function setContactNumber($contactNumber)
  228. {
  229. $this->contactNumber = $contactNumber;
  230. return $this;
  231. }
  232. /**
  233. * Get contactNumber
  234. *
  235. * @return string
  236. */
  237. public function getContactNumber()
  238. {
  239. return $this->contactNumber;
  240. }
  241. /**
  242. * Set designation
  243. *
  244. * @param string $designation
  245. *
  246. * @return UserInstance
  247. */
  248. public function setDesignation($designation)
  249. {
  250. $this->designation = $designation;
  251. return $this;
  252. }
  253. /**
  254. * Get designation
  255. *
  256. * @return string
  257. */
  258. public function getDesignation()
  259. {
  260. return $this->designation;
  261. }
  262. /**
  263. * Set signature
  264. *
  265. * @param string $signature
  266. *
  267. * @return UserInstance
  268. */
  269. public function setSignature($signature)
  270. {
  271. $this->signature = $signature;
  272. return $this;
  273. }
  274. /**
  275. * Get signature
  276. *
  277. * @return string
  278. */
  279. public function getSignature()
  280. {
  281. return $this->signature;
  282. }
  283. /**
  284. * Set profileImagePath
  285. *
  286. * @param string $profileImagePath
  287. *
  288. * @return UserInstance
  289. */
  290. public function setProfileImagePath($profileImagePath)
  291. {
  292. $this->profileImagePath = $profileImagePath;
  293. return $this;
  294. }
  295. /**
  296. * Get profileImagePath
  297. *
  298. * @return string
  299. */
  300. public function getProfileImagePath()
  301. {
  302. return $this->profileImagePath;
  303. }
  304. /**
  305. * Set createdAt
  306. *
  307. * @param \DateTime $createdAt
  308. *
  309. * @return UserInstance
  310. */
  311. public function setCreatedAt($createdAt)
  312. {
  313. $this->createdAt = $createdAt;
  314. return $this;
  315. }
  316. /**
  317. * Get createdAt
  318. *
  319. * @return \DateTime
  320. */
  321. public function getCreatedAt()
  322. {
  323. return $this->createdAt;
  324. }
  325. /**
  326. * Set updatedAt
  327. *
  328. * @param \DateTime $updatedAt
  329. *
  330. * @return UserInstance
  331. */
  332. public function setUpdatedAt($updatedAt)
  333. {
  334. $this->updatedAt = $updatedAt;
  335. return $this;
  336. }
  337. /**
  338. * Get updatedAt
  339. *
  340. * @return \DateTime
  341. */
  342. public function getUpdatedAt()
  343. {
  344. return $this->updatedAt;
  345. }
  346. /**
  347. * Set lastLogin
  348. *
  349. * @param \DateTime $lastLogin
  350. *
  351. * @return UserInstance
  352. */
  353. public function setLastLogin($lastLogin)
  354. {
  355. $this->lastLogin = $lastLogin;
  356. return $this;
  357. }
  358. /**
  359. * Get lastLogin
  360. *
  361. * @return \DateTime
  362. */
  363. public function getLastLogin()
  364. {
  365. return $this->lastLogin;
  366. }
  367. /**
  368. * Set isOnline
  369. *
  370. * @param boolean $isOnline
  371. *
  372. * @return UserInstance
  373. */
  374. public function setIsOnline($isOnline)
  375. {
  376. $this->isOnline = $isOnline;
  377. return $this;
  378. }
  379. /**
  380. * Get isOnline
  381. *
  382. * @return boolean
  383. */
  384. public function getIsOnline()
  385. {
  386. return $this->isOnline;
  387. }
  388. /**
  389. * Set isActive
  390. *
  391. * @param boolean $isActive
  392. *
  393. * @return UserInstance
  394. */
  395. public function setIsActive($isActive)
  396. {
  397. $this->isActive = $isActive;
  398. return $this;
  399. }
  400. /**
  401. * Get isActive
  402. *
  403. * @return boolean
  404. */
  405. public function getIsActive()
  406. {
  407. return $this->isActive;
  408. }
  409. /**
  410. * Set isVerified
  411. *
  412. * @param boolean $isVerified
  413. *
  414. * @return UserInstance
  415. */
  416. public function setIsVerified($isVerified)
  417. {
  418. $this->isVerified = $isVerified;
  419. return $this;
  420. }
  421. /**
  422. * Get isVerified
  423. *
  424. * @return boolean
  425. */
  426. public function getIsVerified()
  427. {
  428. return $this->isVerified;
  429. }
  430. /**
  431. * Set isStarred
  432. *
  433. * @param boolean $isStarred
  434. *
  435. * @return UserInstance
  436. */
  437. public function setIsStarred($isStarred)
  438. {
  439. $this->isStarred = $isStarred;
  440. return $this;
  441. }
  442. /**
  443. * Get isStarred
  444. *
  445. * @return boolean
  446. */
  447. public function getIsStarred()
  448. {
  449. return $this->isStarred;
  450. }
  451. /**
  452. * Set ticketAccessLevel
  453. *
  454. * @param string $ticketAccessLevel
  455. *
  456. * @return UserInstance
  457. */
  458. public function setTicketAccessLevel($ticketAccessLevel)
  459. {
  460. $this->ticketAccessLevel = $ticketAccessLevel;
  461. return $this;
  462. }
  463. /**
  464. * Get ticketAccessLevel
  465. *
  466. * @return string
  467. */
  468. public function getTicketAccessLevel()
  469. {
  470. return $this->ticketAccessLevel;
  471. }
  472. /**
  473. * Set defaultFiltering
  474. *
  475. * @param integer $defaultFiltering
  476. * @return UserInstance
  477. */
  478. public function setDefaultFiltering($defaultFiltering)
  479. {
  480. $this->defaultFiltering = $defaultFiltering;
  481. return $this;
  482. }
  483. /**
  484. * Get defaultFiltering
  485. *
  486. * @return integer
  487. */
  488. public function getDefaultFiltering()
  489. {
  490. return $this->defaultFiltering;
  491. }
  492. /**
  493. * Add userSavedReply
  494. *
  495. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply
  496. *
  497. * @return UserInstance
  498. */
  499. public function addUserSavedReply(\Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply)
  500. {
  501. $this->userSavedReplies[] = $userSavedReply;
  502. return $this;
  503. }
  504. /**
  505. * Remove userSavedReply
  506. *
  507. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply
  508. */
  509. public function removeUserSavedReply(\Webkul\UVDesk\CoreFrameworkBundle\Entity\EmailTemplates $userSavedReply)
  510. {
  511. $this->userSavedReplies->removeElement($userSavedReply);
  512. }
  513. /**
  514. * Get userSavedReplies
  515. *
  516. * @return \Doctrine\Common\Collections\Collection
  517. */
  518. public function getUserSavedReplies()
  519. {
  520. return $this->userSavedReplies;
  521. }
  522. /**
  523. * Add userSavedFilter
  524. *
  525. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter
  526. *
  527. * @return UserInstance
  528. */
  529. public function addUserSavedFilter(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter)
  530. {
  531. $this->userSavedFilters[] = $userSavedFilter;
  532. return $this;
  533. }
  534. /**
  535. * Remove userSavedFilter
  536. *
  537. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter
  538. */
  539. public function removeUserSavedFilter(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SavedFilters $userSavedFilter)
  540. {
  541. $this->userSavedFilters->removeElement($userSavedFilter);
  542. }
  543. /**
  544. * Get userSavedFilters
  545. *
  546. * @return \Doctrine\Common\Collections\Collection
  547. */
  548. public function getUserSavedFilters()
  549. {
  550. return $this->userSavedFilters;
  551. }
  552. /**
  553. * Set user
  554. *
  555. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\User $user
  556. *
  557. * @return UserInstance
  558. */
  559. public function setUser(\Webkul\UVDesk\CoreFrameworkBundle\Entity\User $user = null)
  560. {
  561. $this->user = $user;
  562. return $this;
  563. }
  564. /**
  565. * Get user
  566. *
  567. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\User
  568. */
  569. public function getUser()
  570. {
  571. return $this->user;
  572. }
  573. /**
  574. * Set supportRole
  575. *
  576. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole $supportRole
  577. *
  578. * @return UserInstance
  579. */
  580. public function setSupportRole(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole $supportRole = null)
  581. {
  582. $this->supportRole = $supportRole;
  583. return $this;
  584. }
  585. /**
  586. * Get supportRole
  587. *
  588. * @return \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportRole
  589. */
  590. public function getSupportRole()
  591. {
  592. return $this->supportRole;
  593. }
  594. /**
  595. * Add supportPrivilege
  596. *
  597. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege
  598. *
  599. * @return UserInstance
  600. */
  601. public function addSupportPrivilege(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege)
  602. {
  603. $this->supportPrivileges[] = $supportPrivilege;
  604. return $this;
  605. }
  606. /**
  607. * Remove supportPrivilege
  608. *
  609. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege
  610. */
  611. public function removeSupportPrivilege(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportPrivilege $supportPrivilege)
  612. {
  613. $this->supportPrivileges->removeElement($supportPrivilege);
  614. }
  615. /**
  616. * Get supportPrivileges
  617. *
  618. * @return \Doctrine\Common\Collections\Collection
  619. */
  620. public function getSupportPrivileges()
  621. {
  622. return $this->supportPrivileges;
  623. }
  624. /**
  625. * Add supportTeam
  626. *
  627. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam
  628. *
  629. * @return UserInstance
  630. */
  631. public function addSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam)
  632. {
  633. $this->supportTeams[] = $supportTeam;
  634. return $this;
  635. }
  636. /**
  637. * Remove supportTeam
  638. *
  639. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam
  640. */
  641. public function removeSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $supportTeam)
  642. {
  643. $this->supportTeams->removeElement($supportTeam);
  644. }
  645. /**
  646. * Get supportTeams
  647. *
  648. * @return \Doctrine\Common\Collections\Collection
  649. */
  650. public function getSupportTeams()
  651. {
  652. return $this->supportTeams;
  653. }
  654. /**
  655. * Add supportGroup
  656. *
  657. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup
  658. *
  659. * @return UserInstance
  660. */
  661. public function addSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup)
  662. {
  663. $this->supportGroups[] = $supportGroup;
  664. return $this;
  665. }
  666. /**
  667. * Remove supportGroup
  668. *
  669. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup
  670. */
  671. public function removeSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $supportGroup)
  672. {
  673. $this->supportGroups->removeElement($supportGroup);
  674. }
  675. /**
  676. * Get supportGroups
  677. *
  678. * @return \Doctrine\Common\Collections\Collection
  679. */
  680. public function getSupportGroups()
  681. {
  682. return $this->supportGroups;
  683. }
  684. /**
  685. * Add leadSupportTeam
  686. *
  687. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam
  688. *
  689. * @return UserInstance
  690. */
  691. public function addLeadSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam)
  692. {
  693. $this->leadSupportTeams[] = $leadSupportTeam;
  694. return $this;
  695. }
  696. /**
  697. * Remove leadSupportTeam
  698. *
  699. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam
  700. */
  701. public function removeLeadSupportTeam(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportTeam $leadSupportTeam)
  702. {
  703. $this->leadSupportTeams->removeElement($leadSupportTeam);
  704. }
  705. /**
  706. * Get leadSupportTeams
  707. *
  708. * @return \Doctrine\Common\Collections\Collection
  709. */
  710. public function getLeadSupportTeams()
  711. {
  712. return $this->leadSupportTeams;
  713. }
  714. /**
  715. * Add adminSupportGroup
  716. *
  717. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup
  718. *
  719. * @return UserInstance
  720. */
  721. public function addAdminSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup)
  722. {
  723. $this->adminSupportGroups[] = $adminSupportGroup;
  724. return $this;
  725. }
  726. /**
  727. * Remove adminSupportGroup
  728. *
  729. * @param \Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup
  730. */
  731. public function removeAdminSupportGroup(\Webkul\UVDesk\CoreFrameworkBundle\Entity\SupportGroup $adminSupportGroup)
  732. {
  733. $this->adminSupportGroups->removeElement($adminSupportGroup);
  734. }
  735. /**
  736. * Get adminSupportGroups
  737. *
  738. * @return \Doctrine\Common\Collections\Collection
  739. */
  740. public function getAdminSupportGroups()
  741. {
  742. return $this->adminSupportGroups;
  743. }
  744. /**
  745. * @ORM\PrePersist
  746. *
  747. * Initialize timestamps for createdAt and updatedAt fields when persisting the UserInstance to database
  748. * the first time.
  749. *
  750. * @return UserInstance
  751. */
  752. public function initializeUserTimestamp()
  753. {
  754. $this->createdAt = $this->updatedAt = new \DateTime('now');
  755. return $this;
  756. }
  757. /**
  758. * @ORM\PreUpdate
  759. *
  760. * Updates the updatedAt field when persisting the UserInstance to database.
  761. *
  762. * @return UserInstance
  763. */
  764. public function updateUserTimestamp()
  765. {
  766. $this->updatedAt = new \DateTime('now');
  767. return $this;
  768. }
  769. /**
  770. * Get user partial data
  771. *
  772. * @return array
  773. */
  774. public function getPartialDetails()
  775. {
  776. return [
  777. 'id' => $this->getUser()->getId(),
  778. 'email' => $this->getUser()->getEmail(),
  779. 'name' => $this->getUser()->getFullName(),
  780. 'firstName' => $this->getUser()->getFirstName(),
  781. 'lastName' => $this->getUser()->getLastName(),
  782. 'contactNumber' => $this->getContactNumber(),
  783. 'thumbnail' => $this->getProfileImagePath(),
  784. 'isOnline' => $this->getIsOnline(),
  785. 'lastLogin' => $this->getLastLogin(),
  786. ];
  787. }
  788. }