mirror of
https://github.com/silverstripe/silverstripe-frameworktest
synced 2024-10-22 11:06:02 +02:00
50 lines
1.3 KiB
PHP
50 lines
1.3 KiB
PHP
<?php
|
|
|
|
use SilverStripe\FrameworkTest\Model\TestPage;
|
|
use SilverStripe\FrameworkTest\Model\TestPage_Controller;
|
|
use SilverStripe\Security\Member;
|
|
use SilverStripe\Forms\EmailField;
|
|
use SilverStripe\Forms\FileField;
|
|
use SilverStripe\AssetAdmin\Forms\UploadField;
|
|
use SilverStripe\Control\HTTPResponse;
|
|
use SilverStripe\Forms\FieldList;
|
|
use SilverStripe\Forms\FormAction;
|
|
use SilverStripe\Forms\Form;
|
|
|
|
|
|
class TestFileUploadPage extends TestPage
|
|
{
|
|
private static $table_name = 'TestFileUploadPage';
|
|
}
|
|
|
|
class TestFileUploadPage_Controller extends TestPage_Controller
|
|
{
|
|
private static $allowed_actions = array(
|
|
'Form'
|
|
);
|
|
|
|
public function Form()
|
|
{
|
|
$fields = new FieldList(
|
|
new EmailField('Email', 'EmailField'),
|
|
new FileField('AFile', 'FileField'),
|
|
$aImage = new UploadField('AImage', 'SimpleImageField')
|
|
);
|
|
|
|
$aImage->allowedExtensions = array('jpg', 'gif', 'png');
|
|
|
|
$actions = new FieldList(
|
|
new FormAction('addMember', "Add a member with two Files uploaded")
|
|
);
|
|
return new Form($this, "Form", $fields, $actions);
|
|
}
|
|
|
|
public function addMember(array $data, Form $form): HTTPResponse
|
|
{
|
|
$member = new Member();
|
|
$form->saveInto($member);
|
|
$member->write();
|
|
return $this->redirectBack();
|
|
}
|
|
}
|