Exemplo n.º 1
0
 public function testFieldsets()
 {
     $form = Builder::form(['submit' => Builder::submit()])->fieldsets(['personal' => ['name' => Builder::text(), 'surname' => Builder::text(), 'age' => Builder::number()]]);
     $this->assertCount(4, $form);
     $this->assertCount(1, $form->fieldsets());
     $this->assertCount(3, $form->fieldsets()['personal']);
     $form->clear()->add(['other' => Builder::text()]);
     $this->assertCount(1, $form);
 }
Exemplo n.º 2
0
 public function testBasic()
 {
     $this->_testElement(Builder::submit());
     $this->_testField(Builder::submit(), false);
     $this->_testRequired(Builder::submit());
 }
Exemplo n.º 3
0
<?php

require __DIR__ . '/src/autoloader.php';
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
ini_set('log_errors', 1);
ini_set('error_log', __DIR__ . '/php.log');
use FormManager\Builder as F;
use FormManager\InvalidValueException;
$form = F::Form(['data' => F::group(['dia' => F::number()->label('Dia'), 'mes' => F::number()->label('Mes')]), 'colores' => F::choose(['red' => F::radio()->label('Red'), 'blue' => F::radio()->label('Blue'), 'green' => F::radio()->label('Green')]), 'personas' => F::collection(['nome' => F::text()->label('Nome'), 'apelido' => F::text()->label('Apelidos')]), 'bloques' => F::collectionMultiple(['texto' => ['titulo' => F::text()->label('Titulo'), 'texto' => F::textarea()->label('Texto')], 'cita' => ['texto' => F::textarea()->label('Texto'), 'autor' => F::text()->label('Autor')]]), 'enviar' => F::submit()->html('Enviar')]);
$form->fieldsets(['personal' => ['nome' => F::text()->label('O teu nome')->addValidator(function ($input) {
    if ($input->val() !== 'Lolo') {
        throw new InvalidValueException('Nome non valido, debe ser Lolo');
    }
})->datalist(['Lolo' => 'Lolo', 'Manolo' => 'Manolo']), 'apelido' => F::text()->label('O teu apelido'), 'idade' => F::select()->options([1 => 'Menor de idade', 2 => 'Maiore de idade'])->label('Idade')->render(function ($input) {
    return '<p>' . $input . '</p>';
})]]);
$form['nome']->errorLabel->class('my-error');
$form->loadFromGlobals();
if (!$form->isValid()) {
    echo 'Invalid values';
}
echo $form;