mirror of
https://github.com/phpbb/phpbb.git
synced 2025-05-05 07:07:51 +02:00
Merge remote-tracking branch 'github-vse/ticket/12254' into develop-ascraeus
* github-vse/ticket/12254: [ticket/12254] Add subsilver2 support for cookie storage instead of SID [ticket/12254] Use a cookie instead of SID to store language selection [ticket/12254] No longer need to add change_lang to the URL params [ticket/12254] Use 'language' instead of 'set_lang' as the variable name [ticket/12254] Persist set_lang after reg only if changed from default [ticket/12254] Add set_lang var changes to subsilver2 files [ticket/12254] Use new set_lang var to avoid conflict with change_lang [ticket/12254] Stop using deprecated request_var in user class [ticket/12254] Better language switching on registration page
This commit is contained in:
commit
0fc6b6ac36
@ -64,10 +64,7 @@ class ucp_register
|
||||
$agreed = false;
|
||||
}
|
||||
|
||||
$user->lang_name = $user_lang = $use_lang;
|
||||
$user->lang = array();
|
||||
$user->data['user_lang'] = $user->lang_name;
|
||||
$user->add_lang(array('common', 'ucp'));
|
||||
$user_lang = $use_lang;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -101,7 +98,6 @@ class ucp_register
|
||||
|
||||
if (!$agreed || ($coppa === false && $config['coppa_enable']) || ($coppa && !$config['coppa_enable']))
|
||||
{
|
||||
$add_lang = ($change_lang) ? '&change_lang=' . urlencode($change_lang) : '';
|
||||
$add_coppa = ($coppa !== false) ? '&coppa=' . $coppa : '';
|
||||
|
||||
$s_hidden_fields = array_merge($s_hidden_fields, array(
|
||||
@ -147,12 +143,15 @@ class ucp_register
|
||||
'L_COPPA_NO' => sprintf($user->lang['UCP_COPPA_BEFORE'], $coppa_birthday),
|
||||
'L_COPPA_YES' => sprintf($user->lang['UCP_COPPA_ON_AFTER'], $coppa_birthday),
|
||||
|
||||
'U_COPPA_NO' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register&coppa=0' . $add_lang),
|
||||
'U_COPPA_YES' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register&coppa=1' . $add_lang),
|
||||
'U_COPPA_NO' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register&coppa=0'),
|
||||
'U_COPPA_YES' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register&coppa=1'),
|
||||
|
||||
'S_SHOW_COPPA' => true,
|
||||
'S_HIDDEN_FIELDS' => build_hidden_fields($s_hidden_fields),
|
||||
'S_UCP_ACTION' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register' . $add_lang),
|
||||
'S_UCP_ACTION' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register'),
|
||||
|
||||
'COOKIE_NAME' => $config['cookie_name'],
|
||||
'COOKIE_PATH' => $config['cookie_path'],
|
||||
));
|
||||
}
|
||||
else
|
||||
@ -164,7 +163,10 @@ class ucp_register
|
||||
'S_SHOW_COPPA' => false,
|
||||
'S_REGISTRATION' => true,
|
||||
'S_HIDDEN_FIELDS' => build_hidden_fields($s_hidden_fields),
|
||||
'S_UCP_ACTION' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register' . $add_lang . $add_coppa),
|
||||
'S_UCP_ACTION' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register' . $add_coppa),
|
||||
|
||||
'COOKIE_NAME' => $config['cookie_name'],
|
||||
'COOKIE_PATH' => $config['cookie_path'],
|
||||
)
|
||||
);
|
||||
}
|
||||
@ -469,6 +471,9 @@ class ucp_register
|
||||
'S_COPPA' => $coppa,
|
||||
'S_HIDDEN_FIELDS' => $s_hidden_fields,
|
||||
'S_UCP_ACTION' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=register'),
|
||||
|
||||
'COOKIE_NAME' => $config['cookie_name'],
|
||||
'COOKIE_PATH' => $config['cookie_path'],
|
||||
));
|
||||
|
||||
//
|
||||
|
@ -69,7 +69,7 @@ class user extends \phpbb\session
|
||||
*/
|
||||
function setup($lang_set = false, $style_id = false)
|
||||
{
|
||||
global $db, $template, $config, $auth, $phpEx, $phpbb_root_path, $cache;
|
||||
global $db, $request, $template, $config, $auth, $phpEx, $phpbb_root_path, $cache;
|
||||
global $phpbb_dispatcher;
|
||||
|
||||
if ($this->data['user_id'] != ANONYMOUS)
|
||||
@ -80,7 +80,17 @@ class user extends \phpbb\session
|
||||
}
|
||||
else
|
||||
{
|
||||
$user_lang_name = basename($config['default_lang']);
|
||||
$change_lang = $request->variable($config['cookie_name'] . '_lang', '', true, \phpbb\request\request_interface::COOKIE);
|
||||
if ($change_lang)
|
||||
{
|
||||
$use_lang = basename($change_lang);
|
||||
$user_lang_name = (file_exists($this->lang_path . $use_lang . "/common.$phpEx")) ? $use_lang : basename($config['default_lang']);
|
||||
$this->data['user_lang'] = $user_lang_name;
|
||||
}
|
||||
else
|
||||
{
|
||||
$user_lang_name = basename($config['default_lang']);
|
||||
}
|
||||
$user_date_format = $config['default_dateformat'];
|
||||
$user_timezone = $config['board_timezone'];
|
||||
|
||||
@ -190,7 +200,7 @@ class user extends \phpbb\session
|
||||
}
|
||||
unset($lang_set_ext);
|
||||
|
||||
$style_request = request_var('style', 0);
|
||||
$style_request = $request->variable('style', 0);
|
||||
if ($style_request && (!$config['override_user_style'] || $auth->acl_get('a_styles')) && !defined('ADMIN_START'))
|
||||
{
|
||||
global $SID, $_EXTRA_URL;
|
||||
|
@ -10,6 +10,7 @@
|
||||
*/
|
||||
function change_language(lang_iso)
|
||||
{
|
||||
document.cookie = '{COOKIE_NAME}_lang=' + lang_iso + '; path={COOKIE_PATH}';
|
||||
document.forms['register'].change_lang.value = lang_iso;
|
||||
document.forms['register'].submit();
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
*/
|
||||
function change_language(lang_iso)
|
||||
{
|
||||
document.cookie = '{COOKIE_NAME}_lang=' + lang_iso + '; path={COOKIE_PATH}';
|
||||
document.forms['register'].change_lang.value = lang_iso;
|
||||
document.forms['register'].submit.click();
|
||||
}
|
||||
|
@ -10,6 +10,7 @@
|
||||
*/
|
||||
function change_language(lang_iso)
|
||||
{
|
||||
document.cookie = '{COOKIE_NAME}_lang=' + lang_iso + '; path={COOKIE_PATH}';
|
||||
document.forms['register'].change_lang.value = lang_iso;
|
||||
document.forms['register'].submit();
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
*/
|
||||
function change_language(lang_iso)
|
||||
{
|
||||
document.cookie = '{COOKIE_NAME}_lang=' + lang_iso + '; path={COOKIE_PATH}';
|
||||
document.forms['register'].change_lang.value = lang_iso;
|
||||
document.forms['register'].submit.click();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user