Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Haktar

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

Recommended Posts

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

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

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

reputationhistory.zip

Share this post


Link to post
Share on other sites

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

 

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

Edited by Strategius

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

reputationhistory.zip (4,23К)

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

 

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

Share this post


Link to post
Share on other sites

@newbie,

Помогло.

 

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

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

Share this post


Link to post
Share on other sites

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

 

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'; 
			}

Share this post


Link to post
Share on other sites

@newbie,

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

Share this post


Link to post
Share on other sites
Странно, всё равно тежи 4 секунды на открытие остаются.

Пробуйте

reputationhistory.php

  • Upvote 2

Share this post


Link to post
Share on other sites

Пробуйте

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...