Browse files

BUGFIX Using try/catch in MemberTableField->saveComplexTableField() s…

…imiliar to parent implementation, which means trying to save a Member duplicate doesn't end up in a fatal error (fixes #5444) (from r103336)

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/cms/trunk@111662 467b73ca-7a2a-4603-9d3b-597d59a354a9
  • Loading branch information...
1 parent cdfbc8a commit 7ee0ad5fa6f5edf20b5c312351b75c876b996abb @sminnee sminnee committed Oct 4, 2010
Showing with 8 additions and 2 deletions.
  1. +8 −2 code/MemberTableField.php
View
10 code/MemberTableField.php
@@ -352,8 +352,14 @@ function saveComplexTableField($data, $form, $params) {
// Needs to write before saveInto() to ensure the 'Groups' TreeMultiselectField saves
$childData->write();
- $form->saveInto($childData);
- $childData->write();
+ try {
+ $form->saveInto($childData);
+ $childData->write();
+ } catch(ValidationException $e) {
+ var_dump($e->getResult());
+ $form->sessionMessage($e->getResult()->message(), 'bad');
+ return Director::redirectBack();
+ }
$closeLink = sprintf(
'<small><a href="' . $_SERVER['HTTP_REFERER'] . '" onclick="javascript:window.top.GB_hide(); return false;">(%s)</a></small>',

0 comments on commit 7ee0ad5

Please sign in to comment.