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.

Dmitriy427

Пользователи
  • Регистрация

  • В сети

Everything posted by Dmitriy427

  1. Да, не вопрос. Я просто забыл, что сталкивался уже с Вашим примечательным ЧСВ и обещал не мешать самовыражаться.
  2. Хук для класса \IPS\Theme: public function getTemplate( $group, $app=NULL, $location=NULL ) { if( $group == 'my_group' and $app == 'my_app' and $location == 'my_location' ) { $template = parent::getTemplate( $group, $app, $location ); $search = preg_match( 'my_pattern', $template, $match ) ? $match[1] : false; if( $search ) { $replace = '<!--my_replece_code-->'; $template = str_replace( $search, $replace, $template ); } return $template; } return parent::getTemplate( $group, $app, $location ); }
  3. Функцию удалять или комментировать не нужно, будут ошибки JS при обращении к ней, достаточно закомментировать её содержимое и добавить строку 'return;'. При компиляции файла скрипта в дисковый кэш комменты удаляются автоматически.
  4. Очевидно, это не Ваш метод, поскольку регулярные выражения Вам изучать влом. Но это метод использующийся IPS, в том же sendOutput весь вывод прогняетяся через регулярки методами parseOutputForDisplay, parseFileObjectUrls, replaceEmojiWithImages. К тому же это только пример, делайте замены с нужным шаблоном - \IPS\Theme\Template, никто против не будет.
  5. Ищите в таблице `core_javascript`, строку с `javascript_name`='ips.core.navBar.js'
  6. В регулярке лишняя треугольная закрывающая скобка, на коленке писал... Правильно - '#<div\sclass="zzz"><h1\sclass="www">Title</h1></div>\n?\r?(<a[^<]*</a>)#s'. С ней в общем-то варианты возможны.
  7. Заменить что угодно в выводе ничто не мешает и штатными средствами PHP. Например хуком для класса \IPS\Output: public function sendOutput( $output='', $httpStatusCode=200, $contentType='text/html', $httpHeaders=array(), $cacheThisPage=TRUE, $pageIsCached=FALSE, $parseFileObjects=TRUE, $parseEmoji=TRUE ) { if( preg_match( '#<div\sclass="zzz"><h1\sclass="www">Title</h1></div>\n?\r?(<a[^<>]*</a>)#s', $output, $match ) ) { $replace = '<!--my_replece_code-->'; $output = str_replace( $match[1], $replace, $output ); } parent::sendOutput( $output, $httpStatusCode, $contentType, $httpHeaders, $cacheThisPage, $pageIsCached, $parseFileObjects, $parseEmoji ) }
  8. Или даже не так: Обработчик шлюза, размещенный разработчиком в папке плагина, в соответствии с нативной логикой приложения, тупо не будет работать, из-за этой правки.
  9. Ну, вот тоже действие не сложно осуществить хуком плагина, расширяющим каласс \IPS\nexus\Gateway, но если сделать правку предлагаемую fortek, то вы не сможете разместить обработчик шлюза в папке плагина, только по фиксированному пути.
  10. Очевидно вы имеете ввиду разные правки. Добавление своей пары ключ-значение, в массив возвращаемый функцией gateways(), ничего не ломает, в отличии от правки fortek .
  11. Там и так всё отлично копируется, прямо со страницы. У вас ФФ, похоже, глючит не по-децки. "Акура" - "mark=58".
  12. У меня было, пока уведомления не отключил. Довольно странный у вас тут антидидос-скрипт, если на аякснотификатор движка раз в минуту запрсы отсылающий реагирует.
  13. {lang="$topic->container()->parents()[0]->_title"}
  14. Писал недавно такой шлюз работающий c удалённой базой SQL Server, для игрового сайта на IPB3. Для "Нексуса" под четвёрку нету. Только под заказ сделать могу, зато с любым требуемым функционалом.
  15. Зависит от того - что за массив вы хотите получить: $select = array(); foreach( \IPS\Db::i()->select('image_id', 'gallery_images', array('image_updated>?', '1538300099'),'image_id DESC', array( 0, 10 ) ) as $row ) { //$select[] = $row; $select[ $row['image_id'] ] = $row['gallery_images']; } Сори, за копипастом не уследил. Правильно в Вашем случае так: $select = array(); foreach( \IPS\Db::i()->select('image_id', 'gallery_images', array('image_updated>?', '1538300099'),'image_id DESC', array( 0, 10 ) ) as $row ) { $select[] = $row; }
  16. http://php.net/manual/ru/function.json-decode.php
  17. Человеку, похоже, хочется вставить в шаблон готовый спагетти-код и совершенно не хочется заморачиваться с ООП, и разделением логики и представления. Вобщем-то, логично будет посоветовать подойти к вопросу кардинально и пересмотреть свой выбор движка. Например в тройке инклюды в шаблон возможны. Кстати, многие разработчики, используя возможности класса ips_plugins_setup_install, даже не подозревают о возможности, а часто и необходимости удаления созданных с его помощью ресурсов (файлов, таблиц, полей, строк...), при деинсталяции плагина. Я и сам далеко не сразу узнал о файле uninstall.php создаваемом в корневой папке плагина.
  18. Циклическая CSS-анимация грузит процессор не милосердно, не рекомендуется к использованию пока что. https://css-live.ru/articles/proizvoditelnost-css-animacij-nerasskazannaya-istoriya-s-kommentariyami-pola-ajrisha.html
  19. Повторюсь - в вашем вопросе ничего нет о странице темы, и на этом мы общение завершим, пожалуй.
  20. Это работает на странице форума, с большим количеством тем, в артиклес на страницах категорий, в блогах, клубах и т.д. Впрочем, Вам похоже важно не это. Впредь самоутверждаться Вы будете без моей помощи.
  21. В любом, где для вывода контента с пагинацией используется, метод \IPS\Helpers\Table\
  22. Яваскрипт в шаблонах IPS4 удаляется парсером движка. При написании плагина создавайте файл /plugins/my_plugin/dev/js/my_plugin.js
  23. Вы спросили - как отключить скрол, при использовании пагинации ровно на это я Вам и ответил. Ни на каких страницах отключить скролл, ни о том, что нужно его не отключить, а позицию изменить не спрашивали. Формулируйте вопросы точнее, будут точнее ответы.
  24. Конфликтовать они никак не могут. В настройках веб-сервера явным образом указывается файл сертификата, какой указали, такой будет использоваться.

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.