1
|
|
|
<?php |
2
|
|
|
|
3
|
|
|
namespace AntonyThorpe\FormFieldAdditionalClasses\Tests; |
4
|
|
|
|
5
|
|
|
use SilverStripe\Control\Controller; |
6
|
|
|
use SilverStripe\Control\HTTPRequest; |
7
|
|
|
use SilverStripe\Dev\TestOnly; |
8
|
|
|
use SilverStripe\Forms\CheckboxField; |
9
|
|
|
use SilverStripe\Forms\CompositeField; |
10
|
|
|
use SilverStripe\Forms\FieldGroup; |
11
|
|
|
use SilverStripe\Forms\FieldList; |
12
|
|
|
use SilverStripe\Forms\Form; |
13
|
|
|
use SilverStripe\Forms\FormAction; |
14
|
|
|
use SilverStripe\Forms\OptionsetField; |
15
|
|
|
use SilverStripe\Forms\TextField; |
16
|
|
|
use SilverStripe\View\SSViewer; |
17
|
|
|
|
18
|
|
|
class FormTestController extends Controller implements TestOnly |
19
|
|
|
{ |
20
|
|
|
protected $template = 'BlankPage'; |
21
|
|
|
|
22
|
|
|
public function Link($action = null) |
23
|
|
|
{ |
24
|
|
|
return Controller::join_links( |
25
|
|
|
'FormTestController', |
26
|
|
|
$this->getRequest()->latestParam('Action'), |
27
|
|
|
$this->getRequest()->latestParam('ID'), |
28
|
|
|
$action |
29
|
|
|
); |
30
|
|
|
} |
31
|
|
|
|
32
|
|
|
public function Form() |
33
|
|
|
{ |
34
|
|
|
$form = Form::create( |
35
|
|
|
$this, |
36
|
|
|
'Form', |
37
|
|
|
FieldList::create( |
38
|
|
|
TextField::create('Spaceship', 'Spaceship'), |
39
|
|
|
CheckboxField::create('CheckboxFieldExample', 'Checkbox Field Example'), |
40
|
|
|
CompositeField::create( |
41
|
|
|
TextField::create('CompositeFieldOne', 'Composite Field One'), |
42
|
|
|
TextField::create('CompositeFieldTwo', 'Composite Field Two'), |
43
|
|
|
)->setTitle('Composite Field Name'), |
44
|
|
|
OptionsetField::create( |
45
|
|
|
'Accessories', |
46
|
|
|
'Accessories', |
47
|
|
|
array( |
48
|
|
|
'Flying High DVD' => 'Flying High DVD', |
49
|
|
|
'Zero Gravity Pillow' => 'Zero Gravity Pillow', |
50
|
|
|
'Rocket Replica' => 'Rocket Replica' |
51
|
|
|
), |
52
|
|
|
'Zero Gravity Pillow' |
53
|
|
|
)->setDescription('Make your selection'), |
54
|
|
|
FieldGroup::create( |
55
|
|
|
TextField::create('FieldGroupFieldOne', 'FieldGroup Field One'), |
56
|
|
|
TextField::create('FieldGroupFieldTwo', 'FieldGroup Field Two'), |
57
|
|
|
)->setTitle('Blast Off') |
58
|
|
|
// add any new fields here and then write assertion tests |
59
|
|
|
), |
60
|
|
|
FieldList::create( |
61
|
|
|
FormAction::create('doSubmit', 'Submit') |
62
|
|
|
) |
63
|
|
|
); |
64
|
|
|
return $form; |
65
|
|
|
} |
66
|
|
|
} |
67
|
|
|
|