/** * Assign members to a role * * @return void */ public function delegateTask() { Request::setVar('hidemainmenu', 1); $ids = Request::getVar('id', array()); $ids = !is_array($ids) ? array($ids) : $ids; $gid = Request::getVar('gid', ''); $roleid = Request::getInt('roleid', 0); if (!$gid) { App::redirect(Route::url('index.php?option=' . $this->_option, false), Lang::txt('COM_GROUPS_MISSING_ID'), 'error'); } $group = new Group(); $group->read($gid); foreach ($ids as $id) { $model = \Components\Groups\Models\Member\Role::oneByUserAndRole((int) $id, $roleid); if (!$model->get('id')) { $model->set('roleid', $roleid); $model->set('uidNumber', (int) $id); $model->save(); } } $this->cancelTask(); }