Source of file LinkBlock.php
Size: 1,898 Bytes - Last Modified: 2021-12-23T10:19:04+00:00
/var/www/docs.ssmods.com/process/src/code/LinkBlock.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 | <?php /** * Class FeedBlock * * Extends {@link Block} to facilitate links */ class LinkBlock extends Block { /** * Fields * * @var array */ private static $db = array( 'CssClasses' => 'Text', 'Attributes' => 'Text', ); /** * Summary fields for GridField * * @var array */ private static $summary_fields = array( 'Thumbnail' => 'Image', 'Title' => 'Title', 'URL' => 'URL', ); /** * Get CMS fields * * @return FieldList */ function getCMSFields() { $fields = new FieldList(); $fields->push(new TextField('LinkTitle', _t('Block.LINKTITLE','Link title'))); $fields->push(new TextField('LinkExternal', _t('Block.LINKEXTERNAL','External link URL'))); if(class_exists('OptionalTreeDropdownField')) { $treeField = new OptionalTreeDropdownField('LinkInternalID', _t('Block.LINKINTERNAL','Internal link'), 'SiteTree'); $treeField->setEmptyString('No Page'); } else { $treeField = new TreeDropdownField('LinkInternalID', _t('Block.LINKINTERNAL','Internal link'), 'SiteTree'); } $fields->push($treeField); $fields->push(new TextField('CssClasses', _t('Block.CSSCLASSES','Css Classes'))); $fields->push(new TextareaField('Attributes', _t('Block.ATTRIBUTES','Attributes'))); $imageField = new UploadField('Image', _t('Block.IMAGE','Image')); $imageField->getValidator()->setAllowedExtensions(array('jpg', 'gif', 'png')); $fields->push($imageField); return $fields; } /** * Get link url * * @return string */ function URL() { return parent::LinkURL(); } /** * Get link title * * @return string */ function Title() { return parent::LinkTitle(); } /** * Get link is external * * @return bool */ function IsExternal() { return parent::LinkIsExternal(); } /** * Get link is internal * * @return bool */ function IsInternal() { return !self::IsExternal(); } } |