Соавторы: anybloodyid
Версия: 2.0.4
PHPBB версия 3.0.8 но работает и на последних.
Установите время около 10 минут.
Описание:Национальные флаги это мод, который позволяет пользователю выбрать свой национальный флаг в профиле UCP.
Устанавливал на заказ одному веб мастеру, но там много чего лишнего, решил версию для себя сделать такой, чтобы отображался флаг, на страничке юзера и в топиках, остальное и лишнее убрал.
Контрольная сумма: MD5 27f0edae2fd181041a58c8ab31ffe051
Скачать мод можно тут http://www.phpbb.com/customise/db/mod/national_flags/
Открыть: memberlist.php
Установка:
Содержимое папки root копируем в корень сайта.
Найти
Найти
Найти
Найти
Найти
Найти
Найти
Найти
Найти
Найти
Открыть: adm/style/acp_users_profile.html
Найти
Открыть: includes/constants.php
Найти
Открыть: includes/acp/acp_users.php
Найти
Найти
Найти
Открыть: includes/ucp/ucp_pm_viewmessage.php
Найти
Найти
Открыть: includes/ucp/ucp_profile.php
Найти
Найти
Найти
Найти
Открыть: language/ru/acp/permissions_phpbb.php
Найти
Открыть: language/ru/common.php
Найти:
Установка:
Содержимое папки root копируем в корень сайта.
Найти
- Код: Выделить всё
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
- Код: Выделить всё
//Begin: National Flag
include($phpbb_root_path . 'includes/functions_flag.' . $phpEx);
//End: National Flag
Найти
- Код: Выделить всё
u.user_posts, u.user_allow_pm
- Код: Выделить всё
, u.user_flag
- Код: Выделить всё
u.user_posts, u.user_allow_pm, u.user_flag
Найти
- Код: Выделить всё
$result = $db->sql_query($sql);
- Код: Выделить всё
//Begin: National Flag
$flag_count = 0;
//End: National Flag
Найти
- Код: Выделить всё
$rank_title = $rank_img = '';
- Код: Выделить всё
//Begin: National Flag
if (!empty($config['allow_flags']) && !empty($row['user_flag']))
{
$user_flag = get_user_flag($row['user_flag']);
++$flag_count;
}
else
{
$user_flag = '';
}
//End: National Flag
Найти
- Код: Выделить всё
'U_VIEW_PROFILE' => get_username_string('profile', $row['user_id'], $row['username'], $row['user_colour']),
- Код: Выделить всё
//Begin: National Flag
'USER_FLAG' => $user_flag,
//End: National Flag
Найти
- Код: Выделить всё
'PM_IMG' => $user->img('icon_contact_pm', $user->lang['SEND_PRIVATE_MESSAGE']))
- Код: Выделить всё
//Begin: National Flag
'S_USER_FLAG' => $flag_count,
//End: National Flag
Найти
- Код: Выделить всё
// Dump it out to the template
- Код: Выделить всё
//Begin: National Flag
if (!empty($config['allow_flags']) && !empty($data['user_flag']))
{
$user_flag = get_user_flag($data['user_flag']);
$template->assign_vars(array(
'S_USER_FLAG' => true,
));
}
else
{
$user_flag = '';
}
//End: National Flag
Найти
- Код: Выделить всё
'USER_JABBER_IMG' => ($data['user_jabber']) ? $user->img('icon_contact_jabber', $data['user_jabber']) : '',
- Код: Выделить всё
//Begin: National Flag
'USER_FLAG' => $user_flag,
//End: National Flag
Найти
- Код: Выделить всё
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
- Код: Выделить всё
//Begin: National Flag
include($phpbb_root_path . 'includes/functions_flag.' . $phpEx);
//End: National Flag
- Код: Выделить всё
'age' => '',
- Код: Выделить всё
//Begin: National Flag
'flag' => '',
//End: National Flag
Найти
- Код: Выделить всё
else
{
$user_cache[$poster_id]['icq_status_img'] = '';
$user_cache[$poster_id]['icq'] = '';
}
- Код: Выделить всё
//Begin: National Flag
if (!empty($config['allow_flags']) && !empty($row['user_flag']))
{
$user_cache[$poster_id]['flag'] = get_user_flag($row['user_flag']);
}
else
{
$user_cache[$poster_id]['flag'] = '';
}
//End: National Flag
- Код: Выделить всё
'POSTER_AGE' => $user_cache[$poster_id]['age'],
- Код: Выделить всё
//Begin: National Flag
'POSTER_FLAG' => $user_cache[$poster_id]['flag'],
//End: National Flag
Открыть: adm/style/acp_users_profile.html
Найти
- Код: Выделить всё
<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>
- Код: Выделить всё
<!-- IF S_FLAG -->
<dl>
<dt><label for="flag"><strong>{L_FLAG}:</strong></label><br /><span>{L_FLAG_EXPLAIN}</span></dt>
<dd><select name="flag" id="flag">{S_FLAG_OPTIONS}</select> {S_FLAG_IMAGE}</dd>
</dl>
<!-- ENDIF -->
Открыть: includes/constants.php
Найти
- Код: Выделить всё
// Additional constants
- Код: Выделить всё
//Begin: National Flag
define('FLAGS_DATA_TABLE', $table_prefix . 'flags');
define('USER_FLAG_TEXT', 1);
define('USER_FLAG_IMAGE', 2);
//End: National Flag
Открыть: includes/acp/acp_users.php
Найти
- Код: Выделить всё
include($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
- Код: Выделить всё
//Begin: National Flag
include($phpbb_root_path . 'includes/functions_flag.' . $phpEx);
//End: National Flag
Найти
- Код: Выделить всё
'bday_year' => 0,
- Код: Выделить всё
//Begin: National Flag
'flag' => request_var('flag', (int) $user_row['user_flag']),
//End: National Flag
Найти
- Код: Выделить всё
user_birthday' => array('date', true),
- Код: Выделить всё
//Begin: National Flag
'flag' => array('num', true, 0, 300),
//End: National Flag
- Код: Выделить всё
'user_birthday' => $data['user_birthday'],
- Код: Выделить всё
//Begin: National Flag
'user_flag' => $data['flag'],
//End: National Flag
- Код: Выделить всё
'S_BIRTHDAY_YEAR_OPTIONS' => $s_birthday_year_options,
- Код: Выделить всё
//Begin: National Flag
'S_FLAG_OPTIONS' => list_all_flags($data['flag']),
'S_FLAG_IMAGE' => get_user_flag($data['flag']),
'S_FLAG' => !empty($config['allow_flags']) ? $config['allow_flags'] : false,
//End: National Flag
Открыть: includes/ucp/ucp_pm_viewmessage.php
Найти
- Код: Выделить всё
$url = append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm');
- Код: Выделить всё
//Begin: National Flag
include($phpbb_root_path . 'includes/functions_flag.' . $phpEx);
//End: National Flag
Найти
- Код: Выделить всё
'AUTHOR_FROM' => (!empty($user_info['user_from'])) ? $user_info['user_from'] : '',
- Код: Выделить всё
//Begin: National Flag
'USER_FLAG' => get_user_flag($user_info['user_flag']),
//End: National Flag
Открыть: includes/ucp/ucp_profile.php
Найти
- Код: Выделить всё
include($phpbb_root_path . 'includes/functions_profile_fields.' . $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
- Код: Выделить всё
if ($config['allow_birthdays'])
{
$sql_ary['user_birthday'] = $data['user_birthday'];
}
- Код: Выделить всё
//Begin: National Flag
if (!empty($config['allow_flags']))
{
$sql_ary['user_flag'] = $data['flag'];
}
//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
Открыть: language/ru/acp/permissions_phpbb.php
Найти
- Код: Выделить всё
'acl_a_search' => array('lang' => 'Can manage search backends and settings', 'cat' => 'misc'),
- Код: Выделить всё
//Begin: National Flag
'acl_a_flags' => array('lang' => 'Can manage country flags', 'cat' => 'misc'),
//End: National Flag
Открыть: language/ru/common.php
Найти:
- Код: Выделить всё
?>
- Код: Выделить всё
//End: National Flag
$lang = array_merge($lang, array(
'FLAG' => 'Флаг страны',
'FLAG_EXPLAIN' => 'Выберите флаг страны',
'TOP_FLAG_TITLE' => 'Топ 5 Национальных флагов',
'FLAG_USER' => '%s Пользователь',
'FLAG_USERS' => '%s Пользователей',
));
//End: National Flag
Установка для стиля subsilver2
Открыть: styles/subsilver2/template/memberlist_body.html
Найти
Открыть: styles/subsilver2/template/memberlist_view.html
Найти
Открыть: styles/subsilver2/template/ucp_profile_profile_info.html
Найти
Открыть: styles/subsilver2/template/viewtopic_body.html
Найти
Открыть: styles/subsilver2/template/viewtopic_tracker_body.html
Найти
Открыть: styles/subsilver2/template/memberlist_body.html
Найти
- Код: Выделить всё
<th nowrap="nowrap" width="10%"><a href="{U_SORT_POSTS}">{L_POSTS}</a></th>
- Код: Выделить всё
<!-- IF S_USER_FLAG --><th nowrap="nowrap" width="10%">{L_FLAG}</th><!-- ENDIF -->
- Код: Выделить всё
<td class="gen" align="center">{memberrow.POSTS}</td>
- Код: Выделить всё
<!-- IF S_USER_FLAG --><td class="gen" align="center"> <!-- IF memberrow.USER_FLAG -->{memberrow.USER_FLAG}<!-- ENDIF --> </td><!-- ENDIF -->
Открыть: styles/subsilver2/template/memberlist_view.html
Найти
- Код: Выделить всё
<tr>
<td class="gen" align="{S_CONTENT_FLOW_END}" nowrap="nowrap">{L_LOCATION}: </td>
<td><!-- IF LOCATION --><b class="genmed">{LOCATION}</b><!-- ENDIF --></td>
</tr>
- Код: Выделить всё
<!-- IF USER_FLAG -->
<tr>
<td class="gen" align="{S_CONTENT_FLOW_END}" nowrap="nowrap">{L_FLAG}: </td>
<td><b class="genmed">{USER_FLAG}</b></td>
</tr>
<!-- ENDIF -->
Открыть: styles/subsilver2/template/ucp_profile_profile_info.html
Найти
- Код: Выделить всё
value="{LOCATION}" /></td>
</tr>
- Код: Выделить всё
<!-- INCLUDE ucp_user_flag.html -->
Открыть: styles/subsilver2/template/viewtopic_body.html
Найти
- Код: Выделить всё
<!-- IF postrow.POSTER_FROM --><br /><b>{L_LOCATION}:</b> {postrow.POSTER_FROM}<!-- ENDIF -->
- Код: Выделить всё
<!-- IF postrow.POSTER_FLAG --><br /><b>{L_FLAG}:</b> {postrow.POSTER_FLAG}<!-- ENDIF -->
Открыть: styles/subsilver2/template/viewtopic_tracker_body.html
Найти
- Код: Выделить всё
<!-- IF postrow.POSTER_FROM --><br /><b>{L_LOCATION}:</b> {postrow.POSTER_FROM}<!-- ENDIF -->
- Код: Выделить всё
<!-- IF postrow.POSTER_FLAG --><br /><b>{L_FLAG}:</b> {postrow.POSTER_FLAG}<!-- ENDIF -->