поставил. Теперь у меня дополнительно (видимо в обход буферизации) выводится div с классом comp_{набор символов} внутри которого лежит без каких либо дополнительных вещей строка JSON'a arResult этого компонента (https://yadi.sk/i/Al60HJ4thPoSjg)
Для справки шаблон с которым компонент вызывается упаковывает все в json и возвращает, а когда я получаю его в ob_get_clean, я делаю распаковку обратно в массив, дополняю нужными мне данными и возвращаю опять-же в виде json приложению
Прямо вот именно так и никак по-другому не сделать?
может и сделать, но я не знаю как, поэтому и спрашиваю.
Я пробовал прокидывать PAGEN в GET параметры, но он игнорится.
я делал вот так:
вызываю вот такой url /backend/api/v1/catalog/index/PAGEN_1=2?PAGEN_1=2
причем тут pagen после вопроса на случай, если bitrix ищет его в параметрах до редиректа, а до вопросительного знака для того, чтобы паттерн редиректа его подхватил и превратил вот в такие GET параметры при редиректе
PAGEN_1: "2"
method: "index"
module_id: "catalog"
version: "1"
т.е. в url /backend/ajax.handler.php?version=1&module_id=catalog&method=index&PAGEN_1=2
в htaccess сейчас стоит такое правило
RewriteRule ^v([\d]*)/([^/]+)/([^/]+)/(.*)$ ajax.handler.php?version=$1&module_id=$2&method=$3&$4 [L]
пробовал делать такое правило
RewriteRule ^v([\d]*)/([^/]+)/([^?]+)\?(.*)$ ajax.handler.php?version=$1&module_id=$2&method=$3&$4 [L]
чтобы сделать редирект
с /backend/api/v1/catalog/index?PAGEN_1=2
до /backend/ajax.handler.php?version=1&module_id=catalog&method=index&PAGEN_1=2
но он в упор не хочет с вопросительным знаком работать(((
briahas, есть удобно, могу только кинуть на битбакет (это как гитхаб только битбакет)))) на приватный репозиторий и пригласить туда, к сожалению, таковы правила приватности фирмы, я не могу в открытый доступ проект положить, а на гите у меня нет акка платного чтобы скрыть проект(((
Сергей Мелодин, он, естественно, упрощает. И повесить тот или иной обработчик - пара пустяков и если бы мне надо было просто повесить обработчик, то вопроса бы не возникло, но в contenteditable слишком уж заморочено писать свой обработчик, который по дефолту стоит на Enter.
Хотя благодаря вам я сейчас понял, что если там не так называемый native code, то можно попробовать распотрошить там все через дебаггер и попробовать руками скопировать код...
Хуже. Эта вся тема работает под ангулар у меня и там все обработчики вешаются в определенном порядке. У меня банально нет возможности выполнить какой либо код когда уже будут висеть стандартные обработчики, но ещё не будет обработчиков ангулара, чтобы выцепить родной обработчик и повесить его с Enter на Ctrl+Enter. Поэтому и ищу «простой» способ получить поведение стандартного обработчика, без необходимости выпендриваться с перемещением курсора внутри contenteditable.
По большому счету самый замороч в том чтобы выполнить перенос строки посреди текста... а стандартный обработчик с этим справляется играючи...
Евгений Самойленко, дело не в простом и сложном пути а в том, что это кретинизм - делать корнем приложения папку, которая лежит в захолустьях сайта. Корень должен быть корнем. А путь загрузки как то можно изменить то-ли из конфигов ангулара, то ли как то править загрузчики надо
длинна строки не вариант, потому, что когда я ввожу 3 цифру, то 4 автоматически дописывается 0 (т.е. достигается длинна строки сразу), если же я ввожу 4ю цифру, то происходит замена этого нуля.
Ну, я и так на blur сделал, потому, что других вариантов пока не вижу
Я хочу чтобы работало так:
пользователь заходит на сайт с любым url его подхватывает стандартный функционал битрикс и применяет шаблон. Берет оттуда header.php и footer.php
в хедере написано
а в футере происходит подключение базовых модулей angular
Сами header.php, footer.php лежат по такому пути "/local/templates/templateName/",
файлы модулей, которые ангулар сгенерировал, папка asset и т.д. - "/local/templates/templateName/ng/"
Проблем нет с теми модулями, которые я подключаю в footer.php потому, что я вручную указываю путь, но вот модули, которые загружаются "ленивой" загрузкой тогда будут пытаться загрузиться с /moduleName.js а не из "/local/templates/templateName/ng/"
Но если таких "сервисов" будет несколько десятков в р разных направлениях мне получается надо будет создать целую тонну ролей на каждую из возможных комбинаций.
Demian Smith, тяжеловат в смысле там же DOM постоянно меняться будет при активной работе, поэтому надо подумать как сделать чтобы он не так часто дергал
Пользователь, который будет встраивать вашу программу в свой дизайн уже должен написать кокой-то код, который реагирует на parent.postMessage().
такой код как раз есть. Он принимает мой parent.postMessage() в котором я указываю какие размеры фрейма мне нужны, а он их и выставляет. Задача с моей стороны как раз и состоит в том чтобы сообщить ему что он должен размер фрейма увеличить, когда контент моего приложения становится слишком большим. Это значит что мне надо за своим контентом следить и давать ему знать когда я хочу чтобы он изменил размер фрейма, разве нет?
За MutationObserver спасибо, он подходит, хотя и будет наверное тяжеловат (надо попробовать)
Может я просто не совсем правильно описал, но суть в том, что мое приложение встраивается в "чужой" сайт посредством iframe и по умолчанию высота фрейма 600px. Но если надо, то этот размер можно поменять. Для этого надо отправить parent.postMessage(); и в параметрах указать что надо изменить размер на такой-то.
У меня в приложении несколько страниц и некоторые с длинным контентом, некоторые с коротким и надо чтобы этот фрейм подстраивался под контент общий
поставил. Теперь у меня дополнительно (видимо в обход буферизации) выводится div с классом comp_{набор символов} внутри которого лежит без каких либо дополнительных вещей строка JSON'a arResult этого компонента (https://yadi.sk/i/Al60HJ4thPoSjg)
Для справки шаблон с которым компонент вызывается упаковывает все в json и возвращает, а когда я получаю его в ob_get_clean, я делаю распаковку обратно в массив, дополняю нужными мне данными и возвращаю опять-же в виде json приложению
может и сделать, но я не знаю как, поэтому и спрашиваю.
Я пробовал прокидывать PAGEN в GET параметры, но он игнорится.
я делал вот так:
вызываю вот такой url /backend/api/v1/catalog/index/PAGEN_1=2?PAGEN_1=2
причем тут pagen после вопроса на случай, если bitrix ищет его в параметрах до редиректа, а до вопросительного знака для того, чтобы паттерн редиректа его подхватил и превратил вот в такие GET параметры при редиректе
PAGEN_1: "2"
method: "index"
module_id: "catalog"
version: "1"
т.е. в url /backend/ajax.handler.php?version=1&module_id=catalog&method=index&PAGEN_1=2
в htaccess сейчас стоит такое правило
RewriteRule ^v([\d]*)/([^/]+)/([^/]+)/(.*)$ ajax.handler.php?version=$1&module_id=$2&method=$3&$4 [L]
пробовал делать такое правило
RewriteRule ^v([\d]*)/([^/]+)/([^?]+)\?(.*)$ ajax.handler.php?version=$1&module_id=$2&method=$3&$4 [L]
чтобы сделать редирект
с /backend/api/v1/catalog/index?PAGEN_1=2
до /backend/ajax.handler.php?version=1&module_id=catalog&method=index&PAGEN_1=2
но он в упор не хочет с вопросительным знаком работать(((