Skip to content

fabrizioT/silverstripe-versioneddataobjects

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SilverStripe Versioned DataObjects

Provides Versioned DataObjects and CMS publishing buttons in SilverStripe

Installation (with composer)

$ composer require heyday/silverstripe-versioneddataobjects

Example

Versioned DataObject Example Versioned DataObject Example 2

Usage

Slice.php

class Slice extends DataObject
{
    private static $has_one = array(
        'Parent' => 'SiteTree'
    );
    private static $extensions = array(
        'VersionedDataObject'
    );
}

Page.php

class Page extends SiteTree
{
    private static $has_many = array(
        'Slices' => 'Slice'
    );
    public function getCMSFields()
    {
        $fields = parent::getCMSFields();

        $fields->addFieldsToTab(
            'Root.Slices',
            new GridField(
                'Slices',
                'Slices',
                $this->Slices(),
                $config = GridFieldConfig_RelationEditor::create()
            )
        );

        $config->removeComponentsByType('GridFieldDetailForm');
        $config->addComponent(new VersionedDataObjectDetailsForm());

        return $fields;
    }
}

Unit testing

None :(

##License

SilverStripe Versioned DataObjects is licensed under an MIT license

About

Provides Versioned DataObjects in SilverStripe

Resources

License

Stars

Watchers

Forks

Packages

No packages published