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.

edmsl

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

  • В сети

Everything posted by edmsl

  1. Разобрался. Создал новый шаблон JS и привязал к странице с БД багов. Но это для страницы из Pages. А можно ли что-то подобное для стандартных страниц например для страницы с загрузками или форумов?
  2. Для создания новой записи бага я сделал отдельный шаблон формы и привязал его к БД с багами. В этот шаблон я добавил JS код, который мне нужен. Просто в конце добавил тег <script>. Но это не правильно, что js код в середине страницы. Так вот, как мне сделать так, чтобы этот код отрабатывал только на странице с формой создания записи в БД? Если добавить этот код в шаблон includeJS, он будет отрабатывать везде, что не нужно. Читал, что можно сделать некие контроллеры и добавлять их через атрибут, например, data-controller="core.front.mycontroller". Так вот как создать такой контроллер и привязать его к нужной странице? Или может есть еще способы?
  3. И еще. Есть кастомное поле с типом связи с БД. Вот как мне получить id той записи, которая указана в значении поля? Если применить собственно форматирование к этому полю, то нужное мне значение находится в {$formValue}. Вот его мне и нужно достать в шаблоне. Нужно что-то вроде этого, но именно так не работает: {$record->customFieldDisplayByKey('game_name')->$formValue}
  4. Возможно ли как-то в шаблоне получить информацию о конкретном файле в Downloads? Нужно сделать селектор выбора версии файла при размещении бага. Для этого версии надо брать из файла.
  5. И можно ли как-то получить категорию, в которую загружен файл, который для файла из Downloads? Что-то типа $file->category.
  6. Есть блок {block="block_id"} Шаблон для него я сделал и прописал переменные так: Переменные: $records, $title, $orientation='vertical', $some=0 Возможно ли как-то передать параметр $some в кастомный блок? {block="block_id" params="123"} не работает.
  7. Можно ли в шаблоне получить строку ссылки? Или параметры, передаваемые по ссылке? Суть в чем. Баги это своя база, а сборки - своя. Как я говорил, связывать вручную неудобно. Надо подставлять значение в поле сразу, на основе id сборки. Например, есть ссылка https://site.ru/bugs.html/?do=form&d=6&game=4, где game=4 - это id сборки в базе. Вот есть ли возможность получить этот id в шаблоне?
  8. edmsl replied to S!r.ReaDY's тема in Interface
    Тоже рассматривал замену этого плагина встроенным функционалом. Но остался на плагине. Настройки шире, плюс можно все делать прямо на сайте, без админки. У меня 4.7.9. Там все норм.
  9. Exception Можно. Но все же знают, как это описание читают пользователи. Когда у нас на сайте были проблемы с регистрацией через почту Гугла, я большими буквами в отдельном блоке на странице регистрации написал,что пожалуйста, не регайтесь с помощью гугл почты. Но все равно находились те, кто шел против системы, и их было достаточно много, 2-3 на 10 человек. Так что нет, добавить описание это не выход, нужен только очевидный выбор.
  10. andros0789 Проблема не в том, что данные не выводятся, а в том, что при создании записи поле связи с БД это просто текстовое поле и то, как его правильно заполнять, для рядового пользователя совершенно неочевидно.
  11. В общем, вся эта идея со связью баз хороша, но реализация этой связи не удобна. Пользователю придется начать набирать текст названия сборки в текстовое поле, чтобы подходящий вариант появился в списке и его можно было бы выбрать. Причем само поле связи с БД - это просто текстовое поле, в которое вообще не понятно, что надо вводить. Так что нет, не катит, надо, чтобы было что-то вроде выпадающего списка. Как вариант, можно сделать это поле невидимым, а значение подставлять через JS, взяв нужный ID сборки из ссылки например. Но это все дикие костыли, конечно. И не ясно, куда прописать JS код. Хотя JS код можно попробовать впихнуть в шаблон формы создания записи, создав новый. Надо попробовать.
  12. AHristich Хм. Кстати да, об этом я как-то не подумал. Надо попробовать.
  13. AHristich Да, я понял. пробовал это, но привязывать можно только конкретные записи (баги), а не всю категорию. А так да, было бы идеально.
  14. Так уже создал базу данных с багами. Категории БД это сборки, к которым относятся баги, а записи - сами баги.
  15. Где найти информацию по этим классам и методам? Я даже на офф. сайте не могу найти.
  16. Exception Да, без знаний PHP это будет сложно. Что ж, спасибо. Попробую пока через блоки. Если не получу вменяемого результата, то придется копать глубже.
  17. Пожалуй, вопрос можно упростить. Как получить записи $records из базы данных Pages в шаблоне темы?
  18. Если я правильно все понимаю, то имеется ввиду перенос в хуки какого-то нового, созданного мной, плагина всех тех изменений, что я сделал в теме путем создания новых файлов шаблонов? Т.е. я удаляю все те новые шаблоны, а их код реализую через плагин?
  19. Собственно, можно ли как-то реализовать функционал блока (те, что из Pages) без использования этих самых блоков? Суть в чем. Я хочу реализовать баг-трекер. Есть сборки по играм и для каждой нужен свой баг-трекер. Первым делом решил воспользоваться плагином Downloads Plus. Он встраивает вкладку баг-трекера для каждого файла. Но на 4,7,9 он ожидаемо не работает. Поэтому создал новую базу даннных, создал для каждой сборки категорию, и туда записываю баги. От тем на форуме отказался, так как не удобно и не так гибко. Для каждой сборки на ее странице нужно отображать свои баги. Для этого сделал блок для нужной категории и вставил в код шаблона. И здесь главное неудобство. Надо для каждой игры-сборки создавать свой блок. А если их 10, то уже десять блоков. А если нужно еще фильтр? На каждый фильтр еще по блоку. Так же, если записей нет, то блок не отображается, даже если после условия {{if !empty( $records ) }} добавить {{else}} c кодом. А хотелось бы об этом явно указать. Поэтому нужно создать шаблон, который бы доставал данные из базы и выводил их, но без использования блоков. Я думал вставить код шаблона блоков без использования этих самых блоков, но как передать туда записи из БД я не знаю. Надеюсь, вы меня поняли. Может кто-то уже пытался нечто подобное реализовать? Вот что пытаюсь реализовать.
  20. Кто-то писал, что при обновлении ips будет предложено выбрать, какой код добавить в шаблон, текущий или новый. Или это не то? Тогда придется для все плагины изменять, которые связаны с измененными шаблонами. На самом деле мне больше нравится идея создания отдельных шаблонов для изменений, но вот эти вот проблемы с плагинами удручают.
  21. Exception Спасибо. Да, так и есть. class_core_front_global. Вообще, вся эта затея с заменой шаблонов мне уже не нравится. Мало того, что плагины после этого не работают, так еще и стандартные фишки, типа цвета имени пользователя в постконтейнере (его я тоже изменил и заменил шаблон), тоже не работают. Как говорится, из двух зол выбираем меньшее. Придется править оригинальные шаблоны.
  22. Приветствую. Решил изменить шапку сайта. Как рекомендуют на офф. сайте invision, сделал свой шаблон (header) в отдельном файле-шаблоне и заменил им оригинал. В globalTemplate заменил это: <div id='ipsLayout_header' class='ipsClearfix'> <header> <div class='ipsLayout_container'> {template="logo" app="core" group="global" params=""} {{if !\in_array('ipsLayout_minimal', \IPS\Output::i()->bodyClasses )}} {template="userBar" app="core" group="global" params=""} {template="mobileNavigationIcon" app="core" group="global" params=""} {{endif}} </div> </header> {template="navBar" app="core" group="global" params=""} {{if !\in_array('ipsLayout_minimal', \IPS\Output::i()->bodyClasses )}}{template="mobileNavBar" app="core" group="global" params=""}{{endif}} </div> на это: {template="header" app="core" location="front" group="_myheader" params=""} У меня стоит плагин Clear Notifications, который добавляет кнопку очистки уведомлений в юзербар в шапке. Это скрин из стандартной темы. Хук у плагина простой: /* !Hook Data - DO NOT REMOVE */ public static function hookData() { return array_merge_recursive( array ( 'userBar' => array ( 0 => array ( 'selector' => '#elFullNotifications_menu > div.ipsMenu_footerBar.ipsType_center', 'type' => 'add_inside_end', 'content' => '{template="clearNotificationsLink" app="core" group="plugins" location="global"}', ), ), ), parent::hookData() ); } /* End Hook Data */ Но шаблон userBar у меня тоже свой, в отдельном файле (_userBar), т.к. я добавил туда одну кнопку, но див по селектору #elFullNotifications_menu > div.ipsMenu_footerBar.ipsType_center присутствует. И хук не добавляет кнопку. Вопрос: можно ли добавить кнопку очистки в кастомный шаблон через хук , а не через правку шаблона _userBar, напрямую прописав туда код шаблона кнопки из плагина? '_userBar' => array ( 0 => array ( 'selector' => '#elFullNotifications_menu > div.ipsMenu_footerBar.ipsType_center', 'type' => 'add_inside_end', 'content' => '{template="clearNotificationsLink" app="core" group="plugins" location="global"}', ), ), так не работает.
  23. Разобрался. Изменения в config.js работают, но для этого надо очистить кэш браузера. Вот и весь секрет. В Гугл Хром достаточно обновить страницу с помощью Ctrl + F5, а вот в Firefox почему-то не прокатывает, только через настройки очищать.

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.