Этап
Готова
Тип
Ошибка
Приоритет
Обычный
Трудоемкость
Легкая
Создана
Дата создания
4 года назад
Назначена
Обновлена
4 года назад

Только root сейчас может создавать проекты, но он не видит созданных приватных проектов. Необходимо, чтобы root видел все. Так же root должен иметь полномочия любых работников, т.е. он долден видеть контролы и иметь возможность редактировать задачи и документы. При этом время обновления задачи и время/автор изменения документа так же не должны меняться. это очень важно, так как пока у нас нет системы релизов мы понимаем какие задачи в каком релизе были закрыты по дате последнего обновления.

Так же надо бы наделить demius полномочиями создавать проекты. Наверное не очень хорошо давать любому авторизованному создавать проекты, значит нужна новая глобальная роль администратора будет решаться в рамках tndt-46

Панель управления

Комментарии могут оставлять только авторизованные пользователи
 demius 4 года назад

Проверил, поправил.

 demius 4 года назад

Любопытно, что задача-то была сделана уже. И по хорошему надо было её закрывать в статусе уже готово, а под необходимый для релиза 0.2 функционал делать новую, но уж.

 demius 4 года назад

Долго выбирал между onFlush (где доступны набор измененных полей), и preUpdate/prePersist, в итоге решил послушать ocarimus и вынести эту бизнес-логику в бизнес-евенты же.

 demius 4 года назад

Попробовал через calls:. Он их не вызывает для таких листенеров, так что либо городить костыль, аналогичный Blameable, либо отказываться от этих расширений в пользу листенеров аналогичных TaskOnUpdateSubscriber. (и как бы отчего и нет, он сразу понятно что делает, он полноценный сервис и может забирать разнообразные зависимости, он может слушать разнообразные события для реализации единой логики, обновления определенного поля при определенных условиях.)

 demius 4 года назад

Для того, чтобы root не афектил разные timestampable, blameuble и т.д. и была возможность после релиза проставить задачам справочники не менее их даты, я попробовал переопределить сервисы листенеров doctrineExtensions, и они даже позволяют переопределяться, но вот инъектировать в них новые зависимости не выходит.

Это не тупик, blameable обходит это ограничение странным костылем с другим слушателем, который в каждом реквесте инстанцирует blameableListener чтобы засеттить ему user. Но мне это не нравится. У нас всегда есть простой путь, отказаться от этих расширений сделав собственные листенеры обновляющие дату по нашим правилам. Велосипедно, зато гораздо проще ,чем пытаться внедриться в чужую очень универсальную библиотеку.