ООО ЭкоЮнит
FAQПоискПользователиГруппыФайлыВходРегистрацияГлавная
Версия для печати
 
 
АвторСообщение
vlad77 Пол:Муж.

Модератор


Зарегистрирован: 15.03.2008
Показать/Спрятать

vlad77 @ Пт 21 Ноя, 2008 21:05 писал: (Просмотр сообщения)
Показать
Спустя столько лет - фикс.
Проблема вызвана тем, что если у пользователя есть приятели, то на всех страницах форума (не только на index.php) производится выборка всех присутствующих на форуме пользователей. Потом лишние пользователи убираются из списка, а убрать лишних гостей забыли.
Код:
открыть
page_header.php

найти
            // Skip multiple sessions for one user
            if ( $row['session_ip'] != $prev_session_ip )
            {

после добавить
            if ( !empty($forum_id) )
            {
                if( $forum_id != $row['session_page'] )
                {
                    continue;
                }
            } 


если же стоит мод Topic in Who is online, то по другому

Код:
открыть
page_header.php

найти
            // Skip multiple sessions for one user
            if ( $row['session_ip'] != $prev_session_ip )
            {

после добавить
            if ( !empty($topic_id) )
            {
                if( $topic_id != $row['session_topic'] )
                {
                    continue;
                }
            }
            if ( !empty($forum_id) )
            {
                if( $forum_id != $row['session_page'] )
                {
                    continue;
                }
            }

найти
                if ( !empty($forum_id) && !defined('NO_CONTACTS') )
                {
                    if( $forum_id != $row['session_page'] )
                    {
                        continue;
                    }
                }

перед добавить
                if ( !empty($topic_id) && !defined('NO_CONTACTS') )
                {
                    if( $topic_id != $row['session_topic'] )
                    {
                        continue;
                    }
                } 
ВверхНа форуме нет Всего отзывов: 1 Профиль
vlad77 Пол:Муж.

Модератор


Зарегистрирован: 15.03.2008
Показать/Спрятать

Если одновременно один приятель появился на форуме, а другой отключился, то всплывающему окну передаются пустые списки подключившихся и отключившихся.
Фикс что бы при этом во всплывающем окне не писал ошибку.

Код:
#
#-----[ OPEN ]------------------------------------------
#
mods/contact/class_contact.php

#
#-----[ FIND ]------------------------------------------
#
        elseif( empty($online_list) )

#
#-----[ BEFORE, ADD ]------------------------------------------
#
        elseif( !empty($online_list) && !empty($offline_list) )
        {
            $u_buddy_alert .= $offline_list . '&online=' . $online_list;
        }

#
#-----[ FIND ]------------------------------------------
#
        $template->assign_block_vars('buddy_alert',    array(

#
#-----[ BEFORE, ADD ]------------------------------------------
#
        if (!$buddy_alert || !$u_buddy_alert)
        {
            return;
        }

#
#-----[ OPEN ]------------------------------------------
#
mods/contact/functions_contact.php

#
#-----[ FIND ]------------------------------------------
#
        $final_list .= $online_ids;

#
#-----[ REPLACE WITH ]------------------------------------------
#
        $final_list .= ( ($final_list == '') ? '' : ',' ) . $online_ids;
ВверхНа форуме нет Профиль
vlad77 Пол:Муж.

Модератор


Зарегистрирован: 15.03.2008
Показать/Спрятать

Что бы получать на форуме уведомления только о тех кто взаимно добавил в друзья. Так психологически более оправдано.

Код:
#
#-----[ OPEN ]------------------------------------------
#
mods/contact/class_contact.php

#
#-----[ FIND ]------------------------------------------
#
                $field_check_sql .= ' AND c.disallow = 0 AND c.user_ignore = 0';

#
#-----[ AFTER, ADD ]------------------------------------
#
                if (defined('SHOW_ONLINE'))
                {
                    $field_check_sql .= ' AND u.user_id = c2.user_id  AND c2.contact_id = ' . $userdata['user_id'] . ' AND c.contact_id = c2.user_id';
                    $table2 = ', ' . CONTACT_TABLE . ' c2';
                }

#
#-----[ FIND ]------------------------------------------
#
$sql = 'SELECT ' . $fields_sql . ', u.username FROM ' . CONTACT_TABLE . ' c

#
#-----[ IN-LINE AFTER, ADD ]----------------------------
#
' . $table2 . '

#
#-----[ OPEN ]------------------------------------------
#
language/lang_russian/lang_contact_faq.php

#
#-----[ FIND ]------------------------------------------
#
$faq[] = array('Какие возможности предоставляет список друзей?'

#
#-----[IN-LINE FIND]------------------------------------
#
');

#
#-----[ IN-LINE BEFORE, ADD ]---------------------------
#
<br />Вы получите уведомления при взаимном добавлении вас и вашего друга в свои контаты.

#
#-----[ OPEN ]------------------------------------------
#
language/lang_english/lang_contact_faq.php

#
#-----[ FIND ]------------------------------------------
#
$faq[] = array('What features does the Buddy List provide?'

#
#-----[IN-LINE FIND]------------------------------------
#
');

#
#-----[ IN-LINE BEFORE, ADD ]---------------------------
#
<br />You received notifications when you and your buddy are added to your contact lists. 



В личных сообщениях не передавать sid (в личных сообщениях создаваемых другими модами идентификатор сессии не передается)

Код:
#
#-----[ OPEN ]------------------------------------------
#
class_contact.php

#
#-----[ FIND ]------------------------------------------
#
viewprofile&sid=' . $userdata['session_id'] . '

#
#-----[IN-LINE REPLACE WITH]----------------------------
#
viewprofile

#
#-----[ FIND ]------------------------------------------
#
show&sid=' . $userdata['session_id']

#
#-----[IN-LINE REPLACE WITH]----------------------------
#
show'

если предыдущие фиксы не ставились, то вместо
&sid=' . $userdata['session_id']

искать
&amp;sid=' . $userdata['session_id'] 
ВверхНа форуме нет Всего отзывов: 1 Профиль
Показать сообщения:   

Общий рейтинг темы Мод Contact List - проблемы
Средний рейтинг: 0.00 :: Мин. рейтинг: 0 :: Макс. рейтинг: 0 :: Количество оценок: 0
Выберите оценку: 1   2   3   4   5  

Похожие темы
Тема Автор Форум Ответов Посл. сообщение
Нет новых сообщений Локализация мода Contact List
По просьбе трудящихся выкладываю русские языковые файлы мода Contact List. Что такое Contact List или Списки контактов подробнее смотрите соответствующий раздел FAQ на этом форуме.
Sergey Поддержка и моды для phpBB2 0 Вт 18 Июл, 2006 18:56 Посмотреть последнее сообщение
Sergey
Нет новых сообщений Мод Topics watch list
список подписанных тем
Описание мода: Позволяет найти темы, за которыми вы следите (подписанные темы). Версия мода: 1.0.2 Сложность установки: Легко Время установки: ~15 минут Примечание автора: :arrow: Мод добавляет ссылку Подписанные темы в
Sergey Поддержка и моды для phpBB2 2 Сб 27 Май, 2006 16:29 Посмотреть последнее сообщение
Sergey
Нет новых сообщений Адд-он Birthday list caching
кэширование списка именинников для мода Birthday MOD by Niels
Описание мода: Предназначен для ускорения генерации главной страницы форума при использовании Birthday MOD by Niels. Версия мода: 1.0.2 Сложность установки: Легко Время установки: ~5 минут Примечание автора: ВАЖНО! Перед
Sergey Поддержка и моды для phpBB2 33 Вт 01 Сен, 2015 10:37 Посмотреть последнее сообщение
Sergey
Нет новых сообщений Адд-он Birthdays list caching
кэширование списка именинников для мода Birthdays MOD by TerraFrost
Описание мода: Предназначен для ускорения генерации главной страницы форума при использовании Birthdays MOD by TerraFrost. Версия мода: 1.0.0 Сложность установки: Легко Время установки: ~5 минут Примечание автора: ВАЖНО!
Sergey Поддержка и моды для phpBB2 3 Пн 30 Апр, 2007 19:20 Посмотреть последнее сообщение
Today
Нет новых сообщений Добавить в список пользователей в админке Забанен
добавить в Users List графы
Как добавить в админке в Users List статус если пользователь забанен, к примеру вместо сайт, и туда же внести IP, будет очень удобно для отсеивания и поиска нужного параметра в пользователя.
Ренегат Поддержка и моды для phpBB2 8 Пт 24 Фев, 2017 20:01 Посмотреть последнее сообщение
Ренегат






Часовой пояс: UTC + 3 часа
Просматривают тему:
Зарегистрированные пользователи: Нет

Перейти:   
Версия для печати
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы можете скачивать файлы
/a
Имя:

Пароль:

Запомнить
  Яндекс.Метрика
CrackerTracker © 2004 - 2018 CBACK.de