diff --git a/client/src/pages/presentationEditor/components/SlideSettings.tsx b/client/src/pages/presentationEditor/components/SlideSettings.tsx index 33f96d4c48a827afb4b8225f1b6a9d6d4cc11609..1d8aad5fab5545a7820ed506cf05096d7de1ec6d 100644 --- a/client/src/pages/presentationEditor/components/SlideSettings.tsx +++ b/client/src/pages/presentationEditor/components/SlideSettings.tsx @@ -140,10 +140,6 @@ const SlideSettings: React.FC = () => { .catch(console.log) } - //const images = [{ id: 'image1', name: 'Wallgren.png' }] - - //const [images, setimages] = useState(imageList) - const updateSlideType = async () => { closeSlideTypeDialog() if (activeSlide) { @@ -253,8 +249,6 @@ const SlideSettings: React.FC = () => { const imageData = { x: 0, y: 0, - w: 400, - h: 400, data: { media_id: media.id, filename: media.filename, diff --git a/server/app/database/controller/add.py b/server/app/database/controller/add.py index 1dbcf44230e508c3d51b3aa8faa4ba2c84e97914..778f28acab0d5ac61374e415d7b40be17e76a2b6 100644 --- a/server/app/database/controller/add.py +++ b/server/app/database/controller/add.py @@ -2,10 +2,15 @@ This file contains functionality to add data to the database. """ +import os +from PIL import Image +from flask.globals import current_app +from sqlalchemy.orm import relation from sqlalchemy.orm.session import sessionmaker +from app.apis.media import PHOTO_PATH import app.core.http_codes as codes from app.core import db -from app.database.controller import utils +from app.database.controller import get, search, utils from app.database.models import ( Blacklist, City, @@ -98,6 +103,20 @@ def component(type_id, slide_id, data, x=0, y=0, w=0, h=0): provided size and data . """ + if type_id == 2: # 2 is image + item_image = get.one(Media, data["media_id"]) + filename = item_image.filename + path = os.path.join(PHOTO_PATH, filename) + with Image.open(path) as im: + h = im.height + w = im.width + + largest = max(w, h) + if largest > 600: + ratio = 600 / largest + w *= ratio + h *= ratio + return db_add(Component(slide_id, type_id, data, x, y, w, h))