Fist of all excuse my English (i am from Greece). Also excuse me if someone has already given a solution to this that i am unaware of.
I am using the "Now Playing" tab to Schedule my shows once a week because i find it the fastest way possible.
With selecting a whole week from the Start-End calendar (starting 00:00 ending 23:55) i can quickly add a specific block (lets say "Classic Rock") to every suitable show (for example a show also named Classic Rock) by selecting it from the "Filter by show" dropdown menu.
So for a whole week if i select the show i will see 7 entries and by holding control key and marking each cursor underneath the show i can then press "Add to selected show" and voila all 7 days are ready for this show.
The problem here was that this dropdown list is showing all the shows you ever created even if they are inactive and by inactive i mean they are not scheduled in any future date so as you imagine in a period of 1,5 year experimenting i had a list with many many records with the same name most of them useless and i had to check each item in the list one by one to find out if there is something scheduled or not.
For anyone using the same page, my solution was this (have in mind that i have version 2.5.1 so every "hack" applies to that version)
I went to the file ShowBuilder.php (/usr/share/airtime/application/forms/ShowBuilder.php) and modified the getShowNames() function.
After many experiments (i tried at first to modify the CcShowQuery) i concluded to this:
Now for the cursors, i did some jquery tweaks in order to make my life easier.
Every time i do the week scheduling as i described above, i user the cursors.
The first thing i want to do is to add some jingles at the beggining of each show, so for a whole week i need to hold the control key and click EVERY cursor on the empty shows in order to add a playlist (with the jingles) there.
This is very time consuming.
Also after i add the jingles i select each show from the dropdownlist and on the 7 records i get (for the week) i need to add specific blocks under the jingles i just added. To do this i also need to select every last cursor on every show.
So what i did is that i added a dropdown menu like the "Select" on that page, that is called "Select Cursors"
There i have 2 options
1) Select last -> selects every last cursor on every show (and finally the very last cursor on the list)
2) Select none -> that disselects the selected cursors
We could use a "Select all" but personally i dont find it needed as selecting every last cursor in a show is sufficient enough (when shows are empty is like selecting all cursors).
The above changes are done to the builder.js file (/usr/share/airtime/public/js/airtime/showbuilder/builder.js)
I dont have the line numbers since i didnt keep them before the changes but here it is...
first we add this line:
headers = [],
we add this under the "cursors = []," (about line 13)
Then we add 2 new functions. I added them after the function mod.removeCursor
Here is the code i created (i am not that good at jquery so you may have a much better way for this)
/* album */ {"mDataProp": "album", "sTitle": $.i18n._("Album"), "sClass": "sb-album"},
to
/* album */ {"mDataProp": "album", "sTitle": $.i18n._("Genre"), "sClass": "sb-album"},
Just to show the correct label...
So now you have a genre column in the schedule (right) list and also a textbox before the "Select" dropdown that if it has text then the "select all" only selects rows that "genre" column contains that text.
Post edited by Stathis Simos at 2015-12-22 18:23:11