Skip to content

Commit

Permalink
bug 3111: cleaner code for get_browser_language (no more reference as…
Browse files Browse the repository at this point in the history
… parameter)

git-svn-id: http://piwigo.org/svn/trunk@29840 68402e56-0260-453c-a942-63ccdbb3a9ee
  • Loading branch information
plegall committed Sep 30, 2014
1 parent 7e5722c commit 18f045b
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 17 deletions.
22 changes: 7 additions & 15 deletions include/functions_user.inc.php
Expand Up @@ -219,18 +219,12 @@ function register_user($login, $password, $mail_address, $notify_admin=true, &$e
mass_inserts(USER_GROUP_TABLE, array('user_id', 'group_id'), $inserts);
}

$override = null;
if ($notify_admin and $conf['browser_language'])
$override = array();
if ($language = get_browser_language())
{
// if function get_browser_language finds a language in the browser
// which matches a language activated in Piwigo, then it sets
// $override['language'] to 'ru' (for example) and returns
// true. $override won't stay null
if (!get_browser_language($override['language']))
{
$override=null;
}
$override['language'] = $language;
}

create_user_infos($user_id, $override);

if ($notify_admin and $conf['email_admin_on_new_user'])
Expand Down Expand Up @@ -813,18 +807,16 @@ function get_default_language()
* Tries to find the browser language among available languages.
* @todo : try to match 'fr_CA' before 'fr'
*
* @param string &$lang
* @return bool
* @return string
*/
function get_browser_language(&$lang)
function get_browser_language()
{
$browser_language = substr(@$_SERVER["HTTP_ACCEPT_LANGUAGE"], 0, 2);
foreach (get_languages() as $language_code => $language_name)
{
if (substr($language_code, 0, 2) == $browser_language)
{
$lang = $language_code;
return true;
return $language_code;
}
}
return false;
Expand Down
4 changes: 2 additions & 2 deletions include/user.inc.php
Expand Up @@ -68,9 +68,9 @@
$user = build_user( $user['id'],
( defined('IN_ADMIN') and IN_ADMIN ) ? false : true // use cache ?
);
if ($conf['browser_language'] and (is_a_guest() or is_generic()) )
if ($conf['browser_language'] and (is_a_guest() or is_generic()) and $language = get_browser_language())
{
get_browser_language($user['language']);
$user['language'] = $language;
}
trigger_notify('user_init', $user);
?>

0 comments on commit 18f045b

Please sign in to comment.