/** * Validator for group field during registration */ public function validateGroupId() { if ($this->scenario == static::SCENARIO_REGISTRATION) { if ($this->group_id != '') { $registrationGroups = Group::getRegistrationGroups(); foreach ($registrationGroups as $group) { if ($this->group_id == $group->id) { return; } } // Not found group in groups available during registration $this->addError('group_id', 'Invalid group given!'); } } }
/** * Returns Password model * * @return Password */ public function getGroupUser() { if ($this->_groupUser === null) { $this->_groupUser = new GroupUser(); $this->_groupUser->scenario = GroupUser::SCENARIO_REGISTRATION; // assign default value for group_id $registrationGroups = \humhub\modules\user\models\Group::getRegistrationGroups(); if (count($registrationGroups) == 1) { $this->_groupUser->group_id = $registrationGroups[0]->id; } } return $this->_groupUser; }