Редактор категории. Mongoose-модель категории. Реализация мультиязычности.

preview_player
Показать описание

Форма для редактирования страницы и перевода ее на несколько языков. Алгоритм выбора главной страницы блога, мультиязычности, название раздела в меню, история модерации, сохранение изменений в базе данных.
Рекомендации по теме
Комментарии
Автор

Ураа, я рад что вы вернулись, надеюсь отдых удался!

fess
Автор

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

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

Гораздо лучшим решением будет сохранять последнюю версию содержимого статьи (хоть в localStorage). А можно пойти дальше, и хранить целую цепочку состояний, делая автосейв каждые несколько минут. А можно пойти ещё дальше, и находить величину дельты (есть библиотеки а-ля diff на JS, я даже сам такую писал ради интереса), и можно поставить условие, чтобы делать автосейв только если текущая версия отличается от последней в цепочке не меньше чем на N процентов (сумма всех добавлений, изменений и удалений делённая на длину последней версии в символах).

Не сочтите за выпендрёж, просто будь это боевой проект, я сам бы сделал именно так.

А ещё можно вместо "me" для id родительской категории использовать пустую строку, но это уже вкусовщина :)

popov