public function Form()
{
$form = parent::Form();
$object = $this->dataRecord;
$requirements = new RequiredFields(array("Quantity"));
// First add customisations from global lists
if ($object->CustomisationListID) {
foreach ($object->CustomisationList()->Customisations() as $customisation) {
$field = $customisation->Field();
$form->Fields()->insertBefore($field, "Quantity");
// Check if field required
if ($customisation->Required) {
// Manualy make field required (as SS seems to ignore this step)
$field->setAttribute("required", true)->addExtraClass("required");
$form->getValidator()->addRequiredField($field->getName());
}
}
}
// If product colour customisations are set, add them to the item form
if ($object->Customisations()->exists()) {
foreach ($object->Customisations() as $customisation) {
$field = $customisation->Field();
$form->Fields()->insertBefore($field, "Quantity");
// Check if field required
if ($customisation->Required) {
// Manualy make field required (as SS seems to ignore this step)
$field->setAttribute("required", true)->addExtraClass("required");
$form->getValidator()->addRequiredField($field->getName());
}
}
}
return $form;
}