8000 feat: use custom intro/outro playlists per show by caveman99 · Pull Request #2941 · libretime/libretime · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

feat: use custom intro/outro playlists per show #2941

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Oct 14, 2024

Conversation

caveman99
Copy link
Contributor

Description

Having a global intro and outro playlist in settings is not very flexible for special programming. This adds an override intro/outro playlist per show. If it is not set, the global one is used. also it's ignored if there's no autloading at all.

I have updated the documentation to reflect these changes:

...not yet, but i will.

Testing Notes

What I did:
Schedule 2 shows, one without defining custom lists, one with defining custom lists. one hour before the show starts it should be populated correctly. If you define a global list it shojuld be replaced with the per-show list.

@caveman99
Copy link
Contributor Author

Remark: this was an absolute nightmare to implent through all layers and abstractions. I full heartedly support ditching the legacy UI.

Copy link
codecov bot commented Feb 7, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 93.65%. Comparing base (2b119ad) to head (3cfbd3c).
Report is 131 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff             @@
##             main    #2941       +/-   ##
===========================================
+ Coverage   70.36%   93.65%   +23.28%     
===========================================
  Files         149       95       -54     
  Lines        4033     1498     -2535     
===========================================
- Hits         2838     1403     -1435     
+ Misses       1195       95     -1100     
Flag Coverage Δ
analyzer ?
api 93.65% <100.00%> (-0.08%) ⬇️
api-client ?
playout ?
shared ?
worker ?

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@caveman99 caveman99 force-pushed the custom-auto-playlist branch 2 times, most recently from 0495f7b to a62f74d Compare February 12, 2024 18:48
@jooola jooola changed the title feat(legacy): custom intro/outro playlists feat: use custom intro/outro playlists per show Feb 18, 2024
@caveman99 caveman99 force-pushed the custom-auto-playlist branch 2 times, most recently from 5e1fb08 to 743d143 Compare February 19, 2024 08:38
@caveman99 caveman99 force-pushed the custom-auto-playlist branch from 7dc68b6 to c1fc5dd Compare March 3, 2024 21:40
@caveman99 caveman99 requested a review from jooola May 2, 2024 13:30
@jooola
Copy link
Contributor
jooola commented Jun 7, 2024

Have you tested this with smartblocks? Is there any chances that the final show length is way of because didn't account for the added intro/outro duration? Or was this already implemented in the initial work for the global intro/outro?

@caveman99 caveman99 force-pushed the custom-auto-playlist branch from ff5d83b to c50d865 Compare June 29, 2024 08:52
@caveman99
Copy link
Contributor Author
caveman99 commented Jun 29, 2024

Have you tested this with smartblocks? Is there any chances that the final show length is way of because didn't account for the added intro/outro duration? Or was this already implemented in the initial work for the global intro/outro?

This is already implemented in the existing logic. This PR just swaps out the ID's of the intro and outro playlist before processing if a custom one is defined. The only real change needed for this feature is the one in legacy/application/common/AutoPlaylistManager.php. The rest ist UI and DB plumbing.

@caveman99 caveman99 force-pushed the custom-auto-playlist branch from b229232 to ba4d879 Compare October 8, 2024 08:23
@caveman99
Copy link
Contributor Author

Is there something required on my side to get this moving again? :-) I know it's a huge patch but most of this is database changes to add the two fields to store the info, partly auto-generated.

UI looks like this after the change (unused parts are folded away)

grafik

Copy link
8000
Contributor
@paddatrapper paddatrapper left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This LGTM, can you please update the docs?

@caveman99
Copy link
Contributor Author
caveman99 commented Oct 13, 2024

@paddatrapper docs added and a minor fix to the screen display. I forgot the checkboxes from my screenshot were gone with a mod, so only the dropdowns remain. This change clarifies that 'None' means 'take the default from the global settings'.

Updated screenshot:
grafik

@paddatrapper paddatrapper merged commit 299be3c into libretime:main Oct 14, 2024
23 checks passed
@caveman99 caveman99 deleted the custom-auto-playlist branch October 14, 2024 21:15
paddatrapper pushed a commit that referenced this pull request Mar 12, 2025
🤖 I have created a release *beep* *boop*
---


## [4.3.0](4.2.0...4.3.0)
(2025-03-12)


### Features

* add flac support to Web player
([#3128](#3128))
([203c927](203c927))
* add Norwegian Bokmål locale
([#3073](#3073))
([e614fbc](e614fbc))
* **analyzer:** parse comment fields from mp3 files
([#3082](#3082))
([02a779b](02a779b))
* **api:** added filters on genre & md5 for files api
([#3127](#3127))
([b1bdd6d](b1bdd6d))
* **api:** enable writes to schedule table
([#3109](#3109))
([2ac7e8a](2ac7e8a))
* **legacy:** implement subset sum solution to show scheduling
([#3019](#3019))
([5b5c68c](5b5c68c)),
closes [#3018](#3018)
* **legacy:** order by filename when lptime is null
([#3069](#3069))
([8c26505](8c26505))
* **legacy:** show filename and size on edit page and add filename
datatable column
([#3083](#3083))
([16deaf0](16deaf0)),
closes [#3053](#3053)
* **legacy:** trused header sso auth
([#3095](#3095))
([2985d85](2985d85))
* **legacy:** update deprecated PHP code
([#2789](#2789))
([3a8dcbc](3a8dcbc))
* **playout:** add Liquidsoap 2.0 support
([#2786](#2786))
([f9c0bd5](f9c0bd5))
* use custom intro/outro playlists per show
([#2941](#2941))
([299be3c](299be3c))


### Bug Fixes

* add missing file for nb_NO locale
([#3075](#3075))
([a3865aa](a3865aa))
* **analyzer:** make ffmpeg filters less aggressive
([#3086](#3086))
([32cad0f](32cad0f)),
closes [#2629](#2629)
* docker warnings "keywords casing do not match"
([#3048](#3048))
([e095cb2](e095cb2))
* intro/outro playlist unset was impossible
([#3101](#3101))
([7992a9b](7992a9b))
* **legacy:** additional specifics added to CSVexport.js for RFC 4180
([#3131](#3131))
([644d2b9](644d2b9)),
closes [#2477](#2477)
* **legacy:** fix filename criteria searching
([#3068](#3068))
([c883d0f](c883d0f))
* **legacy:** migrations from airtime 2.5.1
([#3123](#3123))
([82d5af2](82d5af2))
* **legacy:** support Postgresql 12 syntax
([#3103](#3103))
([0b221f4](0b221f4)),
closes [#3102](#3102)
* **playout:** improve the way hashlib is called in
libretime_playout/player
([#3135](#3135))
([5b4c720](5b4c720)),
closes [#3134](#3134)
* regenerate API schema
([38a0bf9](38a0bf9))
* regenerate API schema
([ce257a1](ce257a1))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
0