17require_once 
"./Services/Language/classes/class.ilObjLanguage.php";
 
   18require_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"));
 
   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);
 
  482                $ilCtrl->redirect($this, 
"view");
 
  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()
 
  574        protected function enableLanguageDetectionObject()
 
Confirmation screen class.
Class ilObjLanguageFolderGUI.
checkLanguageObject()
check all languages
setSystemLanguageObject()
set the system language
installLocalObject()
Install local language modifications.
installObject()
install languages
refreshSelectedObject()
update selected languages
ilObjLanguageFolderGUI($a_data, $a_id, $a_call_by_reference)
Constructor.
viewObject()
show installed languages
enableExtendedLanguageMaintenanceObject()
Enable extended language maintenance.
setUserLanguageObject()
set user language
confirmRefreshSelectedObject()
getAdminTabs(&$tabs_gui)
administration tabs show only permissions and trash folder
refreshObject()
update all installed languages
& executeCommand()
execute command
getTabs(&$tabs_gui)
get tabs @access public
disableExtendedLanguageMaintenanceObject()
Disable extended language maintenance.
uninstallObject()
uninstall language
static refreshPlugins($a_lang_keys=null)
static refreshAll()
Refresh all installed languages.
Class ilObjectGUI Basic methods of all Output classes.
ilObjectGUI($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
prepareOutput()
prepare output
static _lookupTitle($a_id)
lookup object title
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
redirection script todo: (a better solution should control the processing via a xml file)