- it compares boot time of liquidsoap and the time user clicks on "Save"
on stream setting page. The status only gets updated if the
"boot_time" > "user update time"
- as soon as a user click on save, status is set to "wating"
- since there is no timing issue, quering interval is reduced to 1 sec
This happens because we use same field in the db to store whether stream is disabled, and which
type is it (Icecast/Shoutcast). Thus when we disable a stream, we forget about the fact that
it was set to Shoutcast before.
Fixed by separating out the enable/disable state from stream type.
Whether a stream is enabled/disabled is stored in new fields sx_enable.
Stream type is stored in the old fields, sx_output.
Deleted show was being returned because we don't delete it from database if it's repeating, nor do we check
if it's modified when querying the db.
Fixed by checking modified_instance column; only return it if modified_instance != TRUE
I just realized this:
1. Enable "Enable Soundcloud Upload" in preference and fill in the username+password, click save
2. Go back to preference, change unrelated setting like "Station Name", click save
3. Now since soundcloud password field is empty (expected, as we don't want others to see how many digits
are there), the save failed
This commit is to fix this. Created another custom validator for the password field, which does the same
thing as ConditionalNotEmpty validator but allow password field to be empty when the username/email field
wasn't changed.
For a previous ticket, I changed the code so that both "Today's Program" widget
and "Now Playing" widget both use the liveInfoAction, but forgot that for "Now Playing" widget, it retrieves
the shows within next 48 hours instead of within end of day today...
Fixed by passing GET parameters to liveInfoAction, specify whether we want to retrieve shows within an
interval or end of day. Also added a GET parameter for specifying the number of shows to display.
Fixing bug introduced by last commit...Should test more thoroughly next time...
Fixed by creating and adding a custom validator that checks if the field is empty only when some other
fields have specific values, in this case, when 'UploadToSoundcloudOption' has a value of '1'.
- mktemp is used to generate temp name within /tmp dir
- it generate temp file when the file gets uploade to /tmp and then copy to
organize folder as original file name