Просмотр сущности: Ответственный: как сделать две колонки?

Все вопросы/проблемы по установке и использовании.
Ответить
Lazutkin_Max
Сообщения: 57
Зарегистрирован: 13 июн 2023, 14:11
Имя: Максим Лазуткин
Откуда: Москва

Просмотр сущности: Ответственный: как сделать две колонки?

Сообщение Lazutkin_Max »

Привет!
У меня при открытии любой сущности отображение ответственного выбивается из общего вида.
Все поля в одной строке, название -значение
А поле ответственный, название поля и значение две строки.
Смена темы эффекта не дает. Пользовательских CSS нет.
Может кто-то приводил к общему виду? Поделитесь, пожалуйста.

Изображение
Аватара пользователя
sajanagr
Сообщения: 48
Зарегистрирован: 31 окт 2019, 07:02
Имя: Иван Колешня
Откуда: Россия, Санкт-Петербург
Организация: Альфа Хантер
Контактная информация:

Re: Просмотр сущности: Ответственный: как сделать две колонки?

Сообщение sajanagr »

Можете в настройке либо самой сущности, в настройках страницы записи вставить следующий JS код

Код: Выделить всё

document.addEventListener('DOMContentLoaded', function() {
    var table = document.querySelector('.table-item-details tbody');
    
    if (!table) return;
    
    var rows = table.querySelectorAll('tr');

    for (var i = 0; i < rows.length; i++) {
        var ths = rows[i].querySelectorAll('th');
        var tds = rows[i].querySelectorAll('td');

        // Если в строке только один th с атрибутом colspan
        if (ths.length === 1 && tds.length === 0 && ths[0].hasAttribute('colspan')) {
            if (i + 1 < rows.length) { // Проверка следующей строки
                var nextRowTds = rows[i + 1].querySelectorAll('td');
                if (nextRowTds.length === 1 && !rows[i + 1].querySelector('th')) {
                    ths[0].removeAttribute('colspan');
                    rows[i].appendChild(nextRowTds[0]);
                    rows[i + 1].remove();
                    continue;
                }
            }
        }

        // Если в строке только один td с атрибутом colspan
        if (tds.length === 1 && ths.length === 0 && tds[0].hasAttribute('colspan')) {
            if (i + 1 < rows.length) { // Проверка следующей строки
                var nextRowThs = rows[i + 1].querySelectorAll('th');
                if (nextRowThs.length === 1 && !rows[i + 1].querySelector('td')) {
                    tds[0].removeAttribute('colspan');
                    rows[i].insertBefore(nextRowThs[0], tds[0]);
                    rows[i + 1].remove();
                }
            }
        }
    }
});
либо в общих настройках вставить этот код перед закрывающим тегом </body> предварительно обернув его в
<script></script> если нужно так показывать в других сущностях тоже ;)
Lazutkin_Max
Сообщения: 57
Зарегистрирован: 13 июн 2023, 14:11
Имя: Максим Лазуткин
Откуда: Москва

Re: Просмотр сущности: Ответственный: как сделать две колонки?

Сообщение Lazutkin_Max »

sajanagr писал(а): 20 окт 2023, 00:40 в настройке либо самой сущности, в настройках страницы записи вставить следующий JS код
Спасибо, добрый человек!

Оба варианта рабочие.
Ответить