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');
93 $this->lng->loadLanguageModule(
'auth');
96 $form->setFormAction($this->ctrl->getFormAction($this));
97 $form->setTitle($this->lng->txt(
'auth_radius_configure'));
103 $form->addItem($check);
105 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_name'),
'name');
107 $text->setInfo($this->lng->txt(
'auth_radius_name_desc'));
108 $text->setValue($this->
settings->getName());
110 $text->setMaxLength(64);
111 $form->addItem($text);
113 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_server'),
'servers');
115 $text->setInfo($this->lng->txt(
'auth_radius_server_desc'));
116 $text->setValue($this->
settings->getServersAsString());
118 $text->setMaxLength(255);
119 $form->addItem($text);
122 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_port'),
'port');
124 $text->setValue($this->
settings->getPort());
126 $text->setMaxLength(5);
127 $form->addItem($text);
129 $text =
new ilTextInputGUI($this->lng->txt(
'auth_radius_shared_secret'),
'secret');
131 $text->setValue($this->
settings->getSecret());
133 $text->setMaxLength(32);
134 $form->addItem($text);
136 $encoding =
new ilSelectInputGUI($this->lng->txt(
'auth_radius_charset'),
'charset');
139 $encoding->setValue($this->
settings->getCharset());
140 $encoding->setInfo($this->lng->txt(
'auth_radius_charset_info'));
141 $form->addItem($encoding);
149 #$sync->setInfo($this->lng->txt('auth_radius_sync_info'));
150 $form->addItem($sync);
154 $this->lng->txt(
'disabled'),
158 #$dis->setInfo($this->lng->txt('auth_radius_sync_disabled_info'));
159 $sync->addOption($dis);
163 $this->lng->txt(
'auth_radius_sync_rad'),
167 $rad->
setInfo($this->lng->txt(
'auth_radius_sync_rad_info'));
168 $sync->addOption($rad);
170 $select =
new ilSelectInputGUI($this->lng->txt(
'auth_radius_role_select'),
'role');
172 $select->setValue($this->
settings->getDefaultRole());
173 $rad->addSubItem($select);
176 $migr->
setInfo($this->lng->txt(
'auth_rad_migration_info'));
177 $migr->setChecked($this->
settings->isAccountMigrationEnabled() ? 1 : 0);
179 $rad->addSubItem($migr);
182 include_once
'./Services/LDAP/classes/class.ilLDAPServer.php';
185 if(count($server_ids))
188 $this->lng->txt(
'auth_radius_ldap'),
192 $ldap->
setInfo($this->lng->txt(
'auth_radius_ldap_info'));
193 $sync->addOption($ldap);
205 $this->
settings->enabledCreation() ?
210 $form->addCommandButton(
'save',$this->lng->txt(
'save'));
211 $this->tpl->setVariable(
'SETTINGS_TABLE',$form->getHTML());
227 $this->
settings->setDefaultRole((
int) $_POST[
'role']);
228 $this->
settings->enableAccountMigration((
int) $_POST[
'migration']);
229 $this->
settings->setCharset((
int) $_POST[
'charset']);
232 if(!$this->
settings->validateRequired())
238 if(!$this->
settings->validatePort())
244 if(!$this->
settings->validateServers())
251 include_once
'./Services/LDAP/classes/class.ilLDAPServer.php';
252 switch((
int) $_POST[
'sync'])
283 include_once(
'Services/Radius/classes/class.ilRadiusSettings.php');
291 global $rbacreview,$ilObjDataCache;
298 $select[0] = $this->lng->txt(
'links_select_one');
299 foreach($global_roles as $role_id)