/** * Construct */ public function __construct(Person $person) { if (null !== $person) { $this->id = $person->getId(); $this->name = $person->getName(); $this->email = $person->getEmail(); $this->web = $person->getWeb(); $this->phone = $person->getPhone(); $this->setI18nHonorific($person->getI18nHonorific()); $this->setI18nFirm($person->getI18nFirm()); $this->setI18nPost($person->getI18nPost()); $this->setI18nBio($person->getI18nBio()); } }
/** * Count multimedia objects with person * * @param Person $person * @return array */ public function countMultimediaObjectsWithPerson($person) { return count($this->repoMmobj->findByPersonId($person->getId())); }
/** * Reorder person with role * * @param Person|EmbeddedRole $person * @param Role\EmbeddedRole $role * @param boolean $up */ public function reorderPersonWithRole($person, $role, $up = true) { $people = array_values($this->getPeopleByRole($role, true)); $this->getEmbeddedRole($role)->getPeople()->clear(); $out = array(); foreach ($people as $key => $embeddedPerson) { if ($person->getId() == $embeddedPerson->getId()) { $out[$key * 10 + ($up ? -11 : 11)] = $embeddedPerson; } else { $out[$key * 10] = $embeddedPerson; } } ksort($out); foreach ($out as $embeddedPerson) { $this->getEmbeddedRole($role)->addPerson($embeddedPerson); } }
/** * Contained embed person * * @param Person|EmbeddedPerson $person * @return EmbeddedPerson|boolean EmbeddedPerson if found, FALSE otherwise: */ public function getEmbeddedPerson($person) { foreach ($this->people as $embeddedPerson) { if ($person->getId() === $embeddedPerson->getId()) { return $embeddedPerson; } } return false; }