MetaModels\DcGeneral\Events\Table\InputScreens\Subscriber::getMetaModelFromModel PHP Method

getMetaModelFromModel() protected method

Retrieve the MetaModel the given model is attached to.
protected getMetaModelFromModel ( ContaoCommunityAlliance\DcGeneral\Data\ModelInterface $model ) : MetaModels\IMetaModel
$model ContaoCommunityAlliance\DcGeneral\Data\ModelInterface The input screen model for which to retrieve the MetaModel.
return MetaModels\IMetaModel
    protected function getMetaModelFromModel(ModelInterface $model)
    {
        if (!($model->getProviderName() == 'tl_metamodel_dcasetting' && $model->getProperty('pid'))) {
            throw new DcGeneralInvalidArgumentException(sprintf('Model must originate from tl_metamodel_dcasetting and be saved, this one originates from %s and ' . 'has pid %s', $model->getProviderName(), $model->getProperty('pid')));
        }
        $metaModelId = $this->getDatabase()->prepare('SELECT pid FROM tl_metamodel_dca WHERE id=?')->execute($model->getProperty('pid'));
        return $this->getMetaModelById($metaModelId->pid);
    }