Match photo selection and rendered canvas to device rotation
This commit is contained in:
@@ -69,6 +69,7 @@ from pigway_frame_flow.providers.synology_photos import (
|
||||
PhotosPerson,
|
||||
)
|
||||
from pigway_frame_flow.providers.weather import ConfigurableWeatherProvider
|
||||
from pigway_frame_flow.renderers.frame_geometry import frame_canvas
|
||||
from pigway_frame_flow.renderers.images import Assets, convert
|
||||
from pigway_frame_flow.renderers.templates import TemplateRenderer
|
||||
from pigway_frame_flow.scheduler.engine import Scheduler
|
||||
@@ -629,8 +630,17 @@ def create_app(settings=None, start_worker=True):
|
||||
offset: int = Query(0, ge=0),
|
||||
limit: int = Query(50, ge=1, le=200),
|
||||
refresh: bool = False,
|
||||
device_id: str | None = None,
|
||||
):
|
||||
items = service.photo_sources.catalog(source_id, refresh=refresh)
|
||||
source = service.photo_sources.get(source_id)
|
||||
size = (1200, 1600)
|
||||
if source.orientation == "auto":
|
||||
size = frame_canvas(
|
||||
registry.get(device_id or settings.device_id).device().display
|
||||
)
|
||||
items = service.photo_sources.catalog(
|
||||
source_id, refresh=refresh, target_size=size
|
||||
)
|
||||
return {
|
||||
"items": items[offset : offset + limit],
|
||||
"total": len(items),
|
||||
|
||||
Reference in New Issue
Block a user