diff --git a/app.py b/app.py index 874b8f5..d1b771f 100644 --- a/app.py +++ b/app.py @@ -113,14 +113,43 @@ def upload_content(): file_path = os.path.join(app.config['UPLOAD_FOLDER'], filename) file.save(file_path) - if target_type == 'group': - group = Group.query.get_or_404(target_id) - for player in group.players: - new_content = Content(file_name=filename, duration=duration, player_id=player.id) + # Handle PDF to JPG conversion + if media_type == 'pdf': + images = convert_from_path(file_path, dpi=300) + for i, image in enumerate(images): + image_filename = f"{os.path.splitext(filename)[0]}_{i + 1}.jpg" + image_path = os.path.join(app.config['UPLOAD_FOLDER'], image_filename) + image.save(image_path, 'JPEG') + + # Add each converted image to the playlist + if target_type == 'group': + group = Group.query.get_or_404(target_id) + for player in group.players: + new_content = Content(file_name=image_filename, duration=duration, player_id=player.id) + db.session.add(new_content) + elif target_type == 'player': + new_content = Content(file_name=image_filename, duration=duration, player_id=target_id) + db.session.add(new_content) + + # Optionally, delete the original PDF file after conversion + os.remove(file_path) + + # Handle other media types + elif media_type in ['image', 'video', 'ppt']: + if media_type == 'ppt': + ppt_output_file = os.path.splitext(file_path)[0] + '.pdf' + convert_ppt_to_pdf(file_path, ppt_output_file) + os.remove(file_path) # Remove the original PPT file + file_path = ppt_output_file + + if target_type == 'group': + group = Group.query.get_or_404(target_id) + for player in group.players: + new_content = Content(file_name=filename, duration=duration, player_id=player.id) + db.session.add(new_content) + elif target_type == 'player': + new_content = Content(file_name=filename, duration=duration, player_id=target_id) db.session.add(new_content) - elif target_type == 'player': - new_content = Content(file_name=filename, duration=duration, player_id=target_id) - db.session.add(new_content) db.session.commit() return redirect(return_url) diff --git a/instance/dashboard.db b/instance/dashboard.db index 5af911d..d68bedb 100644 Binary files a/instance/dashboard.db and b/instance/dashboard.db differ diff --git a/static/uploads/ESP32-C6-EVB_Rev_A.pdf b/static/uploads/ESP32-C6-EVB_Rev_A.pdf deleted file mode 100644 index 89ffcbb..0000000 Binary files a/static/uploads/ESP32-C6-EVB_Rev_A.pdf and /dev/null differ diff --git a/static/uploads/Operational_Plan_FY25_1.jpg b/static/uploads/Operational_Plan_FY25_1.jpg new file mode 100644 index 0000000..b8be422 Binary files /dev/null and b/static/uploads/Operational_Plan_FY25_1.jpg differ diff --git a/static/uploads/track.png b/static/uploads/track.png deleted file mode 100644 index eb097c1..0000000 Binary files a/static/uploads/track.png and /dev/null differ