- store() persisted uploads under Laravel's MIME-guessed extension, turning a .probundle (a ZIP) into .zip; embedExportProFile then branched on the stored path, missed the bundle branch and embedded the raw ZIP as a broken .pro (ProPresenter showed an empty slide). Store with the real client extension and derive the bundle type from the original filename, treating .zip as a bundle for legacy uploads. - Skip export .pro/.probundle files that parse to zero content slides, recording a German warning instead of injecting an empty slide. - Attach position macros (first_slide/last_slide/all_slides) per slide for information/moderation/sermon parts in the agenda and legacy paths. - Cover both with ExportProFileProbundleEmbedTest and PlaylistSermonMacroTest. |
||
|---|---|---|
| .. | ||
| Console/Commands | ||
| Cts | ||
| Events | ||
| Exceptions | ||
| Http | ||
| Jobs | ||
| Models | ||
| Providers | ||
| Services | ||
| Socialite | ||
| Support | ||