for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Dynamic\Foxy\Discounts\Model;
use SilverStripe\Forms\FieldList;
use SilverStripe\ORM\DataObject;
class DiscountTier extends DataObject
{
/**
* @var array
*/
private static $db = [
$db
'Quantity' => 'Int',
'Percentage' => 'Int',
];
private static $has_one = [
$has_one
'Discount' => Discount::class,
private static $defaults = [
$defaults
'Quantity' => 1,
private static $summary_fields = [
$summary_fields
'DiscountPercentage' => [
'title' => 'Discount',
],
'Quantity',
* @var string
private static $table_name = 'FoxyDiscountTier';
$table_name
private static $default_sort = array(
$default_sort
'Quantity'
);
* @return FieldList|void
public function getCMSFields()
$this->beforeUpdateCMSFields(function (FieldList $fields) {
$fields->removeByName([
'DiscountID',
]);
$quantity = $fields->dataFieldByName('Quantity');
$quantity->setTitle('Quantity to trigger discount');
$percentage = $fields->dataFieldByName('Percentage');
$percentage->setTitle('Percent discount');
});
return parent::getCMSFields();
}
* @return string
public function getDiscountPercentage()
return "{$this->Percentage}%";
Percentage
Dynamic\Foxy\Discounts\Model\DiscountTier
__get