Skip to content

Rhym/silverstripe-design-field

Repository files navigation

#Silverstripe Design Field A field that can generate inline styles for an object. The field is saved into the database as a JSON string. Here's an example of the output:

{  
   "selector":".myobject",
   "padding-top":"100px",
   "padding-bottom":"100px",
   "margin-top":"10px",
   "margin-bottom":"10px",
   "background":"#ffffff"
}

###Methods Summary

  • | - ---- | ---- public | __construct($name, $title = null, $selector = null, $fields = null, $value = null) The $fields parameter supports pretty much all silverstripe fields, bar UploadFields and FileFields. ###Screenshot Design Field ###Example Usage
private static $db = array(
  'MyObject' => 'Design'
);
DesignField::create('MyObject', _t('DesignField.MyObject', 'My Object'),
  '.myobject',
  array(
      'padding-top' => 'TextField',
      'padding-right' => 'TextField',
      'padding-bottom' => 'TextField',
      'padding-left' => 'TextField',
      'margin-top' => 'TextField',
      'margin-right' => 'TextField',
      'margin-bottom' => 'TextField',
      'margin-left' => 'TextField',
      'color' => 'ColorField',
      'background' => 'ColorField',
      'font-size' => array(
          'type' => 'DropdownField',
          'value' => array(
              '16px',
              '25px',
              '36px'
          )
      )
  ));

Return the string of styles

$this->dbObject('MyObject')->InlineStyle();

About

A field that can generate inline styles for an object.

Resources

Stars

Watchers

Forks

Packages

No packages published