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

Изменить фильтр форумов

Recommended Posts

Хочу добавить на странице "Просмотр новых публикаций" ссылку, при нажатию на которую будут исключены из списка темы из определенного форума.

 

post-32932-0-79993400-1426167766_thumb.png

 

Пункт "Фильтровать по форуму" неудобен, так как чтобы исключить один форум, нужно поочередно выделять или не выделять форумы в списке.

 

Проанализировал POST запрос, отправляемый с формы "Фильтровать по форуму". Запрос отправляется на url:

 

_http://сайт.ru/forum/index.php?app=core&module=ajax&section=search&do=saveForumsVncFilter

 

Отправляются следующие параметры:

secure_key:e5004514a3c2dd44df05aded5b02e5b2

saveVncFilters:14,25,26,13,21,22,8,20,19,16,18,

 

Что мне дальше делать с этим? Как всё это дело вставить в шаблон?

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
<a href="#" id="vncFilters">Исключить форумы</a>

<script>
$('vncFilters').observe('click', function(e){
Event.stop(e);
var _url = ipb.vars['base_url'] + 'app=core&module=ajax&section=search&do=saveForumsVncFilter&saveVncFilters=14,25,26,13,21,22,8,20,19,16,18' + '&secure_key='+ipb.vars['secure_hash'];
new Ajax.Request(_url, {
	method: 'get',
	onSuccess: function(t)
	{
		window.location = window.location;
		window.location.reload(true);
	}
});
});
</script>

Share this post


Link to post
Share on other sites

siv1987, спасибо! Работает.

 

А как сделать чтобы при повторном нажатии действие отменялось (возвращалось)? И как сделать чтобы ссылка отображалась, что она активна (подсвечивалась).

Share this post


Link to post
Share on other sites

А как сделать чтобы при повторном нажатии действие отменялось (возвращалось)?

В качестве метке можно использовать vncPrefs из кеша пользователя. $vncPrefs['forums']['vnc_forum_filter'] не объявлен или имеет пустое значение когда выбраны все форумы.

 

<php>
$vncPrefs = IPSMember::getFromMemberCache( $this->memberData, 'vncPrefs' );
$vncPrefs = (! empty($vncPrefs['forums']['vnc_forum_filter'])) ? $vncPrefs['forums']['vnc_forum_filter'] : '';
</php>

 

var vncPrefs   = '{$vncPrefs}';
var vncFilters = vncPrefs ? 'all' : '14,25,26,13,21,22,8,20,19,16,18';
var _url = ipb.vars['base_url'] + 'app=core&module=ajax&section=search&do=saveForumsVncFilter&saveVncFilters=' + vncFilters + '&secure_key='+ipb.vars['secure_hash'];

Share this post


Link to post
Share on other sites

У меня что-то не работает этот метод... Или я не очень понял, как он работает :)

 

Это улучшение пункта "Фильтровать по форуму" что-ли?

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...