http://вече.программирование-по-русски. ... 4&start=40
Теперь буду всё переделывать на clojure. Вопрос об администрировании таблицы смыслов так и не решён.
Попробую вбросить такое предложение:
- есть три ранга пользователей - комментаторы, авторы и царь
- но комментаторов мы выкинем для простоты за пределы движка - они могут и на форуме писать свои комментарии
- у каждого смысла и перевода есть единственный владелец
- автор и царь могут добавить смысл и перевод
- добавленный смысл или перевод принадлежит тому, кто его создал
- владелец может изменить и удалить свой смысл или перевод, а также передать его другому пользователю
- если у смысла есть такой перевод, что владелец перевода не есть владелец смысла, то смысл блокируется от изменений и удаления
- царь может отобрать любой смысл и перевод у любого пользователя и назначить их себе или другому пользователю. Цель этой деятельности - не в установлении тирании, а в том, чтобы таблица смыслов была корректной. Например, это может понадобиться в случае появления дубликата смыслов.
- вся история изменений хранится и доступна через api, однако, для старых версий чётко показывается, что они не являются последними