mirror of
https://github.com/phpbb/phpbb.git
synced 2025-05-16 20:39:49 +02:00
Merge branch '3.3.x'
This commit is contained in:
commit
74950c667c
phpBB
@ -263,49 +263,68 @@ function phpbb_version_compare($version1, $version2, $operator = null)
|
|||||||
// functions used for building option fields
|
// functions used for building option fields
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pick a language, any language ...
|
* Pick a language, any language ...
|
||||||
*/
|
*
|
||||||
function language_select($default = '')
|
* @param string $default Language ISO code to be selected by default in the dropdown list
|
||||||
|
* @param array $langdata Language data in format of array(array('lang_iso' => string, lang_local_name => string), ...)
|
||||||
|
*
|
||||||
|
* @return string HTML options for language selection dropdown list.
|
||||||
|
*/
|
||||||
|
function language_select($default = '', array $langdata = [])
|
||||||
{
|
{
|
||||||
global $db;
|
global $db;
|
||||||
|
|
||||||
$sql = 'SELECT lang_iso, lang_local_name
|
if (empty($langdata))
|
||||||
FROM ' . LANG_TABLE . '
|
{
|
||||||
ORDER BY lang_english_name';
|
$sql = 'SELECT lang_iso, lang_local_name
|
||||||
$result = $db->sql_query($sql);
|
FROM ' . LANG_TABLE . '
|
||||||
|
ORDER BY lang_english_name';
|
||||||
|
$result = $db->sql_query($sql);
|
||||||
|
$langdata = (array) $db->sql_fetchrowset($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
}
|
||||||
|
|
||||||
$lang_options = '';
|
$lang_options = '';
|
||||||
while ($row = $db->sql_fetchrow($result))
|
foreach ($langdata as $row)
|
||||||
{
|
{
|
||||||
$selected = ($row['lang_iso'] == $default) ? ' selected="selected"' : '';
|
$selected = ($row['lang_iso'] == $default) ? ' selected="selected"' : '';
|
||||||
$lang_options .= '<option value="' . $row['lang_iso'] . '"' . $selected . '>' . $row['lang_local_name'] . '</option>';
|
$lang_options .= '<option value="' . $row['lang_iso'] . '"' . $selected . '>' . $row['lang_local_name'] . '</option>';
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
return $lang_options;
|
return $lang_options;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pick a template/theme combo,
|
* Pick a template/theme combo
|
||||||
*/
|
*
|
||||||
function style_select($default = '', $all = false)
|
* @param string $default Style ID to be selected by default in the dropdown list
|
||||||
|
* @param bool $all Flag indicating if all styles data including inactive ones should be fetched
|
||||||
|
* @param array $styledata Style data in format of array(array('style_id' => int, style_name => string), ...)
|
||||||
|
*
|
||||||
|
* @return string HTML options for style selection dropdown list.
|
||||||
|
*/
|
||||||
|
function style_select($default = '', $all = false, array $styledata = [])
|
||||||
{
|
{
|
||||||
global $db;
|
global $db;
|
||||||
|
|
||||||
$sql_where = (!$all) ? 'WHERE style_active = 1 ' : '';
|
if (empty($styledata))
|
||||||
$sql = 'SELECT style_id, style_name
|
{
|
||||||
FROM ' . STYLES_TABLE . "
|
$sql_where = (!$all) ? 'WHERE style_active = 1 ' : '';
|
||||||
$sql_where
|
$sql = 'SELECT style_id, style_name
|
||||||
ORDER BY style_name";
|
FROM ' . STYLES_TABLE . "
|
||||||
$result = $db->sql_query($sql);
|
$sql_where
|
||||||
|
ORDER BY style_name";
|
||||||
|
$result = $db->sql_query($sql);
|
||||||
|
$styledata = (array) $db->sql_fetchrowset($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
}
|
||||||
|
|
||||||
$style_options = '';
|
$style_options = '';
|
||||||
while ($row = $db->sql_fetchrow($result))
|
foreach ($styledata as $row)
|
||||||
{
|
{
|
||||||
$selected = ($row['style_id'] == $default) ? ' selected="selected"' : '';
|
$selected = ($row['style_id'] == $default) ? ' selected="selected"' : '';
|
||||||
$style_options .= '<option value="' . $row['style_id'] . '"' . $selected . '>' . $row['style_name'] . '</option>';
|
$style_options .= '<option value="' . $row['style_id'] . '"' . $selected . '>' . $row['style_name'] . '</option>';
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
return $style_options;
|
return $style_options;
|
||||||
}
|
}
|
||||||
|
@ -159,33 +159,23 @@ class ucp_prefs
|
|||||||
phpbb_timezone_select($template, $user, $data['tz'], true);
|
phpbb_timezone_select($template, $user, $data['tz'], true);
|
||||||
|
|
||||||
// check if there are any user-selectable languages
|
// check if there are any user-selectable languages
|
||||||
$sql = 'SELECT COUNT(lang_id) as languages_count
|
$sql = 'SELECT lang_iso, lang_local_name
|
||||||
FROM ' . LANG_TABLE;
|
FROM ' . LANG_TABLE . '
|
||||||
|
ORDER BY lang_english_name';
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
if ($db->sql_fetchfield('languages_count') > 1)
|
$lang_row = (array) $db->sql_fetchrowset($result);
|
||||||
{
|
|
||||||
$s_more_languages = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$s_more_languages = false;
|
|
||||||
}
|
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
$s_more_languages = count($lang_row) > 1;
|
||||||
|
|
||||||
// check if there are any user-selectable styles
|
// check if there are any user-selectable styles
|
||||||
$sql = 'SELECT COUNT(style_id) as styles_count
|
$sql = 'SELECT style_id, style_name
|
||||||
FROM ' . STYLES_TABLE . '
|
FROM ' . STYLES_TABLE . '
|
||||||
WHERE style_active = 1';
|
WHERE style_active = 1
|
||||||
|
ORDER BY style_name';
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
if ($db->sql_fetchfield('styles_count') > 1)
|
$styles_row = (array) $db->sql_fetchrowset($result);
|
||||||
{
|
|
||||||
$s_more_styles = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$s_more_styles = false;
|
|
||||||
}
|
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
$s_more_styles = count($styles_row) > 1;
|
||||||
|
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
'ERROR' => (count($error)) ? implode('<br />', $error) : '',
|
'ERROR' => (count($error)) ? implode('<br />', $error) : '',
|
||||||
@ -205,11 +195,11 @@ class ucp_prefs
|
|||||||
'DEFAULT_DATEFORMAT' => $config['default_dateformat'],
|
'DEFAULT_DATEFORMAT' => $config['default_dateformat'],
|
||||||
'A_DEFAULT_DATEFORMAT' => addslashes($config['default_dateformat']),
|
'A_DEFAULT_DATEFORMAT' => addslashes($config['default_dateformat']),
|
||||||
|
|
||||||
'S_MORE_LANGUAGES' => $s_more_languages,
|
'S_MORE_LANGUAGES' => $s_more_languages,
|
||||||
'S_MORE_STYLES' => $s_more_styles,
|
'S_MORE_STYLES' => $s_more_styles,
|
||||||
|
|
||||||
'S_LANG_OPTIONS' => language_select($data['lang']),
|
'S_LANG_OPTIONS' => language_select($data['lang'], $lang_row),
|
||||||
'S_STYLE_OPTIONS' => ($config['override_user_style']) ? '' : style_select($data['user_style']),
|
'S_STYLE_OPTIONS' => ($config['override_user_style']) ? '' : style_select($data['user_style'], false, $styles_row),
|
||||||
'S_CAN_HIDE_ONLINE' => ($auth->acl_get('u_hideonline')) ? true : false,
|
'S_CAN_HIDE_ONLINE' => ($auth->acl_get('u_hideonline')) ? true : false,
|
||||||
'S_SELECT_NOTIFY' => ($config['jab_enable'] && $user->data['user_jabber'] && @extension_loaded('xml')) ? true : false)
|
'S_SELECT_NOTIFY' => ($config['jab_enable'] && $user->data['user_jabber'] && @extension_loaded('xml')) ? true : false)
|
||||||
);
|
);
|
||||||
|
@ -150,15 +150,11 @@ class ucp_register
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Checking amount of available languages
|
// Checking amount of available languages
|
||||||
$sql = 'SELECT lang_id
|
$sql = 'SELECT lang_iso, lang_local_name
|
||||||
FROM ' . LANG_TABLE;
|
FROM ' . LANG_TABLE . '
|
||||||
|
ORDER BY lang_english_name';
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$lang_row = (array) $db->sql_fetchrowset($result);
|
||||||
$lang_row = array();
|
|
||||||
while ($row = $db->sql_fetchrow($result))
|
|
||||||
{
|
|
||||||
$lang_row[] = $row;
|
|
||||||
}
|
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if ($coppa === false && $config['coppa_enable'])
|
if ($coppa === false && $config['coppa_enable'])
|
||||||
@ -171,7 +167,7 @@ class ucp_register
|
|||||||
unset($now);
|
unset($now);
|
||||||
|
|
||||||
$template_vars = array(
|
$template_vars = array(
|
||||||
'S_LANG_OPTIONS' => (count($lang_row) > 1) ? language_select($user_lang) : '',
|
'S_LANG_OPTIONS' => (count($lang_row) > 1) ? language_select($user_lang, $lang_row) : '',
|
||||||
'L_COPPA_NO' => $user->lang('UCP_COPPA_BEFORE', $coppa_birthday),
|
'L_COPPA_NO' => $user->lang('UCP_COPPA_BEFORE', $coppa_birthday),
|
||||||
'L_COPPA_YES' => $user->lang('UCP_COPPA_ON_AFTER', $coppa_birthday),
|
'L_COPPA_YES' => $user->lang('UCP_COPPA_ON_AFTER', $coppa_birthday),
|
||||||
|
|
||||||
@ -186,7 +182,7 @@ class ucp_register
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
$template_vars = array(
|
$template_vars = array(
|
||||||
'S_LANG_OPTIONS' => (count($lang_row) > 1) ? language_select($user_lang) : '',
|
'S_LANG_OPTIONS' => (count($lang_row) > 1) ? language_select($user_lang, $lang_row) : '',
|
||||||
'L_TERMS_OF_USE' => sprintf($user->lang['TERMS_OF_USE_CONTENT'], $config['sitename'], generate_board_url()),
|
'L_TERMS_OF_USE' => sprintf($user->lang['TERMS_OF_USE_CONTENT'], $config['sitename'], generate_board_url()),
|
||||||
|
|
||||||
'S_SHOW_COPPA' => false,
|
'S_SHOW_COPPA' => false,
|
||||||
@ -622,6 +618,14 @@ class ucp_register
|
|||||||
// Assign template vars for timezone select
|
// Assign template vars for timezone select
|
||||||
phpbb_timezone_select($template, $user, $data['tz'], true);
|
phpbb_timezone_select($template, $user, $data['tz'], true);
|
||||||
|
|
||||||
|
// Checking amount of available languages
|
||||||
|
$sql = 'SELECT lang_iso, lang_local_name
|
||||||
|
FROM ' . LANG_TABLE . '
|
||||||
|
ORDER BY lang_english_name';
|
||||||
|
$result = $db->sql_query($sql);
|
||||||
|
$lang_row = (array) $db->sql_fetchrowset($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$template_vars = array(
|
$template_vars = array(
|
||||||
'USERNAME' => $data['username'],
|
'USERNAME' => $data['username'],
|
||||||
'PASSWORD' => $data['new_password'],
|
'PASSWORD' => $data['new_password'],
|
||||||
@ -632,7 +636,7 @@ class ucp_register
|
|||||||
'L_USERNAME_EXPLAIN' => $user->lang($config['allow_name_chars'] . '_EXPLAIN', $user->lang('CHARACTERS', (int) $config['min_name_chars']), $user->lang('CHARACTERS', (int) $config['max_name_chars'])),
|
'L_USERNAME_EXPLAIN' => $user->lang($config['allow_name_chars'] . '_EXPLAIN', $user->lang('CHARACTERS', (int) $config['min_name_chars']), $user->lang('CHARACTERS', (int) $config['max_name_chars'])),
|
||||||
'L_PASSWORD_EXPLAIN' => $user->lang($config['pass_complex'] . '_EXPLAIN', $user->lang('CHARACTERS', (int) $config['min_pass_chars'])),
|
'L_PASSWORD_EXPLAIN' => $user->lang($config['pass_complex'] . '_EXPLAIN', $user->lang('CHARACTERS', (int) $config['min_pass_chars'])),
|
||||||
|
|
||||||
'S_LANG_OPTIONS' => language_select($data['lang']),
|
'S_LANG_OPTIONS' => (count($lang_row) > 1) ? language_select($data['lang'], $lang_row) : '',
|
||||||
'S_TZ_PRESELECT' => !$submit,
|
'S_TZ_PRESELECT' => !$submit,
|
||||||
'S_CONFIRM_REFRESH' => ($config['enable_confirm'] && $config['confirm_refresh']) ? true : false,
|
'S_CONFIRM_REFRESH' => ($config['enable_confirm'] && $config['confirm_refresh']) ? true : false,
|
||||||
'S_REGISTRATION' => true,
|
'S_REGISTRATION' => true,
|
||||||
|
@ -57,10 +57,12 @@
|
|||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<!-- EVENT ucp_register_options_before -->
|
<!-- EVENT ucp_register_options_before -->
|
||||||
|
{% if S_LANG_OPTIONS %}
|
||||||
<dl>
|
<dl>
|
||||||
<dt><label for="lang">{L_LANGUAGE}{L_COLON}</label></dt>
|
<dt><label for="lang">{{ lang('LANGUAGE') ~ lang('COLON') }}</label></dt>
|
||||||
<dd><select name="lang" id="lang" onchange="change_language(this.value); return false;" tabindex="6" title="{L_LANGUAGE}">{S_LANG_OPTIONS}</select></dd>
|
<dd><select name="lang" id="lang" onchange="change_language(this.value); return false;" tabindex="6" title="{{ lang('LANGUAGE') }}">{{ S_LANG_OPTIONS }}</select></dd>
|
||||||
</dl>
|
</dl>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
<!-- INCLUDE timezone_option.html -->
|
<!-- INCLUDE timezone_option.html -->
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user