Example #1
0
 /**
  * @param TblPerson $tblPerson
  *
  * @return Layout
  */
 public function frontendLayoutPerson(TblPerson $tblPerson)
 {
     $tblRelationshipAll = Relationship::useService()->getPersonRelationshipAllByPerson($tblPerson);
     if ($tblRelationshipAll !== false) {
         /** @noinspection PhpUnusedParameterInspection */
         array_walk($tblRelationshipAll, function (TblToPerson &$tblToPerson, $Index, TblPerson $tblPerson) {
             $Panel = array($tblToPerson->getServiceTblPersonFrom()->getId() == $tblPerson->getId() ? $tblToPerson->getServiceTblPersonTo()->getFullName() : $tblToPerson->getServiceTblPersonFrom()->getFullName());
             if ($tblToPerson->getRemark()) {
                 array_push($Panel, new Muted(new Small($tblToPerson->getRemark())));
             }
             $tblToPerson = new LayoutColumn(new Panel(new PersonIcon() . ' ' . new Link() . ' ' . $tblToPerson->getTblType()->getName(), $Panel, $tblToPerson->getServiceTblPersonFrom()->getId() == $tblPerson->getId() ? Panel::PANEL_TYPE_SUCCESS : Panel::PANEL_TYPE_DEFAULT, $tblToPerson->getServiceTblPersonFrom()->getId() == $tblPerson->getId() ? new Standard('', '/People/Person/Relationship/Edit', new Pencil(), array('Id' => $tblToPerson->getId()), 'Bearbeiten') . new Standard('', '/People/Person/Relationship/Destroy', new Remove(), array('Id' => $tblToPerson->getId()), 'Löschen') . new Standard('', '/People/Person', new PersonIcon(), array('Id' => $tblToPerson->getServiceTblPersonTo()->getId()), 'zur Person') : new Standard('', '/People/Person', new PersonIcon(), array('Id' => $tblToPerson->getServiceTblPersonFrom()->getId()), 'zur Person')), 3);
         }, $tblPerson);
     } else {
         $tblRelationshipAll = array(new LayoutColumn(new Warning('Keine Personenbeziehungen hinterlegt')));
     }
     $LayoutRowList = array();
     $LayoutRowCount = 0;
     $LayoutRow = null;
     /**
      * @var LayoutColumn $tblRelationship
      */
     foreach ($tblRelationshipAll as $tblRelationship) {
         if ($LayoutRowCount % 4 == 0) {
             $LayoutRow = new LayoutRow(array());
             $LayoutRowList[] = $LayoutRow;
         }
         $LayoutRow->addColumn($tblRelationship);
         $LayoutRowCount++;
     }
     return new Layout(new LayoutGroup($LayoutRowList));
 }