pastvu icon indicating copy to clipboard operation
pastvu copied to clipboard

Image replacing (administrative) - better quality, mirroring, etc. / Замена версий изображений (административная функция)

Open anvaruk opened this issue 12 years ago • 4 comments

от одного из модераторов: Модератор в режиме редактирования должен иметь возможность разместить/подставить другую фотографию (к примеру, фотографию лучшего качества или отзеркаленную фотографию). На новом сайте уже около 5 повторов лучшего качества. Напоминаю, что необходимость подставки фотографии на прежнее место вызвана тем, что на имеющийся адрес уже могут быть ссылки во внешних источниках, к примеру ЖЖ.

anvaruk avatar Jul 25 '13 08:07 anvaruk

For a complete description of this issue (all stages), please see draft (in Russian): https://docs.google.com/document/d/1mZuuGFCvlcmWuoQTrYUQbSfrPOh-V0rqWDRh8Ce-rhM/edit?usp=sharing

  1. Первый этап - административная замена (в т.ч. доработка инфраструктуры сайта под хранение версий и логирование операций с ними)
  2. Второй этап - зеркалирование средствами сайта
  3. Третий этап (отдельная задача) - модерируемые версии, загружаемые разными пользователями
  4. Четвертый этап - полноценная работа с вариантами изображений (группировка вариантов средствами сайта, превращение вариантов в версии и обратно, пометки для разных вариантов - оригинал, раскрашенный, основной для показа, и т.п.)

Связанные задачи: кнопка для того, чтобы сообщить модераторам о необходимости замены/зеркалирования/объединения с вариантом и т.п.

paul-k-pastvu avatar Feb 18 '20 00:02 paul-k-pastvu

Stale issue message

github-actions[bot] avatar Nov 15 '20 01:11 github-actions[bot]

Функция административной замены, первый этап.

Цели и задачи

Цель: возможность замены изображений на новое (лучшее по качеству) с сохранением ранее присвоенного url-адреса страницы с изображением на сайте pastvu.com, а также прямых ссылок на файлы.

На первом этапе - замена версии только участником, загрузившим исходное изображение, а также модератором или администратором.

Состав функциональности 1-го этапа:

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

Изменение работы с хранилищем снимков

  1. В хранилище у снимков добавляется признак "версия"
  2. Все видимые пользователям миниатюры в т.ч. с вотермарками хранятся всегда и только для текущей активной версии; при смене активной версии изображение автоматически отправляется на конвертацию
  3. Для неактивных версий хранится только:
    • оригинал
    • миниатюра для показа в истории снимка.
    • миниатюра для показа в галерее участника
  4. Для изображений в состоянии “Новое” и “Готово к публикации” хранится только самая последняя версия, заменяя предыдущую. История версий (как и в случае изменения описания) начинает сохраняться только после публикации или отправки на доработку

ВАЖНО: Прямые ссылки вида https://example.com/_p/a/b/c/d/bcdaykm81iiocetr5d.jpg должны оставаться независимыми от активной версии, и сохраняться стабильными для изображения в целом. Т.е. если на внешнем сайте есть такая прямая ссылка, то она должна оставаться рабочей и вести на активную версию, а если была использована в теге <img src="https://example.com/_p/a/b/c/d/bcdaykm81iiocetr5d.jpg">, то должна отдавать активную миниатюру.

Дополнение списка событий истории изменений

События, которые теперь должны относиться к конкретной версии снимка

  1. Загружена пользователем
  2. Отправлена на премодерацию для публикации
  3. Отправлена на доработку
  4. Опубликована
  5. Отозвана пользователем

Добавляются новые события:

  1. Версия N стала активной
  2. Версия N помечена как неактивная

События, которые должны относиться к снимку в целом:

  1. Отклонена
  2. Деактивирована

Показ истории изменений

  1. Для событий, которые относятся к конкретной версии
  2. В начале текста должно стоять “Версия N ...”
  3. Справа должна отображаться иконка-миниатюра версии

Активация версии

  1. В каждый момент времени может быть активной только одна версия.
  2. На стадии “Новое” и “Готово к публикации” — никакой явной активации не требуется, каждая следующая версия заменяет предыдущую, история не хранится.
  3. На стадиях “Отозвано” и “На доработке” — каждая вновь загруженная версия становится активной автоматически.
  4. На стадии “Опубликовано”
    • новая версия не становится активной автоматически, она должна быть явно активирована модератором/администратором
    • если модератор/админ считает, что новую версию публиковать не следует, он может явно пометить её как неактивную (новый статус "Версия N помечена как неактивная")
  5. Возможна явная активация администратором любой имеющейся версии - это отдельная операция, выполняемая пользователями в рамках особых сценариев.

Загрузка новой версии изображения Ссылки на загрузку новой версии доступны

  1. модераторам / админам
  2. участнику, загрузившему исходное изображение (для изображений со статусом “новое”, “на доработке” или “отозванное”)

Интерфейс загрузки новых версий к существующим файлам

  1. Ссылка в районе кнопок управления изображением (см. примеры дизайна)
  2. По ссылке открывается стандартный модуль загрузки, ограниченный только одним изображением
  3. После завершения загрузки новое изображение встает в хранилище как новая актуальная версия исходного.

Смена активной версии

  1. Смена активной версии уже опубликованного изображения выполняется админом либо модератором с правами на изменение данного изображения
  2. При смене активной версии перестраиваются все миниатюры
  3. Если были отмечены фрагменты, то они сохраняют свои размеры и взаимное расположение в привязке к заданной стороне или углу (по умолчанию - верхний левый угол)

paul-k-pastvu avatar Nov 19 '20 02:11 paul-k-pastvu

Вопрос - нужно ли разбивать этот список на отдельные задачи, и если да, то как?

paul-k-pastvu avatar Nov 19 '20 02:11 paul-k-pastvu