Страница 1 из 1

Ма-аленькая идея по интерфейсу карточек: поле "Надзадача" и ещё кое-что

Добавлено: 03.02.2017 21:49
Кирилл Панькин
А что если бы поле "Надзадача" в карточке вело себя подобно полю "Группа проектов / Проект", т.е. полностью скрывалось в случае отсутствия надзадачи?

Сейчас получается, что если в одном списке собраны карточки разнородных задач и у значительной их части нед надзадачи, то отображение замусорено яркими и не очень-то ценными надписями "Надзадача: не указана". Поле "Группа проектов / Проект" в этом аспекте ведёт себя куда приятнее для глаз.

Добавлено: 04.02.2017 15:56
Dmitry Goncharenko
Спасибо, Кирилл, звучит разумно. Обсудим, если не возникнет принципиальных моментов - реализуем.

Добавлено: 04.02.2017 22:52
Кирилл Панькин
Здорово! Надеюсь, решение будет положительным. :)

Раз пошла такая пьянка, спрошу тут ещё на счёт парочки менее тривиальных идей, не буду создавать отдельные темы.
1. Было бы естественным, по-моему, в дополнение к полю "Надзадача" иметь поле "Надзадачи", включающее всю цепочку надзадач. Я уже как-то озвучивал это в отношении отчётов и помню ответ о неудобствах в реализации (рекурсивная выборка по БД). Но попытка ведь — не пытка.
Дополнено: Упс... Так ведь в панели задачи сейчас есть отображение пути к ней (с тем отличием, что там путь вместе с проектами). Странно, что для карточек нет подобной возможности.

2. Учитывая, что интерфейс карточек весьма миниатюрный по сравнению с остальным, в нём достаточно громоздко и иногда даже чужеродно смотрятся обычные аватары в списках контактов (исполнителей, участников и т.п.) (блок с единственным аватаром исполнителя занимает по высоте место трёх обычных текстовых полей). Что если бы была ещё пара вариантов отображения таких списков: маленькие аватары (25-30 пикселей вместо стандартных 40) и текстовые имена? Тут, конечно возникает дилемма, как это реализовать в интерфейсе. Простейший путь — (2а) делать по три версии каждого поля (Исполнители, Исполнители мелко, Исполнители текстом, Участники, Участники мелко, Участники текстом и т.д.). Это решает задачу, но выглядит как-то не очень комильфо. Более изящный вариант — (2б) возможность выбора варианта отображения для каждого поля. Но такой вариант потребует дополнений в интерфейсе настройки вида карточки, т.к. сейчас поля не имеют никаких индивидуальных настроек.


P.S. Я подумал, чего мелочиться? Поделюсь уже и более капитальными идеями — глядишь, прорастут. :) Сами же говорите, что питание от наших идей — ваш существенный ресурс. ;)

3. Выборочное отключение подписей к полям. Если уж (во имя пресветлых богов эргономики!) воплощение идеи №2б приведёт к принципиальному появлению индивидуальных настроек у полей, то выглядит естественным добавление галочки "Отображать подпись" у каждого поля. Для примера, поле "Сроки" является единственным среди стандартных, которое отображает даты, потому подпись для него является практически излишней.

4. Так же, в случае реализации идеи №2б, легко можно добавить настройку выравнивания содержимого поля в строке (слева, по центру, справа). (Технически на странице это добавление к блоку поля всего одного css-свойства text-align.)

5. Ну и совсем радикальная идея: выбор индивидуального способа отображения поля — в отдельной строке (как сейчас) или в одной строке с другими такими-же (технически, блок такого поля должен стать inline-block вместо нынешнего block). (Тут тоже можно наколдовать с альтернативным выравниванием без js и без наворотов с вложенными div-ами, правда, только по правому краю, с помощью float:right, а у соседних элементов типа block, занимающих полную строку, должен быть включен clear:both.)

6. К этому ещё можно добавить опции (6а) уменьшения отступов внутри карточки и вертикального расстояния между карточками, а так же (6в) отключения горизонтальных разделительных линий снизу под каждым полем. Это даст возможность компоновать карточки не только с любой степенью детализации информации (как это есть сейчас), но и делать их более или менее компактными по своему усмотрению. 

Прошу не воспринимать мои комментарии на счёт css-реализации как претензии на высокую компетенцию. :) Я просто описываю тот минимум, который сам попробовал наколдовать в пределах своего понимания.

Добавлено спустя 1 час 50 минут 44 секунды:
Чтобы подтвердить свои предложения практической демонстрацией (вполне пригодной для реального использования), опубликовал на userstyles.org экспериментальный стиль "Нанокарточки", который частично реализует пункты 3-6 из описанного выше (само собой, без индивидуальных настроек для полей, к сожалению).

Добавлено: 06.02.2017 14:07
Олег Сергеевич Кузьмин
Попробовал применить стили от Кирилла - получилось очень неплохо!

Почему бы не сделать прямо в планфиксе возможность таких же настроек? Ведь там всё просто и логично. Сделать "стили карточек", которые настраиваются где-нибудь глубоко в недрах (чтобы не смущать тех, кому это не надо). А в свойствах списка выбирать стиль отображения карточек "стандартный", "поллный", "минималистичный", "нано" и т.д.
Ну или хотябы сделать галочку "применять пользовательские стили карточек" в настройках списка, чтобы не приходилось так извращаться с подсчётом пикселей как это сейчас делает Кирилл.

P.s.: отдельное спасибо Кириллу за наводку на интересный сайт! Я и не знал, что так вообще можно :)

Добавлено спустя 12 минут 40 секунд:
P.p.s.: сорри за оффтопик, но еще раз посмотрите, как глупо выглядит на скриншоте. Проект "Реутов", задача "Реутов, проектирование". Каждый раз вижу такое дублирование, и где-то в моей душе умирает маленький котик... :(
Но никак не получается по другому идентифицировать задачу "проектирование", которая относится именно к проекту "Реутов" или контрагенту "Матвеев" среди прочих 20 задач "проектирование" в одном списке. Т.к. далеко не всегда удаётся вытащить на поверхность отображение названия проекта (например, в списках вида "календарь"). Может всётаки сделаете обсуждаемый в другом топике "контекст" или "идентификатор" к задаче, чтобы отображать его где-бы не появлялось название этой задачи? По-умолчанию "контекст" может быть равен названию проекта. Или надзадаче. Не суть важно, лишь бы можно было настраивать.
А то сейчас ко всем задачам внутри проекта добавлять в название имя проекта или контрагента... котики страдают :)