«Вопросы и ответы». Как вылечить?

Допиливаю приобретенный плагин «Вопросы и ответы». Остались две известные проблемы, которые никак не удается решить. Может, кто решал их и поможет советом.

Проблема номер раз: По инструкции сделал, чтобы кол-во вопросов и ответов учитывалось и выводилось в меню. Оно выводится, но только на половину – правильный подсчет материалов происходит только на активной вкладке «Публикации», если же активна вкладка «Whois» количество материалов считается без количества опубликованных вопросов и ответов. Хотелось бы, чтобы на обеих вкладках отображалось правильное количество материалов.

Проблема номер два: Для вывода опубликованных пользователем комментариев и ответов используется один и тот же comment_list.tpl, а для того, чтобы не возникало ошибки при выводе ответов, в вышеуказанном файле убран вывод названия блога, к которому оставлен комментарий. Хотелось бы сделать так, чтобы и в комментариях выводилось название блога, и в ответах при этом не было косяков.

4 комментария

avatar
1) Кол-во вопросов и ответов изначально не включались в число публикаций, т.к. это не совсем публикации по мнению автора.
2) Не понятно о чем идет речь и о каком названии блога? В qa нету блогов.
avatar
1. Но это же в любом случае публикации пользователя. Да и в каталоге, на странице плагина, приводится описание как выводить общее их кол-во (вместе с вопросами-ответами), но при этом все работает только для одной вкладки «Публикации».

2. Прочитайте внимательно абзац. В нем комментарии — это родные комменты движка, ответы — ответы модуля «Вопросы и ответы», ну а блоги — родные блоги движка. И посмотрите на comment_list.tpl плагина. В родном ЛС-овском comment_list.tpl (шаблон «new») в этом файле в каждом комменте вверху выводится название топика, к которому оставлен коммент, блог в котором размещен топик, к которому оставили коммент и кол-во комментариев, оставленных к топику. Вы в плагине вывод названия блога, которому принадлежит топик убрали, чтобы не возникало ошибки из-за того, что в qa нету блогов. Вместе же с этим эта часть пропала и в комметах на станице комментов оставленных пользователем, т.к. оба этих пункта используют один и тот же comment_list.tpl Вашего плагина.
avatar
Понял о чем вы говорите, надо было сразу в личку писать. Т.к. не уверен, когда внесу изменения в каталог, решение довольно простое.
1. В файл qa/classes/actions/ActionProfile.class.php надо внести маленькое дополнение.
Ищем функцию public function EventShutdown() (строка 52) и добавляем следующий код:

$iCountQuestionsUser=$this->PluginQa_Qatopic_GetCountTopicsByUserId($this->oUserProfile->getId());
$iCountAnswersUser=$this->PluginQa_Qacomment_GetCountCommentsByUserId($this->oUserProfile->getId(),'qa_topic');
$this->Viewer_Assign('iCountQuestionsUser',$iCountQuestionsUser);
$this->Viewer_Assign('iCountAnswersUser',$iCountAnswersUser);


2. Понял о чем вы говорите.
Решается добавлением в comment_list.tpl в цикле.

{assign var="oBlog" value=$oTopic->getBlog()}
{if isset($oBlog)}{$oBlog->getTitle()}{/if}

То есть в конструкции isset выводим ссылку на блог и все, что надо.
avatar
Простите, что не в личку, просто допиливаю «под себя» и на рабочем проекте, поэтому и спрашивал у всех сразу, думал может быстрее решение найдется, а на изменения в каталоге никоим образом не претендую.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.