Жизнь непредсказуема порой. Файл urlrewrite.php рекомендуют исключать из версионного контроля. Но его можно легко потерять. Например, попытаться установить какой-нибудь «мегамодуль».

Поэтому нужно знать как восстанавливать urlrewrite.php. В административной панели Настройки продукта — Обработка адресов — Правила обработки — Пересоздание.

Похоже, что эта команда проходит по всем компонентам в публичке, у которых установлен параметр SEF_FOLDER, и добавляет соответствующие записи в urlrewrite.php.

Получить размер занятого пространства в корне файловой системы за исключением каталогов /mnt и /proc и отсортировать по размеру

7 Great Apps to View Disk Usage in Linux

Установка

Настройка

Configuration -> Options -> Icons -> Show icons to the left of the filename -> No icons

Для того, чтобы заработал фильтр в сущностях CRM для нестандартных пользовательских типов необходимо создать соответствующий шаблон для компонента crm.field.filter. Лучше всего его создать в каталоге /local/templates/.default/components/bitrix/crm.field.filter.

К сожалению, разработчики Битрикс24 пока не предусмотрели возможность вывода в фильтре нестандартных сущностей (/bitrix/components/bitrix/main.ui.filter/templates/.default/js/search.js)

Выводится только название пользовательского поля (current.LABEL). Доработаем это, добавив обработчик js-события BX.Filter.Search:beforeSquaresUpdate в шаблоне компонента:

К сожалению, этот костыль будет работать только при изменении фильтра. А при начальной загрузке нужно придумывать другой ))

Иногда шаблон компонента может отсутствовать. Эта ситуация может возникнуть, когда компонент используется для отрисовки пользовательских типов. Например, компоненты system.field.edit, system.field.view, crm.field.filter. Все возможные пользовательские типы предусмотреть невозможно. Поэтому можно сделать один шаблон по умолчанию (special), который подключать в случае отсутствия нужного.

Подключаем компонент с несуществующим шаблоном ‘unknown’:

А внутри компонента проверяем наличие шаблона, имя которого было передано в параметрах компонента(‘unknown’). Если такой шаблон не найден, то подключаем шаблон ‘special’:

Через 4 точки провести 3 линии так, чтобы получилась замкнутая фигура.

В киоске продается марки 4 видов и конверты 5 видов. Во скольких комбинациях можно наклеить по одной марке на один конверт?

Первый магазин делает скидку на выбранный товар 10%, а потом еще 10%. А второй магазин делает скидку сразу на 20%. В каком магазине выгоднее покупать?

Какое значение больше 5% от 15,75 или 15,75% от 5?

Создать в БД пользователя и выдать ему права на чтение:

Важно выдать права именно на хост 127.0.0.1, а не localhost.

Создать пользователя системы:

Установить его пароль:

Теперь можно подключиться к БД по SSH.

Одновременную работу с разными версиями PHP можно обеспечить, установить два PHP-FPM сервиса. Первый (PHP 7) из родного репозитория, а второй (5.6) из репозитория Remi.

Подключаем репозиторий Remi:

Устанавливаем все необходимое для работы с PHP версии 5.6:

В конфиге PHP-FPM 5.6. комментируем обработчик для PHP-файлов. По умолчанию будет отрабатывать PHP-FPM 7 версии.

В настройках виртуального хоста нужного сайта добавляем обработчик PHP-FPM:

В модуле XDebug для 5.6 устанавливаем порт отличный от порта в 7-й версии, например, 9001

Для увеличения максимального времени исполнения для отладки нужно сделать, как рекомендуют тут:

В видео с партнерской конференции есть пункт о том, как добавить новый пункт во всплывающее меню:

Там же Антон предложил способ поиска нужных событий:

Т.е. ВРЕМЕННО добавить в скрипт /bitrix/js/main/core/core.js вывод в консоль названия события и его параметров:

Отследить вызовы в бекэнде можно, если в файле /bitrix/php_interface/init.php ВРЕМЕННО добавить код:

А у себя в блоге Антон описал как добавить вкладку в сущность CRM.

В продолжении темы кастомизации опубликована статья Изменяем пользовательский интерфейс коробочного Битрикс24 и соответствующее видео: