Приветствую.
Вот заметил не приятную особенность:
когда перемещаешь последний топик юзера, в его профиле остаются старые данные
исправил так:
файл posting.php
ищем строки
CODE:
// Обновим статистику постов у пользователей
$thread = $fm->_Read($newtopicfile);
foreach ($thread as $id => $post)
if (!isset($autors[$post['p_id']])) $autors[$post['p_id']] = 1;
else $autors[$post['p_id']]++;
UpdateAutorsInfo($autors);
и меняем на
CODE: // Обновим статистику постов у пользователей
$thread = $fm->_Read($newtopicfile);
foreach ($thread as $id => $post)
if (!isset($autors[$post['p_id']])) $autors[$post['p_id']] = 1;
else $autors[$post['p_id']]++;
UpdateAutorsInfo($autors,$newtopic_id,$topic_id);
ищем
CODE:function UpdateAutorsInfo(&$autors) {
меняем на
CODE:function UpdateAutorsInfo(&$autors, $newtopic_id=false,$topic_id=false) {
чуть ниже ищемCODE:
if (file_exists('members/'.$user_id.'.php')) {
$user = $fm->_Read2Write($fp_user, 'members/'.$user_id.'.php');
и добавляем
CODE:
// если у юзера это последний пост, то меняем в его профиле
$link = explode("=", $user['lastpost']['link']);
if(intval($link[1])==$forum_id && intval($link[2]==$topic_id)) {
$user['lastpost']['link'] = 'topic.php?forum='.$toforum_id.'&topic='.$newtopic_id;
}
Я реализовал через параметры функции, возможно было и через GLOBAL, но я не сторонник такого. |