17 require_once
"./Services/Language/classes/class.ilObjLanguage.php";
18 require_once
"./Services/Object/classes/class.ilObjectGUI.php";
30 $this->
ilObjectGUI($a_data,$a_id,$a_call_by_reference,
false);
31 $_GET[
"sort_by"] =
"language";
32 $this->lng->loadLanguageModule(
'lng');
44 if (!$rbacsystem->checkAccess(
"visible,read",$this->object->getRefId()))
46 $this->
ilias->raiseError($this->lng->txt(
"permission_denied"),$this->
ilias->error_obj->MESSAGE);
50 if ($ilSetting->get(
"lang_ext_maintenance") ==
"1")
52 $ilToolbar->addButton($lng->txt(
"refresh_languages"),
53 $this->ctrl->getLinkTarget($this,
"confirmRefresh"));
57 $ilToolbar->addButton($lng->txt(
"refresh_languages"),
58 $this->ctrl->getLinkTarget($this,
"refresh"));
62 $ilToolbar->addButton($lng->txt(
"check_languages"),
63 $this->ctrl->getLinkTarget($this,
"checkLanguage"));
66 if ($rbacsystem->checkAccess(
"write",$this->object->getRefId()))
68 if ($ilSetting->get(
"lang_ext_maintenance") ==
"1")
70 $ilToolbar->addButton($lng->txt(
"disable_ext_lang_maint"),
71 $this->ctrl->getLinkTarget($this,
"disableExtendedLanguageMaintenance"));
75 $ilToolbar->addButton($lng->txt(
"enable_ext_lang_maint"),
76 $this->ctrl->getLinkTarget($this,
"enableExtendedLanguageMaintenance"));
79 if(!$ilSetting->get(
'lang_detection'))
81 $ilToolbar->addButton($lng->txt(
'lng_enable_language_detection'), $this->ctrl->getLinkTarget($this,
'enableLanguageDetection'));
85 $ilToolbar->addButton($lng->txt(
'lng_disable_language_detection'), $this->ctrl->getLinkTarget($this,
'disableLanguageDetection'));
89 include_once(
"./Services/Language/classes/class.ilLanguageTableGUI.php");
91 $tpl->setContent($ltab->getHTML());
99 $this->lng->loadLanguageModule(
"meta");
103 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
109 $key = $langObj->install();
113 $lang_installed[] = $key;
119 if (isset($lang_installed))
121 if (count($lang_installed) == 1)
123 $this->data = $this->lng->txt(
"meta_l_" . $lang_installed[0]) .
" " . strtolower($this->lng->txt(
"installed")) .
".";
127 foreach ($lang_installed as $lang_key)
129 $langnames[] = $this->lng->txt(
"meta_l_" . $lang_key);
131 $this->data = implode(
", ",$langnames) .
" " . strtolower($this->lng->txt(
"installed")) .
".";
136 $this->data = $this->lng->txt(
"languages_already_installed");
148 $this->lng->loadLanguageModule(
"meta");
152 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
158 $key = $langObj->install();
162 $lang_installed[] = $key;
168 $key = $langObj->install(
'local');
172 $local_installed[] = $key;
178 if (isset($lang_installed))
180 if (count($lang_installed) == 1)
182 $this->data = $this->lng->txt(
"meta_l_" . $lang_installed[0]) .
" " . strtolower($this->lng->txt(
"installed")) .
".";
186 foreach ($lang_installed as $lang_key)
188 $langnames[] = $this->lng->txt(
"meta_l_" . $lang_key);
190 $this->data = implode(
", ",$langnames) .
" " . strtolower($this->lng->txt(
"installed")) .
".";
194 if (isset($local_installed))
196 if (count($local_installed) == 1)
198 $this->data .=
" " . $this->lng->txt(
"meta_l_" . $local_installed[0]) .
" " . $this->lng->txt(
"local_language_file") .
" " . strtolower($this->lng->txt(
"installed")) .
".";
202 foreach ($local_installed as $lang_key)
204 $langnames[] = $this->lng->txt(
"meta_l_" . $lang_key);
206 $this->data .=
" " . implode(
", ",$langnames) .
" " . $this->lng->txt(
"local_language_files") .
" " . strtolower($this->lng->txt(
"installed")) .
".";
211 $this->data .=
" " . $this->lng->txt(
"local_languages_already_installed");
223 $this->lng->loadLanguageModule(
"meta");
227 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
234 if (!($sys_lang = $langObj->isSystemLanguage()))
235 if (!($usr_lang = $langObj->isUserLanguage()))
237 $key = $langObj->uninstall();
239 $lang_uninstalled[] = $key;
245 if (isset($lang_uninstalled))
247 if (count($lang_uninstalled) == 1)
249 $this->data = $this->lng->txt(
"meta_l_".$lang_uninstalled[0]).
" ".$this->lng->txt(
"uninstalled");
253 foreach ($lang_uninstalled as $lang_key)
255 $langnames[] = $this->lng->txt(
"meta_l_".$lang_key);
258 $this->data = implode(
", ",$langnames).
" ".$this->lng->txt(
"uninstalled");
263 $this->data = $this->lng->txt(
"cannot_uninstall_systemlanguage");
267 $this->data = $this->lng->txt(
"cannot_uninstall_language_in_use");
271 $this->data = $this->lng->txt(
"languages_already_uninstalled");
283 $this->data = $this->lng->txt(
"languages_updated");
295 $this->data = $this->lng->txt(
"selected_languages_updated");
296 $lng->loadLanguageModule(
"meta");
298 $refreshed = array();
302 if ($langObj->refresh())
304 $refreshed[] = $langObj->getKey();
305 $this->data .=
"<br />". $lng->txt(
"meta_l_".$langObj->getKey());
320 $this->lng->loadLanguageModule(
"meta");
322 require_once
'./Services/User/classes/class.ilObjUser.php';
326 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
329 if (count(
$_POST[
"id"]) != 1)
331 $this->
ilias->raiseError($this->lng->txt(
"choose_only_one_language").
"<br/>".$this->lng->txt(
"action_aborted"),$this->
ilias->error_obj->MESSAGE);
338 if ($newUserLangObj->isUserLanguage())
340 $this->
ilias->raiseError($this->lng->txt(
"meta_l_".$newUserLangObj->getKey()).
" ".$this->lng->txt(
"is_already_your").
" ".$this->lng->txt(
"user_language").
"<br/>".$this->lng->txt(
"action_aborted"),$this->
ilias->error_obj->MESSAGE);
343 if ($newUserLangObj->isInstalled() ==
false)
345 $this->
ilias->raiseError($this->lng->txt(
"meta_l_".$newUserLangObj->getKey()).
" ".$this->lng->txt(
"language_not_installed").
"<br/>".$this->lng->txt(
"action_aborted"),$this->
ilias->error_obj->MESSAGE);
349 $curUser->setLanguage($newUserLangObj->getKey());
353 $this->data = $this->lng->txt(
"user_language").
" ".$this->lng->txt(
"changed_to").
" ".$this->lng->txt(
"meta_l_".$newUserLangObj->getKey()).
".";
364 $this->lng->loadLanguageModule(
"meta");
368 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
371 if (count(
$_POST[
"id"]) != 1)
373 $this->
ilias->raiseError($this->lng->txt(
"choose_only_one_language").
"<br/>".$this->lng->txt(
"action_aborted"),$this->
ilias->error_obj->MESSAGE);
380 if ($newSysLangObj->isSystemLanguage())
382 $this->
ilias->raiseError($this->lng->txt(
"meta_l_".$newSysLangObj->getKey()).
" is already the system language!<br>Action aborted!",$this->
ilias->error_obj->MESSAGE);
385 if ($newSysLangObj->isInstalled() ==
false)
387 $this->
ilias->raiseError($this->lng->txt(
"meta_l_".$newSysLangObj->getKey()).
" is not installed. Please install that language first.<br>Action aborted!",$this->
ilias->error_obj->MESSAGE);
390 $this->
ilias->setSetting(
"language", $newSysLangObj->getKey());
393 $this->
ilias->ini->setVariable(
"language",
"default",$newSysLangObj->getKey());
394 $this->
ilias->ini->write();
396 $this->data = $this->lng->txt(
"system_language").
" ".$this->lng->txt(
"changed_to").
" ".$this->lng->txt(
"meta_l_".$newSysLangObj->getKey()).
".";
409 $this->data = $this->
object->checkAllLanguages();
417 $this->ctrl->redirect($this,
"view");
434 if ($rbacsystem->checkAccess(
"visible,read",$this->object->getRefId()))
436 $tabs_gui->addTarget(
"settings",
437 $this->ctrl->getLinkTarget($this,
"view"), array(
"view",
""),
"",
"");
440 if ($rbacsystem->checkAccess(
'edit_permission',$this->object->getRefId()))
442 $tabs_gui->addTarget(
"perm_settings",
443 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'),
"perm"), array(
"perm",
"info",
"owner"),
'ilpermissiongui');
449 $next_class = $this->ctrl->getNextClass($this);
450 $cmd = $this->ctrl->getCmd();
455 case 'ilpermissiongui':
456 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
458 $ret =& $this->ctrl->forwardCommand($perm_gui);
481 $ilSetting->set(
"lang_ext_maintenance", 1);
482 $ilCtrl->redirect($this,
"view");
492 $ilSetting->set(
"lang_ext_maintenance", 0);
493 $ilCtrl->redirect($this,
"view");
500 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
502 $conf_screen->setFormAction($ilCtrl->getFormAction($this));
503 $conf_screen->setHeaderText($lng->txt(
"lang_refresh_confirm"));
504 $conf_screen->addItem(
"d",
"d", $lng->txt(
"lang_refresh_confirm_info"));
505 $conf_screen->setCancel($lng->txt(
"cancel"),
"view");
506 $conf_screen->setConfirm($lng->txt(
"ok"),
"refresh");
508 $this->tpl->setContent($conf_screen->getHTML());
517 $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->
ilias->error_obj->MESSAGE);
520 $lng->loadLanguageModule(
"meta");
521 include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
523 $conf_screen->setFormAction($ilCtrl->getFormAction($this));
524 $conf_screen->setHeaderText($lng->txt(
"lang_refresh_confirm_selected"));
528 $conf_screen->addItem(
"id[]", $id, $lng->txt(
"meta_l_".$lang_title));
530 $conf_screen->addItem(
"d",
"d", $lng->txt(
"lang_refresh_confirm_info"));
531 $conf_screen->setCancel($lng->txt(
"cancel"),
"view");
532 $conf_screen->setConfirm($lng->txt(
"ok"),
"refreshSelected");
533 $this->tpl->setContent($conf_screen->getHTML());
545 "install" => array(
"name" =>
"install",
"lng" =>
"install"),
546 "installLocal" => array(
"name" =>
"installLocal",
"lng" =>
"install_local"),
547 "uninstall" => array(
"name" =>
"uninstall",
"lng" =>
"uninstall"),
548 "refresh" => $ilSetting->get(
"lang_ext_maintenance") ==
"1" ?
549 array(
"name" =>
"confirmRefreshSelected",
"lng" =>
"refresh") :
550 array(
"name" =>
"RefreshSelected",
"lng" =>
"refresh"),
551 "setSystemLanguage" => array(
"name" =>
"setSystemLanguage",
"lng" =>
"setSystemLanguage"),
552 "setUserLanguage" => array(
"name" =>
"setUserLanguage",
"lng" =>
"setUserLanguage")
559 protected function disableLanguageDetectionObject()
566 $ilSetting->set(
'lang_detection', 0);
574 protected function enableLanguageDetectionObject()
581 $ilSetting->set(
'lang_detection', 1);
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
refreshSelectedObject()
update selected languages
installObject()
install languages
refreshObject()
update all installed languages
setSystemLanguageObject()
set the system language
setUserLanguageObject()
set user language
getTabs(&$tabs_gui)
get tabs public
ilObjectGUI($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
Constructor public.
static _lookupTitle($a_id)
lookup object title
confirmRefreshSelectedObject()
disableExtendedLanguageMaintenanceObject()
Disable extended language maintenance.
installLocalObject()
Install local language modifications.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
ilObjLanguageFolderGUI($a_data, $a_id, $a_call_by_reference)
Constructor.
Class ilObjectGUI Basic methods of all Output classes.
redirection script todo: (a better solution should control the processing via a xml file) ...
prepareOutput()
prepare output
viewObject()
show installed languages
enableExtendedLanguageMaintenanceObject()
Enable extended language maintenance.
uninstallObject()
uninstall language
static refreshAll()
Refresh all installed languages.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static refreshPlugins($a_lang_keys=null)
checkLanguageObject()
check all languages
Class ilObjLanguageFolderGUI.
Confirmation screen class.