mirror of
https://github.com/silverstripe/silverstripe-reports
synced 2024-10-22 11:05:53 +02:00
BUGFIX: Catch and display validation errors when adding a page.
This commit is contained in:
parent
098d3b6b8a
commit
cdea489fcb
@ -118,10 +118,17 @@ class CMSPageAddController extends CMSPageEditController {
|
||||
if(!SiteConfig::current_site_config()->canCreateTopLevel())
|
||||
return Security::permissionFailure($this);
|
||||
}
|
||||
|
||||
|
||||
$record = $this->getNewItem("new-$className-$parentID".$suffix, false);
|
||||
if(class_exists('Translatable') && $record->hasExtension('Translatable')) $record->Locale = $data['Locale'];
|
||||
$record->write();
|
||||
|
||||
try {
|
||||
$record->write();
|
||||
} catch(ValidationException $ex) {
|
||||
$form->sessionMessage($ex->getResult()->message(), 'bad');
|
||||
return $this->getResponseNegotiator()->respond($this->request);
|
||||
}
|
||||
|
||||
$editController = singleton('CMSPageEditController');
|
||||
$editController->setCurrentPageID($record->ID);
|
||||
|
||||
|
@ -1,37 +1,36 @@
|
||||
<% with AddForm %>
|
||||
<form $FormAttributes data-layout-type="border">
|
||||
|
||||
<div class="cms-content-header north">
|
||||
<div class="cms-content-header-info">
|
||||
<h2><% _t('CMSAddPageController.Title','Add page') %></h2>
|
||||
<div class="cms-content center $BaseCSSClasses" data-layout-type="border" data-pjax-fragment="Content">
|
||||
<% with AddForm %>
|
||||
<form $FormAttributes data-layout-type="border">
|
||||
<div class="cms-content-header north">
|
||||
<div class="cms-content-header-info">
|
||||
<h2><% _t('CMSAddPageController.Title','Add page') %></h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="cms-content-fields center cms-panel-content cms-panel-padded">
|
||||
|
||||
<% if Message %>
|
||||
<p id="{$FormName}_error" class="message $MessageType">$Message</p>
|
||||
<% else %>
|
||||
<p id="{$FormName}_error" class="message $MessageType" style="display: none"></p>
|
||||
<% end_if %>
|
||||
|
||||
<fieldset>
|
||||
<% if Legend %><legend>$Legend</legend><% end_if %>
|
||||
<% loop Fields %>
|
||||
$FieldHolder
|
||||
<% end_loop %>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<div class="cms-content-actions south">
|
||||
<% if Actions %>
|
||||
<div class="Actions">
|
||||
<% loop Actions %>
|
||||
$Field
|
||||
<% end_loop %>
|
||||
|
||||
<div class="cms-content-fields center cms-panel-content cms-panel-padded">
|
||||
<% if Message %>
|
||||
<p id="{$FormName}_error" class="message $MessageType">$Message</p>
|
||||
<% else %>
|
||||
<p id="{$FormName}_error" class="message $MessageType" style="display: none"></p>
|
||||
<% end_if %>
|
||||
|
||||
<fieldset>
|
||||
<% if Legend %><legend>$Legend</legend><% end_if %>
|
||||
<% loop Fields %>
|
||||
$FieldHolder
|
||||
<% end_loop %>
|
||||
</fieldset>
|
||||
</div>
|
||||
<% end_if %>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
<% end_with %>
|
||||
|
||||
<div class="cms-content-actions south">
|
||||
<% if Actions %>
|
||||
<div class="Actions">
|
||||
<% loop Actions %>
|
||||
$Field
|
||||
<% end_loop %>
|
||||
</div>
|
||||
<% end_if %>
|
||||
</div>
|
||||
</form>
|
||||
<% end_with %>
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user