Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Trotor

Пользователь может видеть заголовки всех разделов

Рекомендованные сообщения

Есть приложение, выводящее логи репутации как на отдельной странице (все), так и в профиле пользователя, те которые ему изменили и который он изменил. Reputation History 1.1.0 называется.

Всё бы хорошо, вот только в профиле пользователя наблюдается довольно критический баг - при просмотре репутации пользователя, отображдаеться ко всему прочему и в каком разделе и теме выдана репутация. И если у человека нет доступа в этот раздел (тему), заголовок раздела и темы всё равно отображается.

Само приложение:

reputationhistory.zip

Поделиться сообщением


Ссылка на сообщение
02/19/17 17:41 (изменено)

Ну так все равно он туда не попадет, если прав нет. Гораздо больший баг приложения - это то, что оно не выводит репутацию, полученную в статьях и блогах.

 

И кстати, тема обсуждения мода уже есть http://ipbskins.ru/forum/topic15006.html

Изменено пользователем Strategius

Поделиться сообщением


Ссылка на сообщение

Ну так все равно он туда не попадет, если прав нет

Ну да, но тем не менее светяться темы и разделы у которых у него нет доступа.

Поделиться сообщением


Ссылка на сообщение

reputationhistory.zip (4,23К)

Большое спасибо. То что надо.

 

Только что заметил что и в общем списке тоже не выставлены мыски доступа. Не могли бы и там поправить?

Поделиться сообщением


Ссылка на сообщение
  • Upvote 2

Поделиться сообщением


Ссылка на сообщение

@newbie,

Помогло.

 

Однако есть одно НО - после замены файла, страница с репутацией загружаеться очень долго - около 4 секунд.

Поделиться сообщением


Ссылка на сообщение

Четыре секунды для Вашего форума предсказуемый результат. Слишком тяжелым получается запрос с условием отбора репутации только по "searchable" форумам, и чем дальше будет смешаться пагинация тем дольше будет отрабатывать запрос. Можно оставить как есть, а при фетчинге ответа, если топик находиться в закрытом разделе, указать что репутация получена в скрытом разделе.

Поделиться сообщением


Ссылка на сообщение

Можно оставить как есть, а при фетчинге ответа, если топик находиться в закрытом разделе, указать что репутация получена в скрытом разделе.

Да, такое вполне приемлемо.

Что мне нужно в код добавить?

Поделиться сообщением


Ссылка на сообщение

Что мне нужно в код добавить?

 

1. Убрать из условия

 AND t.forum_id IN(' . implode(',', $searchableForumIds) . ')

 

2.

														'select' => 't.title',

заменить на

														'select' => 't.title, t.forum_id',

 

3.

                $tmp['topic'] = sprintf('<a href="%s" title="Просмотреть оценку">%s</a>', $this->settings['base_url'].'app=forums&module=forums&section=findpost&pid='.$r['pid'], $r['title'], $r['title'].' '); 

заменить на

			    if (in_array($r['forum_id'], $searchableForumIds))
			{
				$tmp['topic'] = sprintf('<a href="%s" title="Просмотреть оценку">%s</a>', $this->settings['base_url'].'app=forums&module=forums&section=findpost&pid='.$r['pid'], $r['title'], $r['title'].' '); 
			}
			else
			{
				$tmp['topic'] = 'N/A'; 
			}

Поделиться сообщением


Ссылка на сообщение

@newbie,

Странно, всё равно тежи 4 секунды на открытие остаются.

Поделиться сообщением


Ссылка на сообщение
Странно, всё равно тежи 4 секунды на открытие остаются.

Пробуйте

reputationhistory.php

  • Upvote 2

Поделиться сообщением


Ссылка на сообщение

Пробуйте

Вот теперь всё как надо. Большое спасибо.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...