コード例 #1
0
ファイル: api.lib.php プロジェクト: feroli1000/chamilo-lms
/**
 * Gets language of the requested type for the current user. Types are :
 * user_profil_lang : profile language of current user
 * user_select_lang : language selected by user at login
 * course_lang : language of the current course
 * platform_lang : default platform language
 * @param string $lang_type
 * @return string
 **/
function api_get_language_from_type($lang_type)
{
    $return = false;
    $language = false;
    switch ($lang_type) {
        case 'platform_lang':
            $platformLanguage = api_get_setting('language.platform_language');
            if (!empty($platformLanguage)) {
                $language = $platformLanguage;
            }
            break;
        case 'user_profil_lang':
            $_user = Session::read('_user');
            if (isset($_user['language']) && !empty($_user['language'])) {
                $language = $_user['language'];
            }
            break;
        case 'user_selected_lang':
            $language = api_get_language_selected_in_login();
            break;
        case 'course_lang':
            $_course = api_get_course_info();
            if (isset($_course['language']) && !empty($_course['language'])) {
                $language = $_course['language'];
            }
            break;
        default:
            $language = false;
            break;
    }
    return $language;
}
コード例 #2
0
ファイル: api.lib.php プロジェクト: ragebat/chamilo-lms
function api_get_language_interface()
{
    $valid_languages = api_get_languages();
    $user_language = api_get_user_language();
    $courseInfo = api_get_course_info();
    $language_interface = 'english';
    $languageFromLogin = api_get_language_selected_in_login();
    if (!empty($languageFromLogin)) {
        $language_interface = $languageFromLogin;
    }
    if (!empty($valid_languages)) {
        // User language or platform lang
        //platformLanguage
        //if (!empty($user_language)) {
        $language_interface = $user_language;
        //}
        // Course language
        if (!empty($courseInfo) && isset($courseInfo['language'])) {
            $language_interface = $courseInfo['language'];
        }
        //error_log('$language_interface: '.$language_interface);
        // Lang priorities could be: course_lang, user_profil_lang, user_selected_lang , platform_lang
        $language_priority1 = api_get_setting('languagePriority1');
        $language_priority2 = api_get_setting('languagePriority2');
        $language_priority3 = api_get_setting('languagePriority3');
        $language_priority4 = api_get_setting('languagePriority4');
        /*error_log('$language_interface1: '.$language_priority1);
          error_log('$language_interface2: '.$language_priority2);
          error_log('$language_interface3: '.$language_priority3);
          error_log('$language_interface4: '.$language_priority4);*/
        if (!empty($language_priority4) && api_get_language_from_type($language_priority4) !== false) {
            $language_interface = api_get_language_from_type($language_priority4);
        }
        if (!empty($language_priority3) && api_get_language_from_type($language_priority3) !== false) {
            $language_interface = api_get_language_from_type($language_priority3);
        }
        if (!empty($language_priority2) && api_get_language_from_type($language_priority2) !== false) {
            $language_interface = api_get_language_from_type($language_priority2);
        }
        if (!empty($language_priority1) && api_get_language_from_type($language_priority1) !== false) {
            $language_interface = api_get_language_from_type($language_priority1);
        }
        // If user lang is not valid get the default platform lang
        if (empty($language_interface) || !in_array($language_interface, $valid_languages['folder'])) {
            $language_interface = api_get_setting('platformLanguage');
        }
    }
    return $language_interface;
}