Trigub_Ilia

Открытие попап iframe окна в Битрикс 24

Apr 6th, 2020
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.22 KB | None | 0 0
  1. //Регистрируем обработчик
  2. \CJSCore::RegisterExt(
  3.     'firstbit_project_route',
  4.     [
  5.         'js' => '/local/static/js/firstbit.project/route.js',
  6.         'rel' => ['sidepanel']
  7.     ]
  8. );
  9.  
  10. //Вызываем обработчик при событии загрузки страницы OnProlog
  11. $asset = Asset::getInstance();
  12. \CJSCore::Init([
  13.     'firstbit_project_route'
  14. ]);
  15.  
  16. //В файле route.js прописываем js обработчик ссылок
  17. $(function() {
  18.     //инициализация SidePanel для url-ов кастомных сущностей
  19.     if(window == window.top) {
  20.         window.top.BX.SidePanel.Instance.bindAnchors({
  21.             rules: [
  22.                 {
  23.                     condition: [
  24.                         "/services/job/(\\d+)/show/",
  25.                         "/services/job/(\\d+)/edit/",
  26.                         "/services/job/response/(\\d+)/show/",
  27.                         "/services/job/response/(\\d+)/edit/",
  28.                         "/crm/ddd/aaa/(\\d+)/"
  29.                     ],
  30.                     stopParameters: [
  31.                         "IFRAME",
  32.                         "page"
  33.                     ],
  34.                     options: {
  35.                         cacheable: false,
  36.                         width: 900,
  37.                         events: {
  38.                             onLoad: function(event) {
  39.                                 console.log("onLoad");
  40.                             }
  41.                         }
  42.                     }
  43.                 }
  44.             ]
  45.         });
  46.     }
  47. });
  48. //Метод BX.SidePanel.Instance.bindAnchors задает правила обработки ссылок на странице. В момент нажатия на ссылку, слайдер сравнивает адрес в атрибуте href c зарегистрированными шаблонами. В случае совпадения, соответствующая страница открывается в iframe'е слайдера.
  49. //Подробнее можно прочесть в документации https://dev.1c-bitrix.ru/api_help/js_lib/sidepanel/click_links.php
  50. // https://dev.1c-bitrix.ru/api_help/js_lib/sidepanel/events/index.php
Add Comment
Please, Sign In to add comment