Source of file VersionedModelAdminUpdateFormExtension.php
Size: 0,849 Bytes - Last Modified: 2022-01-13T10:01:10+00:00
/var/www/docs.ssmods.com/process/src/src/abc/code/Extensions/VersionedModelAdminUpdateFormExtension.php
123456789101112131415161718192021222324252627282930313233 | <?php /** * VersionedModelAdmin * replaces the scaffolded gridfield for versioned objects with a VersionedGridFieldDetailForm * See README for details * * @author Tim Klein, Dodat Ltd <tim[at]dodat[dot]co[dot]nz> */ class VersionedModelAdminUpdateFormExtension extends Extension { function onBeforeInit() { Versioned::reading_stage('Stage'); } function updateEditForm($form) { $fieldList = $form->Fields(); foreach($fieldList as $field) { if($field instanceof GridField) { $class = $field->getList()->dataClass(); if($class::has_extension("Versioned")) { $config = $field->getConfig(); $config->removeComponentsByType('GridFieldDeleteAction') ->removeComponentsByType('GridFieldDetailForm') ->addComponents(new VersionedGridFieldDetailForm()); $field->setConfig($config); } } } } } |