Commit Graph

23 Commits

Author SHA1 Message Date
thrillfall
e8bdb3d345 this exception will not be thrown anymore 2023-02-24 20:54:19 +01:00
thrillfall
bf8fee14e3 delete conflicting episode action if current episode actions updates to same episode url 2023-02-24 20:48:53 +01:00
thrillfall
a1893061ce fix #109 search for episode action by guid only (retry with episode url if nothing found) thus avoid multiple results 2023-02-24 17:11:59 +01:00
thrillfall
239b7773c2 abort updates once it fails 2021-11-03 13:51:48 +01:00
Matthias Gutjahr
93bfcecf15 Revert removal of UniqueConstraintViolationException 2021-11-03 13:51:26 +01:00
Matthias Gutjahr
1d2056e025 Add check for EpisodeAction properties
- also add type hints and phpdocs
- add additional unit tests
- set integer types in EpisodeActionEntity
- correctly call static methods
- improve exception handling in EpisodeActionSaver
- remove unused method EpisodeActionWriter::purge()
2021-11-03 13:51:26 +01:00
Jonathan Flueren
77571feb40 Update tests to new upload format 2021-10-06 19:40:52 +02:00
Jonathan Flueren
d131b59348 Align episode upload format to gpodder-api
'started', 'position' and 'total' are optional and 'timestamp' is in 'Y-m-d\TH:i:s' format
2021-10-06 19:40:52 +02:00
Jonathan Flueren
3534c43976 Adjust expected DateTime format to gpodder - UTC ISO 8601 2021-10-06 19:40:52 +02:00
Jonathan Flueren
795a9253d2 Adjust EpisodeAction upload to gpodder api, remove String upload
Remove 3rd dimension of POST data by directly accessing request data - a simple EpisodeActions array has to be posted now. This way the api is closer to gpodder.
Additionally, removed EpisodeAction upload as String, so it's now incompatible with older versions
2021-10-06 19:40:52 +02:00
Jonathan Flueren
7813339a95 Allow EpisodeAction upload as array
Parsing EpisodeActions from String can lead to problems if the String is changed by only a little bits.
Additionally, the gpodder api describes the upload as Array.
Uploading EpisodeActions as String is still possible.
2021-10-06 19:40:52 +02:00
thrillfall
ac1acf079b provide episode_action timestamps as UTC in api response 2021-10-06 14:06:45 +02:00
thrillfall
aa024e55f8 add new timestamp database field. add migration step to convert timestamps to unix epoch 2021-10-06 14:06:45 +02:00
thrillfall
fdc6a0db6d drop redundant phpdoc 2021-08-29 13:14:40 +02:00
thrillfall
efa9280b91 we actively fix the guid so it is not asserting but ensuring 2021-08-29 13:14:40 +02:00
thrillfall
ff4798f6da do not null EpisodeAction.guid when processing request without guid 2021-08-29 13:14:40 +02:00
thrillfall
3a3038711f make retrievel episode actions without guid more explanatory 2021-08-29 13:14:40 +02:00
thrillfall
352802ca69 update existing episode actions with guid 2021-08-29 13:14:40 +02:00
thrillfall
850dfd5eb4 add guid to episode action and make it findable by it 2021-08-29 13:14:40 +02:00
thrillfall
20a647906a do not pass same data twice 2021-08-27 12:51:29 +02:00
Jonathan Flueren
cd17ad5079 Increase code quality, use explode instead of strpos/substr
Makes code phpdoc conform and changes to a better readable EpisodeActions parsing.
2021-08-24 22:31:24 +02:00
Jonathan Flueren
48b78669e6 Enable processing of multiple EpisodeActions
EpisodeAction/create now can deal with multiple EpisodeActions inside a single EpisodeAction string, they will be processed one after another.
For this EpisodeActionReader->fromString() now returns an array of EpisodeActions.
2021-08-24 22:31:24 +02:00
thrillfall
a29aa2ccd5 extract parsing and storing episode action to separate class 2021-08-22 22:45:34 +02:00