divanus
@divanus
junior php bitrix python

Bitrix24.corpportal модернизация чек-листа в задаче, как?

На странице добавления/редактирования задачи добавить в "Чек-лист" поле "Описание". Тем самым пункт в чек-листе должен содержать
два поля "Что нужно сделать" и "Описание".

При создании "подзадачи" из пункта чек-листа содержимое из "Описания" должно попадать в содержимое подзадачи.

Уже пару часов смотрю и в модуль и в компонент /bitrix/components/bitrix/tasks.task, но не вижу нужного.
bxapi.ru/?module_id=tasks&class=CTaskCheckListItem тут список методов модуля откопал ...

/bitrix/components/bitrix/tasks.widget.checklist еще вот это нашел :) и там template.php судя по содержимому таки отвечает за чек-листы ... но, голова уже начала медленно под вечер думать. Буду рад подсказке для решения задачи.

Отвечает за ввод строчки чек-листа у виджета следующий код внутри php
Код
spoiler
<script data-bx-id="checklist-is-item" type="text/html">

            <?ob_start();?>
            <div data-item-value="{{VALUE}}" class="js-id-checklist-is-item js-id-checklist-is-item-{{VALUE}} tasks-checklist-item mode-read {{APPEARANCE}} {{READONLY}} {{ITEM_SET_INVISIBLE}}">
               <div class="task-checklist-field generic">
                  <div class="task-checklist-field-inner">
                     <span class="js-id-checklist-is-i-drag-handle task-field-drg-btn"></span>
                     <input id="chl_item_{{VALUE}}" class="js-id-checklist-is-i-toggle task-checklist-field-checkbox" type="checkbox" {{CHECKED_ATTRIBUTE}} {{DISABLED_ATTRIBUTE}} />

                     <?//read mode?>
                     <label class="block-read task-checklist-field-label" for="chl_item_{{VALUE}}"><span class="js-id-checklist-is-i-number">{{NUMBER}}</span>. <span class="js-id-checklist-is-i-title {{STROKE_CSS}}">{{{DISPLAY}}}</span></label>
                     <span class="js-id-checklist-is-i-edit block-read task-field-title-edit tasks-btn-edit"></span>

                     <?//edit mode?>
                     <input class="js-id-checklist-is-i-new-title block-edit task-checklist-field-add" type="text" value="{{TITLE}}" placeholder="<?=Loc::getMessage('TASKS_TTDP_CHECKLIST_WHAT_TO_BE_DONE')?>" maxlength="255" />
                     <span class="js-id-checklist-is-i-apply block-edit tasks-btn-apply task-field-title-ok"></span>

                     <?//any mode?>
                     <span class="js-id-checklist-is-i-delete task-field-title-del tasks-btn-delete"></span>

                     <input type="hidden" class="js-id-checklist-is-i-title-field" name="<?=$inputPrefix?>[{{VALUE}}][TITLE]" value="{{TITLE}}" />
                  </div>
               </div>

               <div class="js-id-checklist-is-i-drag-handle task-field-divider separator">
                  <div class="js-id-checklist-is-i-delete task-field-divider-close"></div>
               </div>

               <div class="tasks-checklist-item-marker"></div>

               <input type="hidden" name="<?=$inputPrefix?>[{{VALUE}}][ID]" value="{{ID}}" />
               <input class="js-id-checklist-is-i-sort-fld" type="hidden" name="<?=$inputPrefix?>[{{VALUE}}][<?=$tData['FIELDS']['SORT']?>]" value="{{<?=$tData['FIELDS']['SORT']?>}}" />
               <input class="js-id-checklist-is-i-complete-fld" type="hidden" name="<?=$inputPrefix?>[{{VALUE}}][<?=$tData['FIELDS']['CHECKED']?>]" value="{{<?=$tData['FIELDS']['CHECKED']?>}}" />
            </div>
            <?$template = trim(ob_get_flush());?>

         </script>


и вот видимо в нём и требуется добавить еще одну строчку ....
  • Вопрос задан
  • 922 просмотра
Решения вопроса 1
gromdron
@gromdron
Работаю с Bitrix24
А как вы собираетесь это хранить в базе? Посмотрите на структуру таблицы b_tasks_checklist_items
Она не предназначена для расширения и более того - TITLE может содержать лишь 255 символов, что существенно ограничивает объем поля.

Может ребята не совсем понимают суть чек-листа? Потому что если требуется объяснить действие, то это уже подзадача, а не чек-лист.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы