Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- VideoMetaData.php
- <?php
- class VideoMetaData extends DataObject {
- private static $db = array(
- 'Duration' => 'Time',
- 'IsNew' => 'Boolean',
- 'Catagory' => 'Varchar',
- 'VideoSortOrder' => 'Decimal',
- //'Image' => '',
- 'Link' => 'HTMLText'
- );
- private static $many_many = array(
- 'MetaBanners' => 'MetaBanner'
- );
- private static $has_one = array(
- 'Video' => 'Video'
- );
- public function getCMSFields()
- {
- $fields = parent::getCMSFields();
- return $fields;
- }
- }
- class MetaBanner extends DataObject {
- private static $db = array(
- 'Title' => 'Varchar',
- 'Description' => 'Varchar'
- );
- private static $belongs_many_many = array(
- 'VideoMetaDatas' => 'VideoMetaData'
- );
- }
- VideoHolder.php
- <?php
- class VideoHolder extends Page {
- private static $allowed_children = array('Video');
- }
- class VideoHolder_Controller extends Page_Controller {
- }
- Video.php
- <?php
- class Video extends Page {
- private static $has_one = array(
- 'VideoMetaData' => 'VideoMetaData'
- );
- public function getCMSFields() {
- $fields = parent::getCMSFields();
- $config = GridFieldConfig_RelationEditor::create();
- ////$config->addComponent(new GridFieldSortableRows('SortOrder'))->addComponent(new GridFieldDeleteAction());
- $config->getComponentByType('GridFieldDataColumns')->setDisplayFields(array(
- 'Catagory' => 'Catagory',
- 'Duration' => 'Duration'
- ));
- $gridField = new GridField(
- 'VideoMetaData',
- 'Title',
- $this->owner->VideoMetaData(),
- $config
- );
- $fields->addFieldToTab('Root.Main', $gridField);
- return $fields;
- }
- }
- class Video_Controller extends Page_Controller {
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement