continuous-integration/drone/pr Build encountered an errorDetails
From the top:
- gmdate needs an argument of what time to use. this one is on me being tired, but I shouldn't have to do this because
- IDs are per-DJ, not per-slot, as I mentioned in my last PR. This wasn't the reason behind the issue, but if IDs were per-slot, my original dedupe would have worked *perfectly*.
- AzuraCast's API gives weird ISO-8601 date strings instead of just *giving us UNIX timestamps*. Again, not the reason behind the issue, but it annoyed me when testing the dedupe fix.
continuous-integration/drone/pr Build encountered an errorDetails
continuous-integration/drone/push Build is passingDetails
Apparently I put too much faith in AzuraCast's scheduler. IDs are per-DJ, not per-slot, and some DJs (like tomasino) run multiple shows out of the same login. Ergo, this simply will not do.
The ID now used in the dedupe also includes beginning and ending, leading to a slot looking like "13Sun000000Sun010000". This *should* be unique, since AFAIK no DJ has multiple slots during the same time and the same login. (Not to mention slots really can't be at the same time.)
continuous-integration/drone/pr Build encountered an errorDetails
I overestimated how much was in common between the two files. ics.php had its
own formatdate function, which it no longer does (thanks ben (/s)).
Reimplement ics.php's former formatdate function as ics_formatdate, and use
it instead of formatdate to format the dates in the ICS output.
continuous-integration/drone/pr Build encountered an errorDetails
Specifically, adds DTSTAMP properties to all of the objects (the calendar and
the events), terminates lines in CRLF, and splits the UID over 2 lines so the
validator is happy with me.
continuous-integration/drone/pr Build encountered an errorDetails
continuous-integration/drone/push Build is passingDetails
Here be dragons. I manually reverse-engineered an ICS file generated by a
program I wrote to figure out the syntax, and then I wrote some PHP to
generate a file to that spec.