Jump to content
View in the app

A better way to browse. Learn more.

IPBMafia.ru - поддержка 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.

Exception

Актив
  • Регистрация

Everything posted by Exception

  1. скорее всего не находит нужные элементы, попробуй тогда так, скрипт теперь ждет полной готовности страницы: <script type='text/javascript'> $( document ).ready(function() { $('#ipsLayout_contentArea').find('div[data-role="commentContent"]').find('p:last').each( function () { if( $(this).next().length == 0 ){ $(this).html(function (i, html) { return html.replace(/&nbsp;/g, ''); }); } }); }); </script>
  2. <script type='text/javascript'> $('#ipsLayout_contentArea').find('div[data-role="commentContent"]').find('p:last').each( function () { if( $(this).next().length == 0 ){ $(this).html(function (i, html) { return html.replace(/&nbsp;/g, ''); }); } }); </script>
  3. В ранних версиях блоки кэшировались в зависимости от настроек кэширования блоков . Либо писать хук, либо можешь сам изменить, он находится тут \applications\forums\widgets\forumStatistics.php
  4. Я посчитал что в редакторе он все же нужен, мало ли захочется ввести текст или еще что под видео. Скрипт циклом проверяет все сообщения на странице и удаляет этот nbsp если дальше нету других тегов.
  5. он удалять должен в постах которые уже отправлены
  6. этот блок кэшируется на 24 часа /** * @brief Cache Expiration - 24h */ public $cacheExpiration = 86400;
  7. в самый конец вставь после {{endif}}
  8. в шаблонах вбей просто, он найдет
  9. или можно так, вставь это в includeJS <script type='text/javascript'> $('#ipsLayout_contentArea').find('.ipsEmbeddedVideo').each( function () { if( $(this).next("p:contains('')").next().length == 0 ){ $(this).next("p:contains('')").remove(); } }); </script> удаляет nbsp если дальше нет тегов
  10. его удалить можно при добавлении
  11. .ipsEmbeddedVideo { margin: 10px 0 10px 0; }
  12. очистка системных логов на сколько установлена? Можно узнать вес таблиц, например командой SELECT table_name AS `Table`, round(((data_length + index_length) / 1024), 2) `Size in KB` FROM information_schema.TABLES WHERE table_schema = "DBName"; DBName - имя базы
  13. Можно выставить 1 запрос = 5 секунд, или 1-2 минуты, я страницы чаще обновляю когда по форуму ползаю. Тем более опять же если есть редис, запросы идут к нему, в запросе формируется двумерный массив, данных немного. Для большого форума такие запросы ничто. Тем более сам IPS очень статичен и ajax редко используется. Например стандартно, если покопаться, идут запросы ~1-2мин на получение новых уведомлений, или, например, когда ты находишься в теме, на получение новых ответов (чтобы потом нажать кнопку показать ответы) и т.д. Не знаю как там с темами, но в виджете посетителей, мой ajax пока что только достает готовые данные сессии (не заставляет их обновиться), которые формирует сам движок когда пользователь заходит в тему или пишет что.
  14. Надеюсь ты это не с серьезным лицом писал? Тем, что добавил обновление на ajax. Обновление пользователей происходит на лету, не нужно перезагружать страницу, а все новые подключенные пользователи отобразятся сразу. Так же дописал js который аккуратно добавляет и удаляет пользователей: Так же ajax обновляет статус пользователя если он что-то пишет в редакторе: Экспериментирую пока что со всем этим, но заставил этот виджет работать так, как он должен работать. Еще можно вместе с ajax запросом обновлять саму сессию, чтобы если пользователь даже не активен, оставался в ней. Т.е. будет уже эмуляция "активной онлайн локации" где пользователи отображаются как в дискорде например в комнате, пока её не покинут. Сейчас ips удаляет таких из сессии. Данные хранятся в редисе если он есть, т.е. можно спокойно долбить его запросами.
  15. Как тебе такое, Илон Макс на гифке грузится долговато, ибо это тестовый сервер на харде В реалиях отправляются аяксы с заданной частотой (от 1 секунды и т.д. можно задать самому) на получение пользователей в реальном времени которые находятся на странице. Так же отключено кеширование данного блока совсем.
  16. Вполне логично, виджеты же кэшируются. Вопрос скорее в том, почему они не могут сделать надстройку для таких виджетов чтобы они не кэшировались или запрос выполнялся средствами ajax
  17. Переписывать код виджета. В последней версии добавили отображение твоего ника ВСЕГДА если ты на странице, это сделано через js и не влияет на других пользователей.
  18. Платить 30$ за то, что уже есть в IPS, это конечно умно. /modcp/announcements/?action=create
  19. Так что ли case 'points_post': $val = $first ? 0 : 1; break; case 'points_topic': $val = 1; break;
  20. if ( isset( \IPS\Request::i()->id ) ) { if ( \IPS\Dispatcher::i()->application->directory == 'downloads' ) { if ( \IPS\Dispatcher::i()->controller == 'browse' ) { $load = \IPS\downloads\Category::load( \IPS\Request::i()->id ); $myvar = $load->myvar; } elseif ( \IPS\Dispatcher::i()->controller == 'view' ) { $file = \IPS\downloads\File::load( \IPS\Request::i()->id ); $load = \IPS\downloads\Category::load( $file->cat ); $myvar = $load->myvar; } } } Может проще как то получить экземпляр загруженных классов из виджета? Но что-то я не нашел такой возможности
  21. Это не из-за обновления, а из-за того что вы вставляете код непонятно как. Проверяйте правильность синтаксиса в шаблонах где вы недавно что-то делали (globalTemplate, IncludeJS)

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.