diff --git a/security/Group.php b/security/Group.php index 0f3808b9a..b940912cb 100644 --- a/security/Group.php +++ b/security/Group.php @@ -181,7 +181,8 @@ class Group extends DataObject { } /** - * Add a member to a group. + * Add a member to a group. This will create the group if the given + * group code doesn't work. * * @param DataObject $member * @param string $groupcode @@ -192,6 +193,15 @@ class Group extends DataObject { $member->Groups()->add($group); $member->write(); } + else { + $group = new Group(); + $group->Code = $groupcode; + $group->Title = $groupcode; + $group->write(); + + $member->Groups()->add($group); + $member->write(); + } } /**