GcDevelopment\Controller\DocumentTypeController::prepareDocumentTypeSession PHP Méthode

prepareDocumentTypeSession() protected méthode

Prepare document type session
protected prepareDocumentTypeSession ( Zend\Session\Container $session, Model $documentType ) : array
$session Zend\Session\Container Session container
$documentType Gc\DocumentType\Model DocumentType model
Résultat array
    protected function prepareDocumentTypeSession($session, $documentType)
    {
        $documentTypeSession = array('tabs' => array(), 'max-property-id' => 0, 'max-tab-id' => 0);
        foreach ($documentType->getTabs() as $tab) {
            $documentTypeSession['tabs'][$tab->getId()] = array('name' => $tab->getName(), 'description' => $tab->getDescription(), 'properties' => array());
            if ($tab->getId() > $documentTypeSession['max-tab-id']) {
                $documentTypeSession['max-tab-id'] = $tab->getId();
            }
            foreach ($tab->getProperties() as $property) {
                $documentTypeSession['tabs'][$tab->getId()]['properties'][$property->getId()] = array('name' => $property->getName(), 'identifier' => $property->getIdentifier(), 'tab' => $property->getTabId(), 'description' => $property->getDescription(), 'isRequired' => $property->isRequired(), 'datatype' => $property->getDatatypeId());
                if ($property->getId() > $documentTypeSession['max-property-id']) {
                    $documentTypeSession['max-property-id'] = $property->getId();
                }
            }
        }
        $session['document-type'] = $documentTypeSession;
    }