Source of file HomePageExtension.php
Size: 1,563 Bytes - Last Modified: 2021-12-23T10:10:18+00:00
/var/www/docs.ssmods.com/process/src/code/extensions/HomePageExtension.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 | <?php class HomePageExtension extends DataExtension { private static $db = array( 'AutoSlide' => 'Boolean', 'SliderNavType' => 'Text', 'IncludeCSS' => 'Boolean' ); private static $has_many = array( 'Slides' => 'Slide' ); public function updateCMSFields(FieldList $fields) { $fields->addFieldToTab('Root.Slider', CheckboxField::create('AutoSlide', 'Cycle through slides automatically every 5 seconds')); $fields->addFieldToTab( 'Root.Slider', DropdownField::create( 'SliderNavType', 'Slider navigation type', array( 'NavButtons' => 'Slide nav buttons', 'PrevNext' => 'Prev/Next arrows' ) ) ); $fields->addFieldToTab('Root.Slider', CheckboxField::create('IncludeCSS', 'Include slider CSS file in requirements')); $fields->addFieldToTab( 'Root.Slider', new GridField( 'Slides', 'Slides', $this->owner->Slides(), GridFieldConfig_RecordEditor::create(10)->addComponent(new GridFieldSortableRows('SortID')) ) ); } } class HomePage_ControllerExtension extends Extension { public function onBeforeInit(){ Requirements::javascript(THIRDPARTY_DIR.'/jquery/jquery.js'); Requirements::javascript(HOMEPAGESLIDER_DIR.'/js/homepage-slider.js'); if($this->owner->IncludeCSS){ if($this->owner->SliderNavType == 'PrevNext'){ // use font-awesome arrows for prev/next navigation Requirements::css('//maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css'); } Requirements::css(HOMEPAGESLIDER_DIR.'/css/homepage-slider.css'); } } } |