Source of file StylingHorizontalAlign.php
Size: 2,135 Bytes - Last Modified: 2021-12-24T06:47:59+00:00
/var/www/docs.ssmods.com/process/src/src/StylingHorizontalAlign.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | <?php namespace Fractas\ElementalStylings; use Fractas\ElementalStylings\Forms\StylingOptionsetField; use SilverStripe\Forms\FieldList; use SilverStripe\ORM\DataExtension; use SilverStripe\View\ArrayData; class StylingHorizontalAlign extends DataExtension { private static $db = [ 'HorAlign' => 'Varchar(255)', ]; /** * @var string */ private static $singular_name = 'Horizontal Align'; /** * @var string */ private static $plural_name = 'Horizontal Aligns'; /** * @config * * @var array */ private static $horalign = []; public function getStylingHorizontalAlignNice($key) { return (!empty($this->owner->config()->get('horalign')[$key])) ? $this->owner->config()->get('horalign')[$key] : $key; } public function getStylingHorizontalAlignData() { return ArrayData::create([ 'Label' => self::$singular_name, 'Value' => $this->getStylingHorizontalAlignNice($this->owner->HorAlign), ]); } /** * @return string */ public function getHorAlignVariant() { $horalign = $this->owner->HorAlign; $horaligns = $this->owner->config()->get('horalign'); if (isset($horaligns[$horalign])) { $horalign = strtolower($horalign); } else { $horalign = ''; } return 'horalign-'.$horalign; } public function updateCMSFields(FieldList $fields) { $fields->removeByName('HorAlign'); $horalign = $this->owner->config()->get('horalign'); if ($horalign && count($horalign) > 1) { $fields->addFieldsToTab( 'Root.Styling', StylingOptionsetField::create('HorAlign', _t(__CLASS__.'.HORIZONTALALIGN', 'Horizontal Align'), $horalign) ); } return $fields; } public function populateDefaults() { $horalign = $this->owner->config()->get('horalign'); $horalign = key($horalign); $this->owner->HorAlign = $horalign; parent::populateDefaults(); } } |