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

    • 347 скачиваний
    • Версия 1.0.4
    Спойлер с редактируемым заголовком на базе кода обычного спойлера ips. Это не заменяет стандартный спойлер, плагин добавляет отдельную кнопку. С версии 1.0.4 добавлен экспериментальный метод внедрения CSS спойлера в ACP для работы спойлера в редакторе внутри ACP Настройки: Показать\Скрыть текст в заголовке "Показать\Скрыть контент:" 1.1. Изменить позицию текса Изменить иконку на FONT-AWESOME иконку 2.1. Юникод иконки FA 2.2. Цвет иконки FA Обновить CSS в ACP 3.1 Обновите CSS спойлера в ACP после сохранения настроек Порядок установки: Установить плагин ( .xml ) из архива Добавить кнопку в разделе редактора ( .zip ) из архива Опционально: Изменить в настройках плагина код иконки или цвет. Опционально: Перевод названия кнопки и заголовка Spoiler Header (Editable) осуществляется в языках (фильтр по плагину). Плагин распространяется бесплатно и как есть. О любых ошибках и недочетах пишите в комментариях, будем исправлять.
    Free
  1. Exception replied to SlawkA's тема in Interface
    что там. Есть у кого последняя Recent Topics 1.1.5 ?, я 1.1.3 исправил под себя, почему то не работало сохранение в профиле настроек, и добавил функцию которая блокирует отправку ajax если вкладка не активна (исправляет баг когда таймер добавляется в очередь), замечали наверное баг если покинуть вкладку на некоторое время (от 5 мин), а потом опять перейти в неё, блок с этими темами сходит с ума, да и нет ненужных запросов теперь, когда пользователь смотрит другую вкладку
  2. Вывел комментарии таким образом: $databaseid = 1; $class = 'IPS\cms\Records\Comment' . $databaseid; $where = array(); $where[] = array( $class::$databasePrefix . $class::$databaseColumnMap['approved'] . '=?', 1 ); $where[] = array( $class::$databasePrefix . 'database_id=?', $databaseid ); $orderType = 'DESC'; $limit = 2; $comments = $class::getItemsWithPermission( $where, $class::$databasePrefix . $class::$databaseColumnMap['date'] . ' ' . $orderType, $limit ); Собирает ActiveRecordIterator из 2 ($limit) последних (DESC) одобренных комментариев из базы с ID 1 ($databaseid) . Далее просто итерациями выводим комментарии.
  3. Кто ни будь пытался вывести например через виджет последние комментарии из баз данных? Так же как и с другими классами не получится загрузить: $comments = \IPS\cms\Records\Comment::getItemsWithPermission( array( array( 'comment_approved=?', 1 ) );
  4. Найти шаблон includeJS в конец вставить: <script type="text/javascript"> $(document).ready(function(){ if (matchMedia) { var focus_pageWidth = window.matchMedia( "(min-width: 980px)" ); focus_pageWidth.addListener(WidthChange); WidthChange(focus_pageWidth); } function WidthChange(focus_pageWidth) { if (focus_pageWidth.matches) { $("#elSearchWrapper").prependTo(".focus-search"); } else { $("#elSearchWrapper").prependTo(".focus-mobile-search"); } } // Toggle class $('[data-class]').on( "click", function(event) { event.preventDefault(); var classContent = $(this).attr('data-class'); var classModifiers = classContent.split(' '); var className = classModifiers[0]; var modifyClass = classModifiers[1]; if (classModifiers[2]){ var targetElement = classModifiers[2]; } else { var targetElement = 'html'; } if (modifyClass === 'add'){ $(targetElement).addClass(className); } else if (modifyClass === 'remove'){ $(targetElement).removeClass(className); } else { $(targetElement).toggleClass(className); } }); }); </script> Найти шаблон custom.css в конец вставить: /* Mobile search */ .focus-mobile-search { padding-top: 70px; background: rgba(31,33,37,0.9); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); position: fixed; top: 0; left: 0; bottom: 0; right: 0; z-index: 6000; display: none; justify-content: center; align-items: flex-start; overflow: auto; } .focus-mobile-search__close { position: absolute; top: 15px; right: 15px; color: #fff; cursor: pointer; width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; font-size: 24px; border-radius: 4px; } .focus-mobile-search #elSearch { display: block !important; } .display--focus-mobile-search .focus-mobile-search { display: flex; } Найти в шаблоне mobileNavBar: <li class='ipsJS_show'> <a href='{url="app=core&module=search&controller=search" seoTemplate="search"}'><i class='fa fa-search'></i></a> </li> Заменить на: <li class='ipsJS_show'> <a href='{url="app=core&module=search&controller=search" seoTemplate="search"}' data-class='display--focus-mobile-search'><i class='fa fa-search'></i></a> </li> В конец шаблона mobileNavBar после тега </ul> добавить: <div class='focus-mobile-search'> <div class='focus-mobile-search__close' data-class='display--focus-mobile-search'><i class="fa fa-times" aria-hidden="true"></i></div> </div> Now ... give me your money! 😀
  5. Потому что выдал награду с датой до даты перестроения достижений. Попробуй изменить тут core_sys_conf_settings столбец conf_key строка achievements_last_rebuilt там в conf_value дата в формате юникса
  6. Переписал логику. Теперь скрипт точно выбирает как работать с сообщениями, улучшены алгоритмы: куда вы нажали, есть ли ответы, кто добавляет комментарий (вы или другой пользователь) и т.д. Весь вывод (ajax) и ввод сообщений подстраивается к тому, что уже на странице. Из того, что не попало на видео: Сортировка с запоминанием (Сначала старые, Сначала новые) перестраивает цепочки сообщений так же средствами ajax без перезагрузки страницы, 2 вида отображения: тот что на видео, и без оформления аватаров, с возможность скрыть линию с кнопкой (к комментарию-родителю) или убрать анимацию (классический вид с небольшим отступом у ответов для их отличия). Так же есть выбор как удалять цепочки, все дерево если удаляется комментарий родитель, либо скрыть комментарий родитель и оставить дочерние. Если кто-то очень хочет, могу через пару тестов продать плагин. На видео еще сыровато. (лагает локальный сервер, на боевом конечно же все запросы обрабатываются моментально)
  7. А в чем может быть дело? Ты бы еще версию 2.x на 8 пхп поставил. Функция set_magic_quotes_runtime начиная с версии 5.3 считается устаревшей, а с 5.4 удалена совсем. Открыть /initdata.php Найти @set_magic_quotes_runtime(0); if ( ! defined( 'IPS_MAGIC_QUOTES' ) ) { define( 'IPS_MAGIC_QUOTES', @get_magic_quotes_gpc() ); } Заменить на if( version_compare( phpversion(), '5.4.0', '<') ) { @set_magic_quotes_runtime(0); if ( ! defined( 'IPS_MAGIC_QUOTES' ) ) { define( 'IPS_MAGIC_QUOTES', @get_magic_quotes_gpc() ); } } else { if ( ! defined( 'IPS_MAGIC_QUOTES' ) ) { define( 'IPS_MAGIC_QUOTES', false ); } }
  8. Мучить пользователей не самый хороший вариант, @Skanexis!
  9. ips записывает ошибки вызванные в шаблонах. Да ваше дело, гадайте дальше через бд можно попробовать core_themes -> set_is_default
  10. Нормальные люди смотрят сначала логи сервера\веб-сервера\баз данных\ips, если ошибку из логов решить не удается, развертывается бэкап.
  11. можно же использовать базу из cms и настроить собственный шаблон
  12. https://ipbmafia.ru/forum/105-forum-zaprosov-invision-community/
  13. Смысл от таких тупых вопросов?
  14. https://invisioncommunity.com/developers/docs/development/plugins/code-hooks-r42/
  15. ну так у тебя в коде так и прописано потому что: .ipsReact_reactCount span:last-child{ background: {theme="react_bg"}; padding: 0 9px; }
  16. ipsReact_reactCount в поиске css файлы группы custom
  17. Странно, занимаетесь вебом а поиск использовать не научились
  18. у тебя замещение идет из кастомной секции css, это даже в исходнике видно как бы. Там же и изменить "бордюр": .ipsReact_reactCount { background: rgba(61,61,61,0.2); border-color: rgb(255 255 255 / 5%); border-radius: 10px; }
  19. да, видимо ctrl+F5 странно работает
  20. Да это понятно все, проблема была в кэше браузера, не чистил кэш нормально, нужно было очистить все глобально.
  21. Если в ресурсах темы найти файл, например default_photo.png и загрузить свое изображение, то после очистки системных кэшей, загруженное изображение заменится на дефолтное. Так только у меня?
  22. особо не проверял, но вроде работает: {{$groups_p = array( 1, 2 ); $groups_s = array( 3, 4 ); $groups_m = $comment->author()->groups;}} {{foreach $groups_m as $gpm}} {{if \in_array($gpm, $groups_p)}} {{$user_p = $gpm;}} {{elseif \in_array($gpm, $groups_s)}} {{$user_s = $gpm;}} {{endif}} {{endforeach}} {{if \in_array($user_p, $groups_p) AND \in_array($user_s, $groups_s)}} <li data-role='group'>{expression="\IPS\Member\Group::load( $comment->author()->member_group_id )->formattedName" raw="true"}</li> {{if \IPS\Member\Group::load( $user_s )->g_icon }} <li data-role='group-icon'><img src='{file="\IPS\Member\Group::load( $user_s )->g_icon" extension="core_Theme"}' alt='' class='cAuthorGroupIcon'></li> {{endif}} {{else}} <li data-role='group'>{expression="\IPS\Member\Group::load( $comment->author()->member_group_id )->formattedName" raw="true"}</li> {{if \IPS\Member\Group::load( $comment->author()->member_group_id )->g_icon }} <li data-role='group-icon'><img src='{file="$comment->author()->group['g_icon']" extension="core_Theme"}' alt='' class='cAuthorGroupIcon'></li> {{endif}} {{endif}} $groups_p - ID's первичных группы $groups_s - ID's вторичных группы Проверяет, если пользователь состоит в нужной первичной и вторичной группе, то вывести название группы (первичной) и иконку (вторичной), иначе вывести по дефолтному шаблону. Заменить на код выше: <li data-role='group'>{expression="\IPS\Member\Group::load( $comment->author()->member_group_id )->formattedName" raw="true"}</li> {{if \IPS\Member\Group::load( $comment->author()->member_group_id )->g_icon }} <li data-role='group-icon'><img src='{file="$comment->author()->group['g_icon']" extension="core_Theme"}' alt='' class='cAuthorGroupIcon'></li> {{endif}}

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.