Меню
RSS
Расширение функционала редактирования элементов., Как запретить одновременное редактирование элемента для нескольких контент -редакторов?
 
Здравствуйте! Для начала выражаю благодарность за такой ресурс - уже не раз помогал разобраться с заданиями, спасибо!

А теперь причина создания темы:

Проблема: иногда один редактор заполняет например описание элемента, но оставляет пустой картинку, а другой в это же время заполняет картинку, но не заполняет описание.  Соответственно, второй при сохранении затирает работу первого (удаляет описание). Устранить проблему на уровне человеческого фактора возможности нет.

Есть такое ТЗ: если один из редакторов начал вносить изменения в элемент инфоблока, то надо запретить всем остальным возможность вносить изменения в этот элемент до момента окончания работы этого редактора с этим элементом (т.е. по сути запретить даже входить в карточку элемента).

Пока были такие мысли:
привязаться к событию, но вроде на вход в карточку у битрикса нет события, только запрос к iblock_element_edit, наверно надо будет править где-то там?
Создавать в init.php переменную, в которую будем собирать все id редактируемых на данный момент элементов и при запросе на редактирование проверять наличие id из переменной в этом запросе. При завершении редактирования (OnAfterIBlockElementUpdate) удалять из переменной id элемента.

Верно ли мыслю?

В общем, прошу помощи с реализацией.
 
В эту сторону не копали?
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=41&CHAPTER_ID=05049
и
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=41&LESSON_ID=2759&LESSO...

По сути, там все есть для решения Вашей проблемы. Ну или, как минимум, там есть фундамент для решения.
Читают тему
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 

Блог-note: заметки разработчика

Пункты меню из разделов инфоблока Битрикс

В принципе это стандартная возможность системы управления битрикс, но почему-то часто спрашивают как это сделать. Возмож...

Глобальные фильтры на всякие случаи жизни

Глобальный фильтр, нужен чаще всего, для вывода определенных элементов, из общего массива, инфорблока. Спектр применяем...

Список новостей с автопрокруткой через overflow:scroll

Простенький javascript позволит сделать автопрокрутку в шаблоне списка новостей. Достаточно актуально для новостных сайт...

Если предложение SKU в корзине, поменять кнопку добавления на "В корзине"

Данная заметка является дополнением к ранее опубликованной: Если товар в корзине, поменять значение input на "В корзине"...

Мобильные версии страниц и поисковые системы

Согласно требования поисковых систем: Яндекс и Google, в случае если у вашего сайта имеется мобильная версия, нужно увед...

Не дать пользователю купить больше одного товара, в Битрикс

Иногда нужно и такое: Например: на одном из разрабатываемых сайтов, мне нужно было создать всего 4 товара. при этом поку...

Если пользователь авторизован то... API Битрикс

Достаточно часто, при создании сайта на битрикс нужно вывести в шаблон или компонент, некую информацию, доступную только...

Свойство: привязка к Яндекс:Картам - вывести из нескольких элементов на одну карту

Предположим, что у вас есть инфоблок со свойством "Привязка к яндекс картам". В этом инфоблоке некоторое количество элем...

Менеджер событий (EventManager) в 1C-Битрикс

Менеджер событий (EventManager) — это централизованный механизм регистрации, обработки и управления событиями. О...