29 $this->tabs_gui = $ilTabs;
31 $this->lng->loadLanguageModule(
'registration');
32 $this->lng->loadLanguageModule(
'auth');
35 $this->ref_id = $a_auth_ref_id;
51 $next_class = $this->ctrl->getNextClass($this);
52 $cmd = $this->ctrl->getCmd(
"settings");
54 if(!$ilAccess->checkAccess(
'read',
'',$this->ref_id))
56 $ilErr->raiseError($this->lng->txt(
'msg_no_perm_write'),$ilErr->WARNING);
59 if(!$ilAccess->checkAccess(
'write',
'',$this->ref_id) &&
$cmd !=
"settings")
62 $ilCtrl->redirect($this,
"settings");
89 include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
91 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.settings.html',
'Services/Radius');
94 $form->setFormAction($this->ctrl->getFormAction($this));
95 $form->setTitle($this->lng->txt(
'auth_radius_configure'));
101 $form->addItem($check);
103 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_name'),
'name');
105 $text->setInfo($this->lng->txt(
'auth_radius_name_desc'));
106 $text->setValue($this->
settings->getName());
108 $text->setMaxLength(64);
109 $form->addItem($text);
111 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_server'),
'servers');
113 $text->setInfo($this->lng->txt(
'auth_radius_server_desc'));
114 $text->setValue($this->
settings->getServersAsString());
116 $text->setMaxLength(255);
117 $form->addItem($text);
120 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_port'),
'port');
122 $text->setValue($this->
settings->getPort());
124 $text->setMaxLength(5);
125 $form->addItem($text);
127 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_shared_secret'),
'secret');
129 $text->setValue($this->
settings->getSecret());
131 $text->setMaxLength(32);
132 $form->addItem($text);
134 $encoding =
new ilSelectInputGUI($this->lng->txt(
'auth_radius_charset'),
'charset');
137 $encoding->setValue($this->
settings->getCharset());
138 $encoding->setInfo($this->lng->txt(
'auth_radius_charset_info'));
139 $form->addItem($encoding);
143 $check->
setInfo($this->lng->txt(
'auth_radius_sync_info'));
144 $check->setChecked($this->
settings->enabledCreation() ? 1 : 0);
148 $select =
new ilSelectInputGUI($this->lng->txt(
'auth_radius_role_select'),
'role');
150 $select->setValue($this->
settings->getDefaultRole());
151 $check->addSubItem($select);
154 $migr->
setInfo($this->lng->txt(
'auth_rad_migration_info'));
155 $migr->setChecked($this->
settings->isAccountMigrationEnabled() ? 1 : 0);
157 $check->addSubItem($migr);
158 $form->addItem($check);
160 $form->addCommandButton(
'save',$this->lng->txt(
'save'));
161 $this->tpl->setVariable(
'SETTINGS_TABLE',$form->getHTML());
177 $this->
settings->setDefaultRole((
int) $_POST[
'role']);
178 $this->
settings->enableCreation((
int) $_POST[
'sync']);
179 $this->
settings->enableAccountMigration((
int) $_POST[
'migration']);
180 $this->
settings->setCharset((
int) $_POST[
'charset']);
182 if(!$this->
settings->validateRequired())
188 if(!$this->
settings->validatePort())
194 if(!$this->
settings->validateServers())
215 include_once(
'Services/Radius/classes/class.ilRadiusSettings.php');
223 global $rbacreview,$ilObjDataCache;
230 $select[0] = $this->lng->txt(
'links_select_one');
231 foreach($global_roles as $role_id)