Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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

Опубликовано:

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

 

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,

 

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

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

Опубликовано:

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

Опубликовано:
<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>

Опубликовано:
  • Автор

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

 

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

Опубликовано:

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

В качестве метке можно использовать 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'];

  • 1 год спустя...
Опубликовано:

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

 

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

Опубликовано:

Стартпост читали?

 

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

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

Сейчас на странице 0

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.