1. IP с которых пользователь оставлял сообщения
2. IP с которого пользователь был зарегистрирован
3. IP пользователя который сейчас находится на форуме
4. IP пользователя с которого он посещал форум
1. Переделать файлы:
language/ru/memberlist.php в самом конце перед
Код: Выделить всё
));
?>
Код: Выделить всё
'POST_FROM_IP' => 'оставлял сообщения',
'REG_FROM_IP' => 'зарегистрировался',
'ONLINE_FROM_IP' => 'сейчас на форуме',
'OFFLINE_FROM_IP' => 'посещал форум',
Код: Выделить всё
$count = (request_var('count', '') !== '') ? request_var('count', 0) : '';
$ipdomain = request_var('ip', '');
Код: Выделить всё
$ip_select = request_var('ip_select', 'default');
$find_ip = array('default'=>$user->lang['POST_FROM_IP'], 'reg'=>$user->lang['REG_FROM_IP'], 'online'=>$user->lang['ONLINE_FROM_IP'], 'offline'=>$user->lang['OFFLINE_FROM_IP']);
$s_find_ip = '';
foreach ($find_ip as $key => $value)
{
$selected = ($ip_select == $key) ? ' selected="selected"' : '';
$s_find_ip .= '<option value="' . $key . '"' . $selected . '>' . $value . '</option>';
}
Код: Выделить всё
$ip_forums = array_keys($auth->acl_getf('m_info', true));
$sql = 'SELECT DISTINCT poster_id
Код: Выделить всё
if($ip_select=='default')
{
Код: Выделить всё
// A minor fudge but it does the job :D
$sql_where .= " AND u.user_id = 0";
}
unset($ip_forums);
$db->sql_freeresult($result);
Код: Выделить всё
}
else
{
switch ($ip_select)
{
case 'reg':
$sql_where .= " AND u.user_ip " . ((strpos($ips, '%') !== false) ? 'LIKE' : 'IN') . " ($ips)";
break;
case 'online':
$sql = 'SELECT DISTINCT session_user_id
FROM ' . SESSIONS_TABLE . '
WHERE session_ip ' . ((strpos($ips, '%') !== false) ? 'LIKE' : 'IN') . " ($ips)
AND session_user_id>1";
$result = $db->sql_query($sql);
if ($row = $db->sql_fetchrow($result))
{
$ip_sql = array();
do
{
$ip_sql[] = $row['session_user_id'];
}
while ($row = $db->sql_fetchrow($result));
$sql_where .= ' AND ' . $db->sql_in_set('u.user_id', $ip_sql);
}
else
{
// A minor fudge but it does the job :D
$sql_where .= " AND u.user_id = 0";
}
unset($ip_forums);
$db->sql_freeresult($result);
break;
case 'offline':
$sql = 'SELECT DISTINCT user_id
FROM ' . SESSIONS_KEYS_TABLE . '
WHERE last_ip ' . ((strpos($ips, '%') !== false) ? 'LIKE' : 'IN') . " ($ips)
AND user_id>1";
$result = $db->sql_query($sql);
if ($row = $db->sql_fetchrow($result))
{
$ip_sql = array();
do
{
$ip_sql[] = $row['user_id'];
}
while ($row = $db->sql_fetchrow($result));
$sql_where .= ' AND ' . $db->sql_in_set('u.user_id', $ip_sql);
}
else
{
// A minor fudge but it does the job :D
$sql_where .= " AND u.user_id = 0";
}
unset($ip_forums);
$db->sql_freeresult($result);
break;
}
}
Код: Выделить всё
// We do not use request_var() here directly to save some calls (not all variables are set)
$check_params = array(
Код: Выделить всё
'ip_select' => array('ip_select', (in_array(request_var('ip_select', 'default'), array('default', 'reg', 'online', 'offline')) ? request_var('ip_select', 'default') : 'default')),
Код: Выделить всё
'USERNAME' => $username,
'EMAIL' => $email,
Код: Выделить всё
'S_IP_OPTIONS' => $s_find_ip,
Код: Выделить всё
<dd><input class="inputbox medium" type="text" name="ip" id="ip" value="{IP}" /></dd>
Код: Выделить всё
<dd><select name="ip_select">{S_IP_OPTIONS}</select> <input class="inputbox medium" type="text" name="ip" id="ip" value="{IP}" /></dd>
Код: Выделить всё
<td class="row2"><input class="post" type="text" name="ip" value="{IP}" /></td>
Код: Выделить всё
<td class="row2"><select name="ip_select">{S_IP_OPTIONS}</select> <input class="post" type="text" name="ip" value="{IP}" /></td>
3. Скриншоты:
Отображение формы поиска в стиле prosilver по умолчанию
Отображение формы поиска в стиле prosilver после установки мода
--
Для пользователей ppkBB3cker - мод будет установлен в трекер в одном из следующих обновлений (с дополнительными опциями поиска по трекеру)