Для выбора пола используется мод Genders 1.0.1
Для того чтобы добавить в в мод ACP Add User выбор пола при добавлении пользователя необходимо произвести следующие правки.
adm/style/acp_add_user.html
Найти
Код: Выделить всё
<!-- IF S_BIRTHDAYS_ENABLED -->
<dl>
<dt><label for="birthday">{L_BIRTHDAY}:</label><br /><span>{L_BIRTHDAY_EXPLAIN}</span></dt>
<dd>{L_DAY}: <select id="birthday" name="bday_day">{S_BIRTHDAY_DAY_OPTIONS}</select> {L_MONTH}: <select name="bday_month">{S_BIRTHDAY_MONTH_OPTIONS}</select> {L_YEAR}: <select name="bday_year">{S_BIRTHDAY_YEAR_OPTIONS}</select></dd>
</dl>
<!-- ENDIF -->Код: Выделить всё
<dl>
<dt><label for="gender_x">{L_GENDER}:</label><br /><span>{L_GENDER_EXPLAIN}</span></dt>
<dd>
<label for="gender_m"><input type="radio" name="gender" id="gender_m" value="{GENDER_M}"<!-- IF S_GENDER_M --> checked="checked"<!-- ENDIF --> /> {L_GENDER_M}</label>
<label for="gender_f"><input type="radio" name="gender" id="gender_f" value="{GENDER_F}"<!-- IF S_GENDER_F --> checked="checked"<!-- ENDIF --> /> {L_GENDER_F}</label>
<label for="gender_x"><input type="radio" name="gender" id="gender_x" value="{GENDER_X}"<!-- IF S_GENDER_X --> checked="checked"<!-- ENDIF --> /> {L_GENDER_X}</label>
</dd>
</dl>Найти
Код: Выделить всё
'tz' => request_var('tz', (float) $timezone)Код: Выделить всё
'tz' => request_var('tz', (float) $timezone),
//-- mod : BB Genders Plus ------------------------------------------------------------
'gender' => request_var('gender', $user->data['user_gender'])
//-- end mod : Genders -------------------------------------------------------Код: Выделить всё
'S_TZ_OPTIONS' => tz_select($data['tz']),Код: Выделить всё
//-- mod : BB Genders Plus ------------------------------------------------------------
'GENDER_X' => GENDER_X,
'GENDER_M' => GENDER_M,
'GENDER_F' => GENDER_F,
'S_GENDER_X' => ($data['gender'] == GENDER_X) ? true : false,
'S_GENDER_M' => ($data['gender'] == GENDER_M) ? true : false,
'S_GENDER_F' => ($data['gender'] == GENDER_F) ? true : false,
//-- end mod : Genders --------------------------------------------------------Код: Выделить всё
'user_inactive_time' => $user_inactive_time,Код: Выделить всё
//-- mod : BB Genders Plus ------------------------------------------------------------
'user_gender' => $data['gender'],
//-- end mod : Genders --------------------------------------------------------Код: Выделить всё
'lang' => array('match', false, '#^[a-z_-]{2,}$#i'),Код: Выделить всё
//-- mod : BB Genders Plus ------------------------------------------------------------
'gender' => array('num', false, 1, 2),
//-- end mod : Genders -------------------------------------------------------Мод National Flags 2.0.4
Добавлено спустя 39 минут 4 секунды:
adm/style/acp_add_user.html
Найти
Код: Выделить всё
<dl>
<dt><label for="lang">{L_LANGUAGE}:</label></dt>
<dd><select name="lang" id="lang">{S_LANG_OPTIONS}</select></dd>
</dl>Код: Выделить всё
<script type="text/javascript">
// <![CDATA[
/**
* Some functions for the AJAX checker
*/
function createRequestObject() {
var ro;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
ro = new ActiveXObject("Microsoft.XMLHTTP");
} else {
ro = new XMLHttpRequest();
}
return ro;
}
var http = createRequestObject();
function flagIdReq(value) {
// Make the request
var flagimage_url = '{AJAX_FLAG_INFO}';
http.open('get', flagimage_url.replace('FLAG_ID', value));
http.onreadystatechange = handleResponse;
http.send(null);
}
// fill in the response
function handleResponse() {
if(http.readyState == 4 ){
var response = http.responseText;
document.getElementById('flag_image').innerHTML = response;
}
}
// ]]>
</script>
<dl>
<td class="row1" width="50%"><b class="genmed">{L_FLAG}:</b></td>
<td class="row2"><select name="flag" id="flag" onchange="flagIdReq(this.value);">{S_FLAG_OPTIONS}</select> <span id="flag_image" <!-- IF not FLAG_IMAGE -->style="display:none;"<!-- ENDIF -->><img src="{FLAG_IMAGE}" alt="{FLAG_NAME}" title="{FLAG_NAME}" style="vertical-align:middle;" /></span></td>
</dl>Найти
Код: Выделить всё
include($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
include($phpbb_root_path . 'includes/functions_user.' . $phpEx);Код: Выделить всё
//Begin: National_Flag
include($phpbb_root_path . 'includes/functions_flag.' . $phpEx);
//End: National_FlagКод: Выделить всё
$data['user_birthday'] = sprintf('%2d-%2d-%4d', $data['bday_day'], $data['bday_month'], $data['bday_year']);
}Код: Выделить всё
//Begin: National_Flag
if (!empty($config['allow_flags']))
{
$data['flag'] = request_var('flag', (int) $user->data['user_flag']);
}
//End: National_FlagКод: Выделить всё
if ($config['allow_birthdays'])
{
$validate_array = array_merge($validate_array, array(Код: Выделить всё
//Begin: National_Flag
//Currently set to validate up to 300, if you want more
//flags than 300 change to the amount you want
if (!empty($config['allow_flags']))
{
$validate_array = array_merge($validate_array, array(
'flag' => array('num', true, 0, 300),
));
}
//End: National_FlagКод: Выделить всё
'S_BIRTHDAYS_ENABLED' => true,
));
}Код: Выделить всё
//Begin: National_Flag
if (!empty($config['allow_flags']))
{
global $cache;
get_user_flag();
$flags = $cache->get('_user_flags');
$flag_name = '';
if ($data['flag'] && $config['flag_type'] != USER_FLAG_TEXT)
{
$flag_name = $flags[$data['flag']]['flag_image'];
}
unset($flags);
$s_flag_options = list_all_flags($data['flag']);
$template->assign_vars(array(
'S_FLAG_OPTIONS' => $s_flag_options,
'S_FLAGS_ENABLED' => true,
'FLAG_IMAGE' => ($flag_name) ? "{$phpbb_root_path}images/flags/$flag_name" : '',
'FLAG_NAME' => $flag_name,
'AJAX_FLAG_INFO' => append_sid("{$phpbb_root_path}ajax_user_flag.$phpEx", 'flag_id=FLAG_ID'),
));
}
//End: National_FlagТакже необходимо скопировать папку flags в adm/images/.
Добавлено спустя 37 минут 35 секунд:
как я понял за изменения флага страны в UCP отвечает вот это условие.
Код: Выделить всё
//Begin: National_Flag
if (!empty($config['allow_flags']))
{
$sql_ary['user_flag'] = $data['flag'];
}
//End: National_FlagНайти
Код: Выделить всё
'tz' => request_var('tz', (float) $timezone),Код: Выделить всё
'flag' => request_var('flag',''),Код: Выделить всё
'user_inactive_time' => $user_inactive_time,Код: Выделить всё
'user_flag' => $data['flag'],Код: Выделить всё
'lang' => array('match', false, '#^[a-z_-]{2,}$#i'),Код: Выделить всё
'flag' => array('num', false, 0, 300),И вопрос на который у меня сегодня не хватило сил, но он не критический.
При добавлении нового пользователя по стандарту флаг стоит тот который выбран у админа как бы сделать чтобы был выставлен в 0 то есть "Выберите флаг страны проживания".
По ходу надо подправить где то здесь.
Код: Выделить всё
//Begin: National_Flag
if (!empty($config['allow_flags']))
{
global $cache;
get_user_flag();
$flags = $cache->get('_user_flags');
$flag_name = '';
if ($data['flag'] && $config['flag_type'] != USER_FLAG_TEXT)
{
$flag_name = $flags[$data['flag']]['flag_image'];
}
unset($flags);
$s_flag_options = list_all_flags($data['flag']);
$template->assign_vars(array(
'S_FLAG_OPTIONS' => $s_flag_options,
'S_FLAGS_ENABLED' => true,
'FLAG_IMAGE' => ($flag_name) ? "{$phpbb_root_path}images/flags/$flag_name" : '',
'FLAG_NAME' => $flag_name,
'AJAX_FLAG_INFO' => append_sid("{$phpbb_root_path}ajax_user_flag.$phpEx", 'flag_id=FLAG_ID'),
));
}
//End: National_Flag
