/**
* @return Form
*/
public function getDataTransferForm($request)
{
// Performs canView permission check by limiting visible projects
$envs = $this->getCurrentProject()->DNEnvironmentList()->filterByCallback(function ($item) {
return $item->canBackup();
});
if (!$envs) {
return new SS_HTTPResponse("Environment '" . Convert::raw2xml($request->latestParam('Environment')) . "' not found.", 404);
}
$form = new Form($this, 'DataTransferForm', new FieldList(new HiddenField('Direction', false, 'get'), new DropdownField('EnvironmentID', 'Environment', $envs->map()), new DropdownField('Mode', 'Transfer', DNDataArchive::get_mode_map())), new FieldList(FormAction::create('doDataTransfer', 'Create')->addExtraClass('btn')));
$form->setFormAction($request->getURL() . '/DataTransferForm');
return $form;
}