feat(web): вкладка «Редактирование» с инструментом «Свет»
В правой панели фото появилась вкладка «Редактирование» с инструментом «Свет»: ползунки экспозиции, контраста, светов, теней, белых и чёрных и точечная кривая с выбором канала. Правки сохраняются автоматически, переключатель «Сброс» удаляет параметры правок и отредактированную версию фото. Редактирование неразрушающее: параметры хранятся в метаданных фото, а отредактированная версия рендерится в фоне отдельным объектом (edit, edit_thumb, edit_medium, edit_preview) рядом с исходными вариантами. Оригинал не меняется, скачивание отдаёт исходный файл. Сетка, просмотр и обложки альбомов показывают отредактированную версию, когда она отрендерена.
This commit is contained in:
@@ -348,6 +348,26 @@ func (s *Service) attachURLs(ctx context.Context, p *models.Photo) error {
|
||||
p.PlaybackURL = url
|
||||
}
|
||||
}
|
||||
if p.EditKey != "" {
|
||||
if url, err := s.storage.URL(ctx, p.EditKey); err == nil {
|
||||
p.EditURL = url
|
||||
}
|
||||
}
|
||||
if p.EditThumbKey != "" {
|
||||
if url, err := s.storage.URL(ctx, p.EditThumbKey); err == nil {
|
||||
p.EditThumbURL = url
|
||||
}
|
||||
}
|
||||
if p.EditMediumKey != "" {
|
||||
if url, err := s.storage.URL(ctx, p.EditMediumKey); err == nil {
|
||||
p.EditMediumURL = url
|
||||
}
|
||||
}
|
||||
if p.EditPreviewKey != "" {
|
||||
if url, err := s.storage.URL(ctx, p.EditPreviewKey); err == nil {
|
||||
p.EditPreviewURL = url
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user