1
1
Fork 0
mirror of https://code.mensbeam.com/MensBeam/Arsse.git synced 2024-12-26 18:42:40 +00:00
Commit graph

1409 commits

Author SHA1 Message Date
J. King
f690bbb3a9 Alias Date::normalize to ValueInfo::normalize 2017-10-19 22:39:39 -04:00
J. King
d45401fb8b Adapt NCN to new type converter
This has the side-effect of removing the ability to reset a feed's title by passing null explicitly. As a non-standard behaviour it was simpler to just remove it.
2017-10-19 20:35:45 -04:00
J. King
cc875be57e Backport testing improvements from ttrss branch 2017-10-19 15:32:18 -04:00
J. King
1271a0c8c0 Add ValueInfo::normalize method
This method provides generalized, consistent type casting more versatile than PHP's basic type juggling while hiding the significant complexity in achieving this.

While this commit does not change any existing code to use the new method, the intent is for both API handlers and database drivers to use the same basic rules for type conversion while still allowing for differing failure modes.
2017-10-19 15:18:58 -04:00
J. King
661515590e Update dependencies 2017-10-17 17:25:27 -04:00
J. King
4e3369cd03 List all valid TTRSS input 2017-10-15 12:47:07 -04:00
J. King
fbbf751214 Implement the TTRSS getLabels operation; fixes #89 2017-10-13 17:05:06 -04:00
J. King
2e395f3cec Complete backend support for labels 2017-10-13 00:04:26 -04:00
J. King
a343b78b02 Make exporting the database test fixture easier 2017-10-13 00:03:25 -04:00
J. King
4ab004bbab Speed up SQLite timeout tests 2017-10-12 09:18:37 -04:00
J. King
20ff08a431 Implement TTTRSS getCounters operation; fixes #79 2017-10-11 12:55:50 -04:00
J. King
c9c6891567 Implement TTRSS getCategories; fixes #81 2017-10-07 12:46:05 -04:00
J. King
0e6eed5699 Add boolean sanitizer to ValueInfo 2017-10-07 12:44:53 -04:00
J. King
7a2de95c70 Consolidate article context handling into articleQuery function
Also consolidated article star counting into a generic articleCount function which accepts a context.

This may lead to slight efficiency losses in either listing or marking (and more significant ones in counting starred), but the advantages of centralized context handling are significant with the future addition of labels and the need to count articles under various future contexts in TTRSS.
2017-10-06 20:26:22 -04:00
J. King
26f6922b25 Partially implement labels
- Backend functions for adding, listing, removing, and editing (renaming) labels currently implemented
- TTRSS functions for adding (fixes #96), removing (fixes #97), and renaming (fixes #98) labels currently implemented
2017-10-05 17:42:12 -04:00
J. King
69b34a4e5a Implement TTRSS feed updating; fixes #86 2017-10-03 16:14:37 -04:00
J. King
03d5d554a9 Imple TTRSS functions getUnread and getConfig
- Fixes #78
- Fixes #85
2017-10-03 12:43:46 -04:00
J. King
bd6f23692c Implement TTRSS feed subscription; fixes #92 2017-10-03 10:43:09 -04:00
J. King
97b0134e56 Merge master 2017-10-02 15:42:15 -04:00
J. King
a80e283abc Perform feed discovery correctly; fixes #118 2017-10-02 11:53:52 -04:00
J. King
1b72d45adf Relegate bootstrap.php to testing; fixes #117 2017-10-01 09:33:49 -04:00
J. King
91cce6b529 Implement all TTRSS feed and category handling except subscribing to feeds
- Fixes #93
- Fixes #100
- Fixes #101
- Fixes #102
- Fixes #103
- Fixes #104
2017-09-30 22:15:55 -04:00
J. King
0a0aabe4ed Merge master 2017-09-30 12:52:05 -04:00
J. King
bf35e0ecc8 Version bump 2017-09-30 12:08:05 -04:00
J. King
474f7fc2f6 Changelog; CS fixes 2017-09-30 12:05:57 -04:00
J. King
3482a35e54 Implement feed discovery; fixes #110 2017-09-30 11:43:43 -04:00
J. King
d1e4c6eed3 Fix 405 response of NCN version lister 2017-09-29 18:11:39 -04:00
J. King
00bc7a00a0 Transparently handle HEAD requests; fixes #114 2017-09-29 17:40:07 -04:00
J. King
1ca5b4b456 Add newline after password in CLI 2017-09-28 19:25:31 -04:00
J. King
73d284e101 Clean up Git metadata 2017-09-28 14:17:18 -04:00
J. King
5488b994f7 Merged master; CS fixes 2017-09-28 10:16:24 -04:00
J. King
96ebf936e4 CS fixes 2017-09-28 09:01:43 -04:00
J. King
5ebf6cb689 Treat objects which are convertible to strings the same as actual strings in ValueInfo 2017-09-28 08:55:47 -04:00
J. King
d365529493 Multiple fixes to input sanitization
- Database functions now accept any input, but throw typeViolation exceptions where appropriate instead of idMissing or subjectMissing
- Added unit tests for the new Misc\ValueInfo static class
- Added ValueInfo::id() method to centrally validate database IDs, and made use of it consistently
- Made use of PHP's filter_var() function where appropriate when validating or sanitizing input
- Made the NCN protocol handler reject most invalid IDs before handing off to method handlers
- Made NCN's feedUpdate and subscriptionMove methods return 422 on invalid input
- Adjusted several tests to handler type violations
2017-09-27 22:25:45 -04:00
J. King
1af8b733b5 Implement adding TTRSS categories; fixe #99 2017-09-26 22:45:54 -04:00
J. King
7b121c74ec Merge fixes from master 2017-09-26 20:25:11 -04:00
J. King
e74a3ae3cb Fix numerous bugs when adding or changing folders
- Specifying a non-integer parent no longer silently casts to 0 or 1
- Specifying a folder ID of 0 now always converts to null automatically
- Performing both a rename and move to root in the same operation no longer results in potential duplicates
- Calling folderSetProperties with an empty data array no peforms an update; it now returns false before the update call
- Modification timestamps are now actually updated when a folder is modified
- Constraint violation exceptions triggered by code (rather than the database) now print a message
- Renaming a folder or subscription to a non-string value (e.g. an array) throws an exception rather than silently casting
- Added tests to better cover all the above
- Centralized the normalization of integers and title strings into a new ValueInfo static class
2017-09-26 16:45:41 -04:00
J. King
8487a56a60 Tests for TTRSS session handling and version/level reporting
- Fixes #73
- Fixes #74
- Fixes #75
- Fixes #76
- Fixes #77
2017-09-25 10:08:37 -04:00
J. King
6e19517593 Return correct TTRSS error bodies even for HTTP-level errors
TTRSS' error message for these cases (NOT_LOGGED_IN) is not especially helpful, but that's what it returns, so that's what we should return, albeit with correct HTTP status codes.
2017-09-25 08:15:39 -04:00
J. King
3a5d346b9c Preliminary TTRSS handler 2017-09-24 23:32:21 -04:00
J. King
91432d4e16 Tests for sessions 2017-09-24 12:45:07 -04:00
J. King
b7ac63b9de Resuming a session from the database should have no side effects 2017-09-24 11:22:32 -04:00
J. King
1069447925 Make session cleanup more sophisticated 2017-09-24 10:09:36 -04:00
J. King
474d32e54f Preliminary implementation of TTRSS sessions (needs tests; may not work) 2017-09-16 19:57:33 -04:00
J. King
c393dfc42b Sundry fixes
- Make use of PHP 7's null coalescing operator
- remove use of static property in Lang class
- Improve code coverage slightly
2017-09-05 19:35:14 -04:00
J. King
c9967c9cc7 Satisfy Gitea's picky Mrkdown parser 2017-08-30 23:56:03 -04:00
J. King
bd95d23c8a Fix export of nulls in Conf 2017-08-29 23:17:57 -04:00
J. King
d177e52494 Minor readme correction 2017-08-29 15:27:44 -04:00
J. King
525a039d3f Build tweaks 2017-08-29 15:06:07 -04:00
J. King
1c4dd9cf7f Add a basic build system 2017-08-29 14:58:06 -04:00