public function getCMSFields() { $fields = parent::getCMSFields(); $fieldList = array("Country" => "Country", "State" => "State", "City" => "City", "PostalCode" => "PostCode", "WeightMin" => "WeightMin", "WeightMax" => "WeightMax", "VolumeMin" => "VolumeMin", "VolumeMax" => "VolumeMax", "ValueMin" => "ValueMin", "ValueMax" => "ValueMax", "QuantityMin" => "QuantityMin", "QuantityMax" => "QuantityMax", "Rate" => "Rate"); $fields->fieldByName('Root')->removeByName("Rates"); if ($this->isInDB()) { $tablefield = new GridField("Rates", "TableShippingRate", $this->Rates(), new GridFieldConfig_RecordEditor()); $fields->addFieldToTab("Root.Main", $tablefield); } return $fields; }
public function getCMSFields() { $fields = parent::getCMSFields(); $displayFieldsList = array("ZoneID" => "Zone", "WeightMin" => "WeightMin", "WeightMax" => "WeightMax", "VolumeMin" => "VolumeMin", "VolumeMax" => "VolumeMax", "ValueMin" => "ValueMin", "ValueMax" => "ValueMax", "QuantityMin" => "QuantityMin", "QuantityMax" => "QuantityMax", "Rate" => "Rate"); $fields->fieldByName('Root')->removeByName("Rates"); if ($this->isInDB()) { $gridField = new GridField("Rates", "ZonedShippingRate", $this->Rates(), new GridFieldConfig_RelationEditor()); $gridField->getConfig()->getComponentByType('GridFieldDataColumns')->setDisplayFields($displayFieldsList); $fields->addFieldToTab("Root.Main", $gridField); } return $fields; }
function getCMSFields() { $fields = parent::getCMSFields(); $fieldList = array("ZoneID" => "Zone", "WeightMin" => "WeightMin", "WeightMax" => "WeightMax", "VolumeMin" => "VolumeMin", "VolumeMax" => "VolumeMax", "ValueMin" => "ValueMin", "ValueMax" => "ValueMax", "QuantityMin" => "QuantityMin", "QuantityMax" => "QuantityMax", "Rate" => "Rate"); $fieldTypes = array("ZoneID" => "ZoneSelectField", "WeightMin" => "TextField", "WeightMax" => "TextField", "VolumeMin" => "TextField", "VolumeMax" => "TextField", "ValueMin" => "TextField", "ValueMax" => "TextField", "QuantityMin" => "TextField", "QuantityMax" => "TextField", "Rate" => "TextField"); $fields->fieldByName('Root')->removeByName("Rates"); if ($this->isInDB()) { $tablefield = new TableField("Rates", "ZonedShippingRate", $fieldList, $fieldTypes); $tablefield->setCustomSourceItems($this->Rates()); $fields->addFieldToTab("Root.Main", $tablefield); } return $fields; }
function getCMSFields() { $fields = parent::getCMSFields(); $fieldList = array("Country" => "Country", "State" => "State", "City" => "City", "PostalCode" => "PostCode", "WeightMin" => "WeightMin", "WeightMax" => "WeightMax", "VolumeMin" => "VolumeMin", "VolumeMax" => "VolumeMax", "ValueMin" => "ValueMin", "ValueMax" => "ValueMax", "QuantityMin" => "QuantityMin", "QuantityMax" => "QuantityMax", "Rate" => "Rate"); $fieldTypes = array_merge(RegionRestriction::get_table_field_types(), array("WeightMin" => "TextField", "WeightMax" => "TextField", "VolumeMin" => "TextField", "VolumeMax" => "TextField", "ValueMin" => "TextField", "ValueMax" => "TextField", "QuantityMin" => "TextField", "QuantityMax" => "TextField", "Rate" => "TextField")); $fields->fieldByName('Root')->removeByName("Rates"); if ($this->isInDB()) { $tablefield = new TableField("Rates", "TableShippingRate", $fieldList, $fieldTypes); $tablefield->setCustomSourceItems($this->Rates()); $fields->addFieldToTab("Root.Main", $tablefield); } return $fields; }
public function getCMSFields() { $fields = parent::getCMSFields(); $fields->fieldByName('Root')->removeByName("DistanceFares"); if ($this->isInDB()) { $fields->addFieldToTab("Root.Main", $gridfield = GridField::create("DistanceFares", "Fares", $this->DistanceFares(), $config = new GridFieldConfig_RecordEditor())); $config->removeComponentsByType("GridFieldDataColumns"); $config->removeComponentsByType("GridFieldEditButton"); $config->removeComponentsByType("GridFieldDeleteAction"); $config->removeComponentsByType("GridFieldAddNewButton"); $config->addComponent($cols = new GridFieldEditableColumns()); $config->addComponent(new GridFieldDeleteAction()); $config->addComponent($addnew = new GridFieldAddNewInlineButton()); $addnew->setTitle($addnew->getTitle() . " Fare"); if ($greatest = $this->greatestCostDistance()) { $fields->insertAfter(LiteralField::create("costnote", "<p class=\"message\">Distances beyond the greatest specified distance will be cost " . $this->greatestCostDistance()->dbObject("Cost")->Nice() . " (the most expensive fare)</p>"), "DistanceFares"); } } return $fields; }