MembershipCheckoutComponent::getFormFields PHP Method

getFormFields() public method

public getFormFields ( Order $order, Form $form = null )
$order Order
$form Form
    public function getFormFields(Order $order, Form $form = null)
    {
        $fields = FieldList::create();
        if (Member::currentUserID()) {
            return $fields;
        }
        $idfield = Member::config()->unique_identifier_field;
        if (!$order->{$idfield} && ($form && !$form->Fields()->fieldByName($idfield))) {
            //TODO: scaffold the correct id field type
            $fields->push(TextField::create($idfield, $idfield));
        }
        $fields->push($this->getPasswordField());
        return $fields;
    }

Usage Example

 public function getFormFields(Order $order)
 {
     $fields = parent::getFormFields($order);
     if (!$fields->exists()) {
         return $fields;
     }
     $checkbox = CheckboxField::create('RegisterAnAccount', _t('DependantMembershipCheckoutComponent.REGISTER_ACCOUNT', 'Register an account'), $this->checked);
     return FieldList::create($checkbox, CompositeField::create(parent::getFormFields($order))->setName('RegisterAccount-Holder')->setAttribute('data-show-if', '[name=' . get_class($this) . '_RegisterAnAccount]:checked'));
 }